Linux云计算 |【第一阶段】ENGINEER-DAY5

要内容:

SELinux、系统故障修复、HTTPD/FTP服务搭建、防火墙策略管理、服务管理

一、SELinux安全制度

SELinux(Security-Enhanced Linux),美国NSA国家安全局主导开发,一套增强Linux系统安全的强制访问控制体系,集成到Linux内核(2.6及以上)中运行,RHEL7基于SELinux体系针对用户、进程、目录和文件提供了预设的保护策略及管理工具;

  • [ Permissives ] 宽松
  • [ Enforcing ]  强制
  • [ Disabled ]  彻底禁用,丧失100%

注意:任何模式变成disabled模式,都要经历重启系统

1)SELinux切换模式:

  • 查看当前运行模式:getenforce
  • 临时切换运行模式:setenforce 1|0     (1代表:Enforcing,0代表Permissive)

配置文件:/etc/selinux/config      //影响下一次开机,重启生效(类似/etc/hostname)

例如:

[root@svr7 ~]# setenforce 1     //临时切换运行模式
[root@svr7 ~]# getenforce       //查看当前运行模式
Enforcing
[root@svr7 ~]# setenforce 0
[root@svr7 ~]# getenforce
Permissive

例如:

[root@svr7 ~]# vim /etc/selinux/config    //修改配置文件
[root@svr7 ~]# cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=permissive    //修改默认区域
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are protected.
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

二、构建Web服务

Web服务提供一个页面内容的服务

  • 提供Web服务的软件:Httpd、Nginx(支持并发访问量优秀)、Tomcat(Java)
  • Http协议:超文本传输协议(httpd,d表示:daemon进程)
  • Httpd默认存放页面路径:/var/www/html/    //安装httpd软件包自动生成路径
  • 默认索引页面文件: index.html

1)运行提供web服务程序

提前检查软件包

[root@svr7 ~]# yum -y install httpd      //安装httpd软件包
[root@svr7 ~]# rpm -q httpd
httpd-2.4.6-80.el7.centos.x86_64[root@pc207 ~]# curl http://192.168.4.7   //不运行执行程序则报错
curl: (7) Failed connect to 192.168.4.7:80; 拒绝连接
[root@svr7 ~]# which httpd    //服务安装完软件包后要运行程序
/usr/sbin/httpd
[root@svr7 ~]# /usr/sbin/httpd     //绝对路径运行程序[root@svr7 ~]# vim /var/www/html/index.html    //编写页面文件
[root@svr7 ~]# cat /var/www/html/index.html
<h1> hello world       //<h1>:标题字体
[root@svr7 ~]# ls /var/www/html/
index.html
[root@svr7 ~]# curl http://192.168.4.7
<h1> hello world

使用火狐浏览器打开:# firefox http://192.168.4.7


补充:Curl命令

Curl是常用的命令行工具,用来请求 Web 服务器。它的名字就是客户端(client)的 URL 工具的意思(支持HTTP、HTTPS、FTP、FTPS、DICT、TELNET、LDAP、FILE等协议)

作用:支持文件上传和下载,所以是综合传输工具

格式:curl [选项...]

常用选项:

  • [-l]  只获得对方的响应首部信息
  • [-v]  显示一次HTTP请求的通信过程

三、构建FTP服务

FTP服务:文本传输协议,传输内容

实现FTP服务功能的软件:vsftpd

默认共享数据的主目录:/var/ftp/

1)运行提供FTP服务程序

提前检查软件包

[root@svr7 ~]# yum -y install vsftpd    //安装vsftpd软件包
[root@svr7 ~]# rpm -q vsftpd
vsftpd-3.0.2-22.el7.x86_64[root@svr7 ~]# curl ftp://192.168.4.7     //不运行执行程序则报错
curl: (7) Failed connect to 192.168.4.7:21; 拒绝连接
[root@svr7 ~]# which vsftpd
/usr/sbin/vsftpd
[root@svr7 ~]# /usr/sbin/vsftpd      //绝对路径运行程序[root@svr7 ~]# ls /var/ftp/     //查看目录内容
pub
[root@svr7 ~]# touch /var/ftp/1.txt      //创建文件
[root@svr7 ~]# curl ftp://192.168.4.7
-rw-r--r--    1 0        0               0 Mar 12 03:30 1.txt
drwxr-xr-x    2 0        0               6 Aug 03  2017 pub

四、Firewalld防火墙策略管理

作用:隔离,严格按照策略规则过滤入站、放行出站

防火墙类型:硬件防火墙(Huawei E800)、软件防火墙(360、卡巴斯基)

系统服务:firewalld    //开机自启

管理工具:firewall-cmd、firewall-config(图形工具)

1、预设安全区域

根据所在的网络场所区分,预设保护规则集

  • [ public ]  仅允许访问本机的sshd、dhcp、ping等少数几个服务
  • [ trusted ]  允许任何访问
  • [ block ]  拒绝任何来访请求。明确拒绝并回应
  • [ drop ]  丢弃任何来访的数据包,不给任何回应

配置规则的位置:

  1. runtime)  运行时
  2. permanent)  永久

2、查看防火墙规则列表

列表查看操作命令:

  • 命令:firewall-cmd --list-all [--zone=区域名] //查看当前区域规则信息
  • 命令:firewall-cmd --list-all-zones //查看所有区域规则信息
  • 命令:firewall-cmd --get-zones   //查看防火墙有哪些区域
  • 命令:firewall-cmd --get-services   //查看防火墙有哪些服务
  • 命令:firewall-cmd --get-default-zone   //查看当前默认区域

例如: 

[root@svr7 ~]# firewall-cmd --list-all     //查看当前区域规则信息
public (active)target: defaulticmp-block-inversion: nointerfaces: eth0sources:services: ssh dhcpv6-clientports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:

例如:

[root@svr7 ~]# firewall-cmd --list-all-zones      //查看所有区域规则信息
blocktarget: %%REJECT%%icmp-block-inversion: nointerfaces:sources:services:ports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:dmztarget: defaulticmp-block-inversion: nointerfaces:sources:services: sshports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:droptarget: DROPicmp-block-inversion: nointerfaces:sources:services:ports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:externaltarget: defaulticmp-block-inversion: nointerfaces:sources:services: sshports:protocols:masquerade: yesforward-ports:source-ports:icmp-blocks:rich rules:hometarget: defaulticmp-block-inversion: nointerfaces:sources:services: ssh mdns samba-client dhcpv6-clientports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:internaltarget: defaulticmp-block-inversion: nointerfaces:sources:services: ssh mdns samba-client dhcpv6-clientports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:public (active)target: defaulticmp-block-inversion: nointerfaces: eth0sources:services: ssh dhcpv6-clientports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:trustedtarget: ACCEPTicmp-block-inversion: nointerfaces:sources:services:ports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:worktarget: defaulticmp-block-inversion: nointerfaces:sources:services: ssh dhcpv6-clientports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:

例如:

[root@svr7 ~]# firewall-cmd --get-zones      //查看防火墙有哪些区域
block dmz drop external home internal public trusted work

例如:

[root@svr7 ~]# firewall-cmd --get-services    //查看防火墙有哪些服务
RH-Satellite-6 amanda-client amanda-k5-client bacula bacula-client bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client dns docker-registry dropbox-lansync elasticsearch freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master high-availability http https imap
imaps ipp ipp-client ipsec iscsi-target kadmin kerberos kibana klogin kpasswd kshell ldap ldaps libvirt libvirt-tls managesieve mdns mosh mountd ms-wbt mssql mysql nfs nfs3 

例如:

[root@svr7 ~]# firewall-cmd --get-default-zone     //查看当前默认区域
public

3、配置防火墙策略

默认区域为public,限制较严格(对于开放式环境,建议将默认区域修改为trusted)

针对(运行时 / 永久)配置策略规则时,运行时为临时操作,永久需添加--permanent写入防火墙配置文件,写入后需要配合--reload重新加载配置文件或reboot重启才能生效

防火墙判定原则:根据客户端请求的来源IP地址并查看防火墙区域规则哪个区域有该源IP地址规则,满足规则要求则进入该区域,否则进入默认区域(默认情况下为public)

配置防火墙区域命令:

  • 命令:firewall-cmd --set-default-zone=区域名

配置防火墙规则命令(运行时、永久):

  • 命令:firewall-cmd --zone=区域名 --add-service=服务名   //运行时-添加
  • 命令:firewall-cmd --permanent --zone=区域名 --add-source=网段/IP地址 //永久-限制
  • 命令:firewall-cmd --permanent --zone=区域名 --add-service=服务名  //永久-添加
  • 命令:firewall-cmd --permanent --zone=区域名 --remove-service=服务名  //永久删除

注意:permanent只用在防火墙规则,对设置默认区域无效,默认区域设置是永久生效

重载防火墙配置文件命令:

  • 命令:firewall-cmd --reload    //重载防火墙永久策略,才能生效

注意:重载防火墙永久策略,临时策略将清空


① 配置防火墙默认区域(指定默认的安全区域)

命令:firewall-cmd --set-default-zone=区域名

例如:修改主机1防火墙默认区域为trusted,主机2实现http和ftp访问

主机2:
[root@pc207 ~]# curl http://192.168.4.7
curl: (7) Failed connect to 192.168.4.7:80; 没有到主机的路由    //防火墙策略限制
[root@pc207 ~]# curl ftp://192.168.4.7
curl: (7) Failed connect to 192.168.4.7:21; 没有到主机的路由主机1:配置默认区域
[root@svr7 ~]# firewall-cmd --get-default-zone     //查看防火墙默认区域
public
[root@svr7 ~]# firewall-cmd --set-default-zone=trusted   //修改防火墙默认区域
success
[root@svr7 ~]# firewall-cmd --get-default-zone
trusted主机2:
[root@pc207 ~]# curl http://192.168.4.7   //验证http服务
<h1> hello world
[root@pc207 ~]# curl ftp://192.168.4.7    //验证ftp服务
-rw-r--r--    1 0        0               0 Mar 12 03:30 1.txt
drwxr-xr-x    2 0        0               6 Aug 03  2017 pub

② 配置防火墙规则(默认区域开通服务)< 临时生效 >

命令:firewall-cmd --zone=区域名 --add-service=服务名

例如:修改主机1防火墙默认区域public,添加服务,主机2实现http和ftp访问

主机1:
[root@svr7 ~]# firewall-cmd --set-default-zone=public
success
[root@svr7 ~]# firewall-cmd --list-all --zone=public
public (active)target: defaulticmp-block-inversion: nointerfaces: eth0sources:services: ssh dhcpv6-client        //允许服务中未有添加http和ftpports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules
主机2:
[root@pc207 ~]# curl http://192.168.4.7     //访问失败
curl: (7) Failed connect to 192.168.4.7:80; 没有到主机的路由   //防火墙策略限制主机1:
[root@svr7 ~]# firewall-cmd --zone=public --add-service=http   //添加服务http
success
[root@svr7 ~]# firewall-cmd --zone=public --add-service=ftp   //添加服务ftp
success
[root@svr7 ~]# firewall-cmd --list-all --zone=public
public (active)target: defaulticmp-block-inversion: nointerfaces: eth0sources:services: ssh dhcpv6-client http ftp    //允许服务中已添加http和ftpports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:
主机2:
[root@pc207 ~]# curl http://192.168.4.7     //访问成功
<h1> hello world
[root@pc207 ~]# curl ftp://192.168.4.7      //访问成功
-rw-r--r--    1 0        0               0 Mar 12 03:30 1.txt
drwxr-xr-x    2 0        0               6 Aug 03  2017 pub

③ 配置防火墙规则(永久配置-添加)< 永久生效 >

命令:firewall-cmd --permanent --zone=区域名 --add-service=服务名

例如:修改永久防火墙规则配置,并重新加载永久防火墙策略

[root@svr7 ~]# firewall-cmd --reload    //重载防火墙永久策略,临时策略将清空
success
[root@svr7 ~]# firewall-cmd --zone=public --list-all
public (active)target: defaulticmp-block-inversion: nointerfaces: eth0sources:services: ssh dhcpv6-clientports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:
[root@svr7 ~]# firewall-cmd --permanent --zone=public --add-service=http
success
[root@svr7 ~]# firewall-cmd --permanent --zone=public --add-service=ftp
success
[root@svr7 ~]# firewall-cmd --zone=public --list-all
public (active)target: defaulticmp-block-inversion: nointerfaces: eth0sources:services: ssh dhcpv6-clientports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:
[root@svr7 ~]# firewall-cmd --reload    //重载防火墙永久策略,才能生效
success
[root@svr7 ~]# firewall-cmd --zone=public --list-all
public (active)target: defaulticmp-block-inversion: nointerfaces: eth0sources:services: ssh dhcpv6-client http ftpports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:

④ 配置防火墙规则(永久配置-删除)< 永久生效 >

命令:firewall-cmd --permanent --zone=区域名 --remove-service=服务名

例如:永久修改并删除ftp服务

[root@svr7 ~]# firewall-cmd --permanent --zone=public --remove-service=ftp
success
[root@svr7 ~]# firewall-cmd --zone=public --list-all
public (active)target: defaulticmp-block-inversion: nointerfaces: eth0sources:services: ssh dhcpv6-client http ftpports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:
[root@svr7 ~]# firewall-cmd --reload
success
[root@svr7 ~]# firewall-cmd --zone=public --list-all
public (active)target: defaulticmp-block-inversion: nointerfaces: eth0sources:services: ssh dhcpv6-client httpports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:

⑤ 配置防火墙规则(添加限制网段)

命令:firewall-cmd [--permanent] --zone=区域名 --add-source=网段/IP地址

例如:修改主机1防火墙默认区域规则,拒绝主机2网段、服务访问本机

主机1:
[root@svr7 ~]# firewall-cmd --zone=block --add-source=192.168.4.0/24
success
=[root@svr7 ~]# firewall-cmd --zone=block --list-all
block (active)target: %%REJECT%%icmp-block-inversion: nointerfaces:sources: 192.168.4.0/24services:ports:protocols:masquerade: noforward-ports:source-ports:icmp-blocks:rich rules:主机2:
[root@pc207 ~]# curl ftp://192.168.4.7
curl: (7) Failed connect to 192.168.4.7:21; 没有到主机的路由
[root@pc207 ~]# curl http://192.168.4.7
curl: (7) Failed connect to 192.168.4.7:80; 没有到主机的路由
[root@pc207 ~]# ssh root@192.168.4.7
ssh: connect to host 192.168.4.7 port 22: No route to host
[root@pc207 ~]# ping 192.168.4.7
PING 192.168.4.7 (192.168.4.7) 56(84) bytes of data.
From 192.168.4.7 icmp_seq=1 Destination Host Prohibited
From 192.168.4.7 icmp_seq=2 Destination Host Prohibited
^C
--- 192.168.4.7 ping statistics ---
2 packets transmitted, 0 received, +2 errors, 100% packet loss, time 1000ms

常见报错:已经是block区域报错

[root@svr7 ~]# firewall-cmd --set-default-zone=block
Warning: ZONE_ALREADY_SET: block

常见报错:--get不与--list-all共用

[root@svr7 ~]# firewall-cmd --get-default-zone --list-all
usage: see firewall-cmd man page
Can't use stand-alone options with other options.

常见报错:规则冲突

[root@svr7 ~]# firewall-cmd --zone=block --add-source=192.168.4.0/24
success
[root@svr7 ~]# firewall-cmd --zone=trusted --add-source=192.168.4.0/24
Error: ZONE_CONFLICT: '192.168.4.0/24' already bound to a zone

五、系统故障修复排除

1)遗忘root用户密码

故障现象:无法执行需要root权限的管理操作,若没有其他可用账号,将无法登录系统;

解决思路:引导进入修复模式,然后重设密码;

步骤1:重启系统,进入recovery恢复模式

  • 按e键,找到linux16行,末尾添加rd.break console=tty0
  • 按ctrl+x启动

步骤2:以可写方式重新挂载/sysroot,并切换到此环境

Switch_root# mount -o remount,rw /sysroot
Switch_root# chroot /sysroot

步骤3:将root用户的密码设置为redhat

echo redhat | passwd --stdin root

步骤4:重设SELinux安全标签

touch /.autorelabel

步骤5:先后执行exit、reboot完成恢复

exit
reboot

2)系统文件损坏故障

- 故障现象:/etc/fstab文件内容有误,系统无法正常开机

- 解决思路:引导进入恢复模式,然后进行修复

六、Systemd服务管理

1)init程序的作用(即初始化程序)

Linux系统和服务管理器systemd,是内核引导之后加载的第一个初始化进程(PID=1),负责掌控整个Linux的运行/服务资源组合;

传统的init程序风格:

  • System v:顺序加载(RHEL5系列采用)
  • Upstart:事件触发(RHEL6系列采用)

2)Systemd服务管理器(一个更高效的系统&服务管理器)

开机服务并行启动,各系统服务间的精确依赖

配置目录:/etc/systemd/system/

服务目录:/lib/systemd/system/

主要管理工具:systemctl

3)列出服务常用命令

列出活动的系统服务

  • 命令:systemctl -t service

列出所有系统服务(包括不活动的)

  • 命令:systemctl -t service --all //列出所有的服务

4)对于服务的管理(与手动启动有冲突)

  • 命令:systemctl restart 服务名   //重起服务
  • 命令:systemctl start 服务名      //开启服务
  • 命令:systemctl stop 服务名      //停止服务
  • 命令:systemctl status 服务名    //查看服务当前的状态
  • 命令:systemctl enable 服务名    //设置服务开机自启动
  • 命令:systemctl disable 服务名    //设置服务禁止开机自启动
  • 命令:systemctl is-enabled 服务名   //查看服务是否开机自启
  • 命令:systemctl is-active 服务名    //查看服务是否开启
  • 命令:systemctl daemon-reload    //重新加载所有服务配置文件

例如:

[root@svr7 ~]# yum -y install httpd    //安装软件包
[root@svr7 ~]# rpm -q httpd
httpd-2.4.6-80.el7.centos.x86_64
[root@svr7 ~]# > /etc/resolv.conf    //清除dns文件内容
[root@svr7 ~]# /usr/sbin/httpd     //手动启动httpd程序
[root@svr7 ~]# pgrep -lx httpd    //查看进程信息
3387 httpd
[root@svr7 ~]# killall httpd      //杀死手动启动的httpd,否则会与服务管理器冲突[root@svr7 ~]# systemctl restart httpd     //重启httpd服务
[root@svr7 ~]# pgrep -lx httpd
3420 httpd
3430 httpd
3431 httpd
3432 httpd
3433 httpd
3434 httpd
[root@svr7 ~]# systemctl status httpd     //查看服务httpd状态
● httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)Active: active (running) since 一 2021-03-15 09:56:17 CST; 36s agoDocs: man:httpd(8)man:apachectl(8)Main PID: 3639 (httpd)Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"Tasks: 6CGroup: /system.slice/httpd.service├─3639 /usr/sbin/httpd -DFOREGROUND├─3640 /usr/sbin/httpd -DFOREGROUND├─3641 /usr/sbin/httpd -DFOREGROUND├─3642 /usr/sbin/httpd -DFOREGROUND├─3643 /usr/sbin/httpd -DFOREGROUND└─3644 /usr/sbin/httpd -DFOREGROUND
3月 15 09:56:17 svr7.tedu.cn systemd[1]: Starting The Apache HTTP Server...
3月 15 09:56:17 svr7.tedu.cn systemd[1]: Started The Apache HTTP Server.[root@svr7 ~]# systemctl enable httpd     //设置httpd开机自启动
Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service.
[root@svr7 ~]# systemctl is-enabled httpd     //查看httpd是否是开机自启动
enabled[root@svr7 ~]# systemctl disable httpd    //关闭httpd开机自启动
Removed symlink /etc/systemd/system/multi-user.target.wants/httpd.service.
[root@svr7 ~]# systemctl is-enabled httpd   //查看httpd是否是开机自启动
disabled[root@svr7 ~]# systemctl stop httpd   //停止服务
[root@svr7 ~]# systemctl status httpd
● httpd.service - The Apache HTTP ServerLoaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)Active: inactive (dead)Docs: man:httpd(8)man:apachectl(8)
3月 15 09:53:49 svr7.tedu.cn systemd[1]: Starting The Apache HTTP Server...
3月 15 09:56:17 svr7.tedu.cn systemd[1]: httpd.service stop-sigterm timed out. Killing.
3月 15 09:56:17 svr7.tedu.cn systemd[1]: httpd.service: main process exited, code=killed, status=9/KILL
3月 15 09:56:17 svr7.tedu.cn systemd[1]: Unit httpd.service entered failed state.
3月 15 09:56:17 svr7.tedu.cn systemd[1]: httpd.service failed.
3月 15 09:56:17 svr7.tedu.cn systemd[1]: Starting The Apache HTTP Server...
3月 15 09:56:17 svr7.tedu.cn systemd[1]: Started The Apache HTTP Server.
3月 15 10:19:24 svr7.tedu.cn systemd[1]: Stopping The Apache HTTP Server...
3月 15 10:19:25 svr7.tedu.cn systemd[1]: Stopped The Apache HTTP Server.
Hint: Some lines were ellipsized, use -l to show in full.

七、管理运行级别

1)RHEL6:运行级别,共300个服务

  • 0:关机,0个服务(类似poweroff)
  • 1:单用户模式(基本功能的实现,破解Linux密码),50个服务
  • 2:多用户字符界面(不支持网络),80个服务
  • 3:多用户字符界面(支持网络)服务器默认运行级别,100个服务
  • 4:暂未定义,0个服务
  • 5:图形界面(功能丰富,但占用资源最高),300个服务
  • 6:重起,0个服务(类似reboot)

切换运行级别:init 数字

注意:5级别,前提是已安装图形界面工具的软件包;

注意:RHEL8的8.5版本将取消运行级别;

2)RHEL7:运行模式(运行级别)

  • 字符模式:multi-user.target(类似RHEL6运行级别3)
  • 图形模式:graphical.target(类似RHEL6运行级别5)

3)切换运行模式

① 列出可用运行模式

- 命令:systemctl -t target

② 当前直接切换到字符模式 (影响当前)

- 命令:systemctl isolate multi-user.target //相当于原来的init 3

③ 当前直接切换到图形模式(影响当前)

- 命令:systemctl isolate graphical.target //相当于原来的init 5

4)设置默认运行模式

① 查看默认级别

- 命令:systemctl get-default

② 设置默认级别

- 命令:systemctl set-default multi-user.target

- 命令:systemctl set-default graphical.target

例如:

[root@svr7 ~]# systemctl -t target     //列出可运行模式
UNIT                   LOAD   ACTIVE SUB    DESCRIPTION
basic.target           loaded active active Basic System
cryptsetup.target      loaded active active Local Encrypted Volumes
getty-pre.target       loaded active active Login Prompts (Pre)
getty.target           loaded active active Login Prompts
graphical.target       loaded active active Graphical Interface
local-fs-pre.target    loaded active active Local File Systems (Pre)
local-fs.target        loaded active active Local File Systems
multi-user.target      loaded active active Multi-User System
network-online.target  loaded active active Network is Online
network-pre.target     loaded active active Network (Pre)
network.target         loaded active active Network
nfs-client.target      loaded active active NFS client services
nss-user-lookup.target loaded active active User and Group Name Lookups
paths.target           loaded active active Paths
remote-fs-pre.target   loaded active active Remote File Systems (Pre)
remote-fs.target       loaded active active Remote File Systems
rpc_pipefs.target      loaded active active rpc_pipefs.target
slices.target          loaded active active Slices
sockets.target         loaded active active Sockets
sound.target           loaded active active Sound Card
swap.target            loaded active active Swap
sysinit.target         loaded active active System Initialization
timers.target          loaded active active Timers
LOAD   = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB    = The low-level unit activation state, values depend on unit type.
23 loaded units listed. Pass --all to see loaded but inactive units, too.
To show all installed unit files use 'systemctl list-unit-files'.

例如:切换运行模式为字符模式

[root@svr7 ~]# systemctl isolate multi-user.target

如图所示:

例如:切换运行模式为图形模式

[root@svr7 ~]# systemctl isolate graphical.target

如图所示:

例如:

[root@svr7 ~]# systemctl set-default multi-user.target    //设置默认运行模式
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/multi-user.target.
[root@svr7 ~]# systemctl get-default 
multi-user.target
[root@svr7 /]# reboot     //重启验证

例如:设置永久策略,每次开机自动进入graphical.target字符模式

[root@svr7 ~]# systemctl isolate graphical.target
[root@svr7 ~]# systemctl set-default graphical.target    //设置默认运行模式
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target
[root@svr7 ~]# systemctl get-default 
graphical.target
[root@svr7 /]# reboot     //重启验证

补充:ssh登录提示

记录用户登录记录/root/.sshr/known_hosts,同一用户登录,记录不一样会报错

小结:

本篇章节为 【第一阶段】ENGINEER-DAY5 的学习笔记,可以初步了解到 SELinux、系统故障修复、HTTPD/FTP服务搭建、防火墙策略管理、服务管理。除此之外推荐参考相关学习网址:

  • 菜鸟教程 - 学的不仅是技术,更是梦想!

Tip:毕竟两个人的智慧大于一个人的智慧,如果你不理解本章节的内容或需要相关笔记、视频,可私信小安,请不要害羞和回避,可以向他人请教,花点时间直到你真正的理解

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/47996.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Android】 dp与sp,加冕为王

目录 重要概念 屏幕尺寸 屏幕分辨率 屏幕像素密度 基础知识&#xff1a; ppi pt DPI 的定义和重要性 Android 中的 DPI 级别 px dp&#xff08;Density Independent Pixels&#xff09; sp&#xff08;Scale-independent Pixels&#xff09; 安卓的dp/dip、sp 虚拟…

在 PostgreSQL 中怎样进行数据库的容量规划?

&#x1f345;关注博主&#x1f397;️ 带你畅游技术世界&#xff0c;不错过每一次成长机会&#xff01;&#x1f4da;领书&#xff1a;PostgreSQL 入门到精通.pdf 文章目录 在 PostgreSQL 中怎样进行数据库的容量规划&#xff1f;一、为什么容量规划如此重要&#xff1f;二、影…

JDBC技术

JDBC提供了在Java程序中直接访问数据库的功能 JDBC连接数据库之前必须先装载特定厂商提供的数据库驱动程序&#xff08;Driver&#xff09;&#xff0c;通过JDBC的API访问数据库。有了JDBC技术&#xff0c;就不必为访问Mysql数据库专门写一个程序&#xff0c;为访问Oracle又专门…

Vue项目实现单点登录(SSO)的逻辑和基本流程

项目集群如果一个一个登录会非常麻烦&#xff0c;尤其是一些大企业或者多项目使用一套体系数据的环境中&#xff0c;这时候登录中心也就应用而生&#xff0c; 今天简单说一下vue sso的实现思路&#xff0c;vue项目实现单点登录&#xff08;SSO&#xff09;通常涉及以下几个步骤…

LabVIEW和Alicat Scientific质量流量计实现精确流量控制

在现代工业自动化和科研实验中&#xff0c;精确的气体流量控制至关重要。这里将介绍一个使用LabVIEW与Alicat Scientific公司的质量流量计实现流量控制的项目。项目采用Alicat Scientific的质量流量计&#xff08;型号&#xff1a;M-200SCCM-D&#xff09;&#xff0c;通过LabV…

R绘制Venn图及其变换

我自己在用R做各种分析时有不少需要反复用到的基础功能&#xff0c;比如一些简单的统计呀&#xff0c;画一些简单的图等等&#xff0c;虽说具体实现的代码也不麻烦&#xff0c;但还是不太想每次用的时候去找之前的代码。 索性将常用的各种函数整成了一个包&#xff1a;pcutils…

[CP_AUTOSAR]_分层软件架构_接口之通信模块交互介绍

目录 1、协议数据单元(PDU)传输2、通信模块的案例2.1、SDU、 PCI & PDU2.2、通信模块构成2.3、从数据传输的角度看Communication2.4、Communication中的接口 在前面 《关于接口的一些说明》 以及  《Memory软件模块接口说明》 中&#xff0c;简要介绍了CP_AUTOSAR分层…

ByteBuf释放注意的问题

Bytebuf需要释放&#xff0c;否则可能导致OOM。 如果bytebbuf传递到了head或tail&#xff0c;不需要我们关心。 在head和tail里&#xff08;head实现了outhandler、inhander。tail实现了inhander&#xff09;&#xff0c;底层自动调用了bytebuf.release。 其他情况需要我们手动…

MySQL(终章)视图, 用户管理, C连接MySQL.

目录 1.视图; 2.用户管理; 1.视图: 1.1 概念和基本操作: 视图本质就是表结构, 虚拟表. 视图和基表数据的改变都会相互影响. 创建视图语法: create view 视图名 as select语句&#xff1b; 修改视图: update set ; 删除视图: drop view 视图名&#xff1b; 1. 2 视图使用规则: …

减分兔搜题-12123学法减分20题目及答案 #媒体#职场发展

对于即将参加驾驶考试的朋友来说&#xff0c;掌握一些经典题目和答案至关重要。今天&#xff0c;我就为大家带来了这样一份干货——20道驾驶考试题目和答案&#xff0c;助你轻松应对考试&#xff01;这些题目不仅包括了考试中常考的内容&#xff0c;还有针对难点和重点的详细解…

ETL数据同步之DataX,附赠一套DataX通用模板

今天跟大家分享数据同步datax的模板&#xff0c;小伙伴们简单直接借鉴使用。 还记得上一篇关于大数据DS调度工具的分享嘛&#xff1f; 主流大数据调度工具DolphinScheduler之数据ETL流程-CSDN博客 里面的核心就是采用了DATAX的数据同步原理。 一&#xff0c;什么是DataX D…

基于luckysheet实现在线电子表格和Excel在线预览

概述 本文基于luckysheet实现在线的电子表格&#xff0c;并基于luckyexcel实现excel文件的导入和在线预览。 效果 实现 1. luckysheet介绍 Luckysheet &#xff0c;一款纯前端类似excel的在线表格&#xff0c;功能强大、配置简单、完全开源。 官方文档在线Demo 2. 实现 …

华为云.VPC关联概念与对等连接实践

云计算.华为云 VPC关联概念与对等连接实践 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite&#xff1a;http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/q…

视频监控平台LntonCVS视频融合共享平台智慧安防视频监控汇聚应用方案

LntonCVS是一款功能强大且灵活部署的安防视频监控平台。它支持多种主流标准协议&#xff0c;包括GB28181、RTSP/Onvif、RTMP等&#xff0c;同时能够兼容海康Ehome、海大宇等厂家的私有协议和SDK接入。该平台不仅提供传统的安防监控功能&#xff0c;还支持接入AI智能分析&#x…

无人机之产业链篇

无人机产业链上游为无人机设计研发及关键原材料的生产&#xff0c;其中关键原材料有金属材料和复合材料两大类&#xff0c;包括钛合金、铝合金、陶瓷基等特殊材料 中游无人机整机制造包括飞行系统、地面系统、任务载荷系统三个方面&#xff0c;是无人机制造的核心部分&#xf…

Adobe国际认证详解-网页设计认证专家行业应用场景解析

在当今数字化时代&#xff0c;网页设计已成为各行各业不可或缺的一环。而网页设计认证专家&#xff0c;作为经过Adobe国际认证体系严格考核的专业人才&#xff0c;正逐渐成为行业内炙手可热的存在。他们凭借深厚的网页设计理论基础和实践经验&#xff0c;为各行各业提供了高质量…

144. 字典序最小的 01 字符串(卡码网周赛第二十六期(23年阿里淘天笔试真题))

题目链接 144. 字典序最小的 01 字符串&#xff08;卡码网周赛第二十六期&#xff08;23年阿里淘天笔试真题&#xff09;&#xff09; 题目描述 小红有一个 01 字符串&#xff0c;她可以进行最多 k 次提作&#xff0c;每次操作可以交换相邻的两个字符&#xff0c;问可以得到的…

【Langchain大语言模型开发教程】模型、提示和解析

&#x1f517; LangChain for LLM Application Development - DeepLearning.AI 学习目标 1、使用Langchain实例化一个LLM的接口 2、 使用Langchain的模板功能&#xff0c;将需要改动的部分抽象成变量&#xff0c;在具体的情况下替换成需要的内容&#xff0c;来达到模板复用效…

【Linux服务器Java环境搭建】012在linux中安装消息队列RabbitMQ,以及对RabbitMQ设置、启动、开启可视化

系列文章目录 【Linux服务器Java环境搭建】 前言 上一篇博客竟然用了不到半小时就写完了&#xff0c;那就继续吧&#xff0c;如果对此系列感兴趣&#xff0c;可以点击系列【Linux服务器Java环境搭建】进行查看哈&#xff0c;这一篇主要是安装和配置消息队列RabbitMQ。 一、消…

[解决方法]git上传的项目markdown文件的图片无法显示

应该有不少初学者会遇到这种情况 以下是本人摸索出的解决方法 我使用的是typora&#xff0c;首先设置typora的图片设置 文件>偏好设置>图像 如下&#xff1a; 选择这个就会在此文件的同级目录下创建一个assets文件夹来存放此markdown文件的所有图片 然后勾选优先使用相…