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.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM