為什麼取消屏蔽服務會刪除該檔案?

為什麼取消屏蔽服務會刪除該檔案?

我有

$ sudo systemctl unmask nmbd
Removed /etc/systemd/system/nmbd.service.

$ sudo systemctl enable nmbd
nmbd.service is not a native service, redirecting to systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable nmbd

為什麼?為什麼解密服務會刪除其檔案?啟用服務時會出現奇怪的情況嗎?

答案1

/etcsystemd 中的服務透過將覆蓋連結到 來屏蔽/dev/null;所以屏蔽nmbd.service是透過連結/etc/systemd/system/nmbd.service到 來完成的/dev/null。透過刪除該連結來解密它。服務文件仍然存在,/lib/systemd/system/用於本機 systemd 服務。

nmbd.service不是本機 systemd 服務,因此/lib/systemd/system/nmbd.service不存在。它是在 中實現的/etc/init.d/nmbd,因此systemctl可以看到它並委託以systemd-sysv-install啟用它。後者委託給特定於發行版的工具,例如 chkconfigupdate-rc.dETC。

相關內容