用 systemctl daemon-reload 重新加载 systemd 配置

修改 service/timer 文件后让 systemd 立刻识别,不用重启系统。

Linuxsystemd服务配置中风险
编辑或新增任何 .service/.timer/.mount 单元后,执行 sudo systemctl daemon-reload 让 systemd 重新读取配置。

01命令

命令
$ sudo systemctl daemon-reload

02作用说明

systemd 会把单元定义缓存在内存里,对 /etc/systemd/system/、其 .d/ 附加目录或符号链接的修改在被 reload 之前不会生效。daemon-reload 会重新读取全部单元并重建依赖树,之后再用 restart 应用新定义。它本身不会重启任何服务,可以放心随时执行。

03风险

风险中风险
使用条件Any systemd-based distro; root access (or --user for your own user units). Harmless to run — it only re-reads configuration.
!注意: daemon-reload 只重新读取配置,不会把新设置应用到正在运行的服务——仍需 systemctl restart。忘了这一步时,磁盘上是新配置、内存里还是旧配置,这是“改了没效果”最常见的原因。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

  • systemctl(1) - Linux manual page
    man7.org · community · 2026-09-17
    依据: Documents 'systemctl daemon-reload': reload the systemd manager configuration, re-running generators and re-writing user session config.
  • systemctl(1) — Arch Manual Pages
    Arch Linux · community · 2026-09-17
    依据: Same daemon-reload operation documented: reload units from disk, needed after editing unit files or creating symlinks.

最后验证: 2026-09-19 · 分类: 系统与设置

06相关方案