我在/etc/systemd/system/systemd-machined.service.d/10-machined-pid-file.conf
的path下有一个systemd-machined的/etc/systemd/system/systemd-machined.service.d/10-machined-pid-file.conf
。 当我运行systemctl status systemd-machined
我看到了行
Drop-In: /etc/systemd/system/systemd-machined.service.d └─10-machined-pid-file.conf
但是,我在/ var / run /中看不到一个PID文件。 基于我的入门:
[Serivce] PIDFile=/var/run/machined.pid
我相信应该不会有任何问题创build该PID文件。 有什么我失踪?
PIDFile=
设置不会创build PID文件。 这仍然取决于服务本身,就像过去40年一样。 相反,这个选项告诉系统在哪里find现有的PID文件(如果有的话)。 在大多数情况下,它并不是必需的,因为systemd会将服务保留在自己的cgroup中,并且不需要PID文件来跟踪它们。 但是,systemd会在服务退出时删除 PID文件,如果服务本身没有清理。
从文档 :
取一个绝对文件名,指向这个守护进程的PID文件。 对于
Type=
设置为forking
服务,build议使用此选项。 systemd将在启动服务之后读取守护进程的主进程的PID。 systemd不会写入这里configuration的文件,尽pipe如果它仍然存在,它将在服务closures后删除文件。