首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Ubuntu、upstart和创建用于监视的pid

Ubuntu、upstart和创建用于监视的pid
EN

Stack Overflow用户
提问于 2012-04-02 14:54:28
回答 2查看 34.8K关注 0票数 34

下面是redis的初创脚本。如何创建pid以便使用monit进行监控?

代码语言:javascript
运行
复制
#!upstart
description "Redis Server"

env USER=redis

start on startup
stop on shutdown

respawn

exec sudo -u $USER sh -c "/usr/local/bin/redis-server /etc/redis/redis.conf 2>&1 >> /var/log/redis/redis.log"
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-11 02:21:06

如果您的机器上有start-stop-daemon,我强烈建议您使用它来启动您的进程。启动-停止-守护程序将以非特权用户的身份启动进程,而无需从sudo或su (recommended in the upstart cookbook)派生,并且它还内置了对pid文件管理的支持。例如:

/etc/init/app_name.conf

代码语言:javascript
运行
复制
#!upstart
description "Redis Server"

env USER=redis

start on startup
stop on shutdown

respawn

exec start-stop-daemon --start --make-pidfile --pidfile /var/run/app_name.pid --chuid $USER --exec /usr/local/bin/redis-server /etc/redis/redis.conf >> /var/log/redis/redis.log 2>&1

或者,您可以通过使用post-start script节创建pid文件,使用post-stop script节删除pid文件来手动管理pid文件。例如:

/etc/init/app_name.conf

代码语言:javascript
运行
复制
#!upstart
description "Redis Server"

env USER=redis

start on startup
stop on shutdown

respawn

exec sudo -u $USER sh -c "/usr/local/bin/redis-server /etc/redis/redis.conf 2>&1 >> /var/log/redis/redis.log"

post-start script
    PID=`status app_name | egrep -oi '([0-9]+)$' | head -n1`
    echo $PID > /var/run/app_name.pid
end script

post-stop script
    rm -f /var/run/app_name.pid
end script
票数 68
EN

Stack Overflow用户

发布于 2013-03-17 05:55:27

Egg的第一个使用start-stop-daemon的示例是可行的。

如果选择choose,我建议使用$$来获取PID。

代码语言:javascript
运行
复制
#!upstart
description "Redis Server"

env USER=redis

start on startup
stop on shutdown

respawn

script
    echo $$ > /var/run/app_name.pid
    exec sudo -u $USER sh -c "/usr/local/bin/redis-server /etc/redis/redis.conf 2>&1 >> /var/log/redis/redis.log"
end script

post-stop script
    rm -f /var/run/app_name.pid
end script
票数 22
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9972023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档