【发布时间】:2012-01-07 22:21:15
【问题描述】:
我最近遇到了一个扩展名为 .pid 的文件,并在其中进行了探索,但没有找到太多内容。文档说:
Pid-File 是一个包含进程标识号 (pid) 的文件,该文件存储在文件系统的明确定义位置,从而允许其他程序找出正在运行的脚本的 pid。
谁能更清楚地说明这一点,或者指导我了解 pid 文件中包含的内容的详细信息?
【问题讨论】:
我最近遇到了一个扩展名为 .pid 的文件,并在其中进行了探索,但没有找到太多内容。文档说:
Pid-File 是一个包含进程标识号 (pid) 的文件,该文件存储在文件系统的明确定义位置,从而允许其他程序找出正在运行的脚本的 pid。
谁能更清楚地说明这一点,或者指导我了解 pid 文件中包含的内容的详细信息?
【问题讨论】:
pid 文件包含给定程序的进程 ID(一个数字)。例如,Apache HTTPD 可能将其主进程号写入 pid 文件——这是一个常规文本文件,仅此而已——然后使用其中包含的信息来停止自身。您也可以使用该信息自行终止进程,使用 cat filename.pid | xargs kill
【讨论】:
echo filename.pid | xargs kill 不会终止进程。我猜你的意思是:echo $(cat filename.pid) | xargs kill 或 echo <process ID> | xargs kill。
cat filename.pid | xargs kill 有什么优势吗?
Pidfile 包含进程的 pid。这是一种约定,允许长时间运行的进程更具自我意识。服务器进程可以检查它以停止自己,或者启发式地发现它的其他实例已经在运行。 Pidfiles 也可用于方便地手动消除风险,例如pkill -F <some.pid>
【讨论】:
要了解pid文件,请参考DOC
有时某些应用程序需要额外的插件和实用程序的额外支持。因此,它使用此 pid 文件跟踪这些实用程序和插件进程运行 id 以供参考。
这就是为什么每当您重新启动应用程序时,所有必要的插件和依赖的应用程序都必须重新启动,因为 pid 文件将变得陈旧。
【讨论】: