有一段时间 Shadowsocks 的进程频繁挂掉,原因不明。。。按理说不应该啊,我没跑数据库,内存绝对够用啊,为什么会杀进程。。。
每次连 VPS 重启服务很麻烦,于是研究研究如何守护进程。
pip install supervisor
echo_supervisord_conf > /etc/supervisord.conf # 在 /etc 下创建 supervisor 配置文件,也可以换个目录
编辑创建好的配置文件,在文件最后添加 shadowsocks 任务。
[program:shadowsocks]
command = ssserver -c /home/ss/ss.json
user = nobody
autostart = true
autoresart = true
stderr_logfile = /home/ss/ss.stderr.log
stdout_logfile = /home/ss/ss.stdout.log
编辑 /etc/default/supervisor
文件,如果没有就新建一个。
ulimit -n 51200
开启 supervisor 服务。
supervisord
supervisorctl start all
如果遇到问题,可以查看日志。
supervisorctl tail -f shadowsocks stderr
如果修改了 shadowsocks 配置 /home/ss/ss.json
, 可以重启 shadowsocks:
supervisorctl restart shadowsocks
如果修改了 Supervisor 的配置文件 /etc/supervisor.conf
, 可以更新 supervisor 配置:
supervisorctl update