Pppd upstart 脚本

Pppd upstart 脚本

我正在创建一个 upstart conf 来管理不同的 VPN 连接。问题是,如果pppd守护进程死机,initctl仍然认为它是start/running

这是我现在的vpn.conf

description "VPN clients"

instance $vpn
export vpn

pppd call $vpn 

我怎样才能让 upstart 明白,如果守护进程死亡,状态就不再运行?

当客户端运行时,进程树如下所示:

root     30502     1  0 Aug11 ?        S      0:00 pppd call 162.xx.yy.42
root     30503 30502  0 Aug11 ?        S      0:00  \_ sh -c pptp   162.xx.yy.42 --nolaunchpppd
root     30504 30503  0 Aug11 ?        S      0:07      \_ pptp 162.xx.yy.42 --nolaunchpppd

答案1

这是我的 PPTP Upstart 脚本,我认为您可以根据我的脚本来修复您的脚本。您需要将 替换[PEER-NAME]为目录中对等文件的名称/etc/ppp/peers

start on runlevel [2345]
stop  on runlevel [016]
respawn
exec /usr/sbin/pppd nodetach persist call [PEER-NAME]

相关内容