时间:2023-06-02 16:16:41 来源: 人气:
(1) 什么是单元, 在RHEL7之前,服务管理是分布式的被SysV init或UpStart通过/etc/rc.d/init.d下的脚本管理。这些脚本是经典的Bash脚本,允许管理员控制服务的状态。在RHEL7中,这些脚本被服务单元文件替换。, 在systemd中,服务、挂载等资源统一被称为单元,所以systemd中有许多单元类型,服务单元文件的扩展名是.service,同脚本的功能相似。例如有查看、启动、停止、重启、启用或者禁止服务的参数。, systemd单元文件放置位置:, /usr/lib/systemd/system/systemd默认单元文件安装目录, /run/systemd/systemsystemdsystemd单元运行时创建,这个目录优先于按照目录, /etc/systemd/system系统管理员创建和管理的单元目录,优先级最高。, (2)systemd的服务管理, 使用systemcl命令可以控制服务,service命令和chkconfig命令依然可以使用,但是主要是出于兼容的原因,应该尽量避免使用。, 使用systemctl命令的时候,服务名字的扩展名可以写全,例如:, 代码如下:, systemctl stop bluuetooth.service, 也可以忽略,例如:, 代码如下:, systemctl stop bluetooth, systemctl常用命令:, 启动服务, 代码如下:, systemctl start name.service, 关闭服务, 代码如下:, systemctl stop name.service, 重启服务, 代码如下:, systemctl restar tname.service, 仅当服务运行的时候,重启服务, 代码如下:, systemctl try-restart name.service, 重新加载服务配置文件, 代码如下:, systemctl relaod name.service, 检查服务运作状态, 代码如下:, systemctl status name.service, 或者, 代码如下:, systemctl is-active name.service, 展示所有服务状态详细信息, 复制代码, 代码如下:, systemctl list-units--type service --all, 允许服务开机启动, 代码如下:, systemctl enable name.service, 禁止服务开机启动, 代码如下:, systemclt disable name.service, 检查服务开机启动状态, 代码如下:, systemctl status name.service, 或者, 代码如下:, systemctl, is-enabled name.service, 列出所有服务并且检查是否开机启动, 代码如下:, systemctl list-unit-files --type service, (3)服务详细信息查看, 使用如下命令列出服务:, 代码如下:, systemctl list-units --type service, 默认只列出处于激活状态的服务,如果希望看到所有的服务,使用--all或-a参数:, 代码如下:, systemctl list-units--type service --all, 有时候希望看到所以可以设置开机启动的服务,使用如下命令:, 代码如下:, systemctl list-unit-files --type service, 查看服务详细信息,使用如下命令:, 代码如下:, systemctl status name.service, 服务信息关键词解释, Loaded服务已经被加载,显示单元文件绝对路径,标志单元文件可用。, Active服务已经被运行,并且有启动时间信息。, Main PID与进程名字一致的PID,主进程PID。, Status服务的附件信息。, Process相关进程的附件信息。, CGroup进程的CGroup信息。,