Red Hat Training
A Red Hat training course is available for RHEL 8
17.13. 修改现有单元文件
在系统中安装的服务会附带保存在 /usr/lib/systemd/system/
目录中的默认单元文件。系统管理员不应该直接修改这些文件,因此任何自定义都必须仅限于 /etc/systemd/system/
目录中的配置文件。
流程
根据所需更改的程度,选择以下方法之一:
-
要返回单元的默认配置,请删除
/etc/systemd/system/
中自定义的配置文件。 要在不重启系统的情况下对单元文件应用更改,请执行:
systemctl daemon-reload
daemon-reload
选项重新加载所有单元文件,并重新创建依赖项树,这需要立即将任何更改应用到单元文件中。另外,您可以使用以下命令得到同样的结果,该命令必须以root
用户执行:init q
如果修改后的单元文件属于一个正在运行的服务,则该服务必须重启才能接受新设置:
systemctl restart name.service
要修改由 SysV initscript 处理的服务的属性,如依赖项或超时,请不要修改 initscript 本身。反之,为服务创建一个 systemd
置入配置文件,如:扩展默认的单元配置 和 覆盖默认的单元配置 中所述。
然后,像普通的 systemd
服务那样管理该服务。
例如:要扩展 network
服务的配置,不要修改 /etc/rc.d/init.d/network
initscript 文件。反之,创建新目录 /etc/systemd/system/network.service.d/
和一个 systemd
drop-in 文件 /etc/systemd/system/network.service.d/my_config.conf
。然后将修改的值放到 drop-in 文件中。注: systemd
知道 network
服务为 network.service
,这就是为什么创建的目录必须名为 network.service.d