在CentOS 7上用Systemd建立shadowsocks自动启动服务
CentOS 7开始使用Systemd替代原有的init.d作为启动管理工具,原本以为很复杂,后来发现其实比init.d还要简单。
安装完shadowsocks-libenv之后:
vim /etc/systemd/system/ss-redir.service
写入以下内容:
[Unit]
Description=Shadowsocks Redir Client
After=network.target
[Service]
Type=forking
PIDFile=/run/shadowsocks/redir.pid
PermissionsStartOnly=true
ExecStartPre=/bin/mkdir -p /run/shadowsocks
ExecStartPre=/bin/chown nobody:nobody /run/shadowsocks
ExecStart=/usr/local/bin/ss-redir -f /var/run/shadowsocks/redir.pid -c /usr/local/etc/ss-redir.json
Restart=on-abort
User=nobody
Group=nobody
UMask=0027
[Install]
WantedBy=multi-user.target
然后运行
systemctl enable ss-redir.service
启用此服务的自动运行
开启服务:systemctl start ss-redir
查看状态 systemctl status ss-redir
安装完shadowsocks-libenv之后:
vim /etc/systemd/system/ss-redir.service
写入以下内容:
[Unit]
Description=Shadowsocks Redir Client
After=network.target
[Service]
Type=forking
PIDFile=/run/shadowsocks/redir.pid
PermissionsStartOnly=true
ExecStartPre=/bin/mkdir -p /run/shadowsocks
ExecStartPre=/bin/chown nobody:nobody /run/shadowsocks
ExecStart=/usr/local/bin/ss-redir -f /var/run/shadowsocks/redir.pid -c /usr/local/etc/ss-redir.json
Restart=on-abort
User=nobody
Group=nobody
UMask=0027
[Install]
WantedBy=multi-user.target
然后运行
systemctl enable ss-redir.service
启用此服务的自动运行
开启服务:systemctl start ss-redir
查看状态 systemctl status ss-redir
你好,我按照你的方法开机自启动,也可以连接上,但是如果中断,不能自动重启,请问是我哪里写错了吗?
回复删除中断的情况我还没有遇到过,ss-serverr本身进程是很稳定的,我只在路由器上遇到过ss-redir被拖垮了的情况,但是被拖垮了并不是意味着ss本身进程消失,只是无法处理更多转发了,我碰到的这样的情况比较多,而这种情况也很难写守护进程,如果进程本身异常退出了,可以考虑参照这个来写个守护脚本
删除https://gist.github.com/charlestang/6055008
只需要稍微修改一下名字就可以用
ExecReload字段呢,这不是根本没配置重启命令吗
回复删除