Systemd管理的/etc/systemd/system.conf修改后生效方法

本文为随笔简记,记述 /etc/systemd/system.conf 修改后生效方法

方法有二

  • 重启主机
  • 执行 systemctl daemon-reexec

使用daemon-reload无效原因

单纯使用 systemctl daemon-reload 是不会对/etc/systemd/system.conf刷新的,引用下serverfault.com对systemd-system.conf的说明

No, daemon-reload will reload all unit files, not the configuration for systemd itself. However, # systemctl daemon-reexec will re-execute systemd and cause it to digest its new configuration in the process.

From the systemctl man page:

daemon-reexec
       Reexecute the systemd manager. This will serialize the manager
       state, reexecute the process and deserialize the state again. This
       command is of little use except for debugging and package upgrades.
       Sometimes, it might be helpful as a heavy-weight daemon-reload.
       While the daemon is being reexecuted, all sockets systemd listening
       on behalf of user configuration will stay accessible.

When the man page says daemon-reexec is useful for package upgrades, it in large part means that this command executes whatever new binaries there are and re-processes its configs. HOWEVER, the RPM that we use to upgrade systemd already contains a script to do this, so it is usually never needed in the case of a normal upgrade.

Or you can reboot. Either will do.

也就是说,daemon-reexec 会重新执行systemd管理器,重新读取系统配置文件,而daemon-reload只会去读service部分的配置,不包含全局配置/systemd/system.conf,相当于重量级的daemon-reload.

posted @ 2020-03-17 11:43  东北小狐狸  阅读(7757)  评论(0编辑  收藏  举报