即使服务已禁用,仍会创建 /var/run 目录

即使服务已禁用,仍会创建 /var/run 目录

通常,存储 pid 或类似内容的目录由服务的启动脚本创建。(请参阅这个问题

但是,我刚刚注意到,当我禁用服务后,重新启动后仍会重新创建这些目录。我尝试的所有服务都发生了这种情况。

root@sonorus:~# systemctl status openvpn
● openvpn.service - OpenVPN service
   Loaded: loaded (/lib/systemd/system/openvpn.service; disabled)
   Active: inactive (dead)
root@sonorus:~# systemctl status ejabberd
● ejabberd.service - A distributed, fault-tolerant Jabber/XMPP server
   Loaded: loaded (/lib/systemd/system/ejabberd.service; disabled)
   Active: inactive (dead)
     Docs: https://www.process-one.net/en/ejabberd/docs/

哪项服务实际上正在创建这些目录?

答案1

使用 systemd,有一个名为 的新功能tmpfiles.d(5),可用于在启动时在 .service 文件之外创建文件或目录。Openvpn 和 ejabberd 都在使用此功能,因此/var/run即使它们未在启动时启动,仍会创建 中的目录。

配置tmpfiles文件存储在/usr/lib/tmpfiles.d/

相关内容