加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 如何查找给定进程的.pid文件

发布时间:2020-12-13 18:00:15 所属栏目:Linux 来源:网络整理
导读:我正在设置monit并希望监视给定的 python应用程序. Monit通过查看进程的.pid文件来做到这一点,但我不知道它会在哪里. 我也尝试创建自己的简单可执行文件并运行它 – 在这里我也无法弄清楚.pid文件的创建位置. 并且所有进程都有.pid文件吗? 解决方法 您通常
我正在设置monit并希望监视给定的 python应用程序. Monit通过查看进程的.pid文件来做到这一点,但我不知道它会在哪里.

我也尝试创建自己的简单可执行文件并运行它 – 在这里我也无法弄清楚.pid文件的创建位置.

并且所有进程都有.pid文件吗?

解决方法

您通常会在Redhat / CentOS风格的系统上的/ var / run /中找到daemonized进程的PID文件.

除此之外,您始终可以查看进程init脚本.例如,SSH守护程序是使用/etc/init.d/sshd中的脚本启动的.有时会在那里定义PID(搜索pid,PID,PIDFILE,PID_FILE等).

但是,RHEL样式系统上的大多数其他守护程序都会为/etc/init.d/functions脚本提供一些常见功能.

# Set $pid to pids from /var/run* for {program}.  $pid should be declared
# local in the caller.
# Returns LSB exit code for the 'status' action.
__pids_var_run() {
        local base=${1##*/}
        local pid_file=${2:-/var/run/$base.pid}

对于任何来源/etc/init.d/functions,PID将存在于/var/run/*.pid中.

对于自定义应用程序,PID将在包装器脚本中定义(希望如此).我知道的大多数开发人员遵循与上面的守护进程相同的约定.

如果您确实遇到没有PID文件的内容,请记住Monit can monitor on a process string patern as well.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读