我正在系统中安装一些第三方 rpm,其中一个 rpm 包包含一个 systemd 服务文件和一个用于启用该服务的预设文件。我想让该服务保持禁用和屏蔽状态。
为了禁用,systemd 提供预设框架我可以写一个优先级更高的预设文件。
但是我该如何屏蔽服务呢?是否有一个我可以安装的配置文件,类似于预设文件?或者我必须添加一个 cron 作业以在节点重启时运行来屏蔽服务?
答案1
每当您屏蔽服务时,systemctl 实际上都会告诉您如何执行此操作:
# systemctl mask foo
Created symlink /etc/systemd/system/foo.service → /dev/null.
“屏蔽”服务类似于覆盖服务,其中的单元配置/etc
将优先于中的配置/usr/lib
。(这是 systemd 中的常见模式,其中 /etc 中的本地管理员设置优先于 /usr/lib 中的分发设置。)
/dev/null
使用符号链接(或使用空的常规文件,但首选符号链接)覆盖的服务将被 systemd 视为“屏蔽”。