CentOS 7 中 Systemd详解(2)

2、服务查看:
  查看所有服务的开机自启状态:
    chkconfig --list ==> systemctl list-unit-files --type service
    用来列出该服务在哪些运行级别下启用和禁用
    chkconfig sshd –list  ==>ls /etc/systemd/system/*.wants/sshd.service
    查看服务是否开机自启:
    systemctl is-enabled name.service
    其它命令:
    查看服务的依赖关系:
    systemctl list-dependencies name.service
    杀掉进程:
    systemctl kill 进程名
    显示某个 Unit 的所有底层参数
    # systemctl show httpd.service
    显示某个 Unit 的指定属性的值
    # systemctl show -p CPUShares httpd.service
    设置某个 Unit 的指定属性
    # sudo systemctl set-property httpd.service CPUShares=500


  3、服务状态:
    显示状态
    systemctl list-unit-files --type service –all 
    loaded:Unit 配置文件已处理
    active(running)一次或多次持续处理的运行
    active(exited)成功完成一次性的配置
    active(waiting)运行中,等待一个事件
    inactive不运行
    enabled开机启动
    disabled开机不启动
    static开机不启动,但可被另一个启用的服务激活

4、hostnamectl
hostnamectl命令用于查看当前主机的信息。
 显示当前主机的信息
# hostnamectl
设置主机名。
# hostnamectl set-hostname rhel7

5、localectl
localectl命令用于查看本地化设置。
 查看本地化设置
# localectl
# 设置本地化参数。
# localectl set-locale LANG=en_GB.utf8
# localectl set-keymap en_GB

6、 timedatectl
123456789 timedatectl
timedatectl命令用于查看当前时区设置。
查看当前时区设置
显示所有可用的时区
# timedatectl list-timezones                                                                                   
# 设置当前时区
$# timedatectl set-timezone America/New_York
# timedatectl set-time YYYY-MM-DD
# timedatectl set-time HH:MM:SS

7、loginctl
loginctl命令用于查看当前登录的用户。
# 列出当前session
# loginctl list-sessions
# 列出当前登录用户
# loginctl list-users
# 列出显示指定用户的信息
# loginctl show-user (ruanyf) 用户

四、unit
Systemd可以管理系统中所有资源。不同的资源统称为unit(单位)。Unit表示不同类型的systemd对象,通过配置文件进程标识和配置;文件中主要包含了系统服务、监听socket、保存的系统快照以及其它与init相关的信息。
1、Unit类型
Unit一共分为12种。
Sysstemctl  –t help 查看unit类型
Service unit:文件扩展名为.Service,用于定义系统服务
Target unit : 文件名扩展为.target,用于模拟实现“运行级别”
Device unit :.device ,用于定义文件内核识别设备
Mount unit: .mount 定义文件系统挂载点。
Socket unit: .socket, 用于标识进程间通信用的socket文件,也可在系统启动时,延迟启动服务,实现按需启动
Snapshot unit: .snapshot, 管理系统快照
Swap unit: .swap, 用于标识swap设备
Automount unit: .automount,文件系统的自动挂载点
Path unit: .path,用于定义文件系统中的一个文件或目录使用,常用于当文件系统变化时,延迟激活服务,如:spool目录
Scope unit :不是由systemd启动的外部进程
Slice unit :进程组
Timer unit :定时器


2、systemctl list-units命令可以查看当前系统的所有 Unit 。
 列出正在运行的 Unit
# systemctl list-units
 列出所有Unit,包括没有找到配置文件的或者启动失败的
# systemctl list-units --all
 列出所有没有运行的 Unit
# systemctl list-units --all --state=inactive
 列出所有加载失败的 Unit
# systemctl list-units --failed
 列出所有正在运行的、类型为 service 的 Unit
# systemctl list-units --type=service


3、unit状态
systemctl status命令用于查看系统状态和单个 Unit 的状态。
 显示系统状态
#systemctl status
 显示单个 Unit 的状态
# sysystemctl status bluetooth.service
 显示远程主机的某个 Unit 的状态
# systemctl -H root@rhel7.example.com status httpd.service
除了status命令,systemctl还提供了三个查询状态的简单方法,主要供脚本内部的判断语句使用。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/3b8af29d0536e48721d1836e32246c0a.html