/etc/init.d/shadowsocks
bash
#!/bin/sh start(){ ssserver -c /etc/shadowsocks.json -d start } stop(){ ssserver -c /etc/shadowsocks.json -d stop } case "$1" in start) start ;; stop) stop ;; reload) stop start ;; *) echo "Usage: $0 {start|reload|stop}" exit 1 ;; esac
这个脚本如果单独执行,start|reload|stop 都能正常执行。
但是用 service shadowsocks reload
就不行,start|stop 正常,
提示reload: Job is not running: shadowsocks
是个什么情况?
报错看样子是ssserver -c /etc/shadowsocks.json -d stop的,如果单独执行stop是不是也会报这个错误?先判断下ssserver是否在运行。
建议处理下方法中的错误输出,如:
stop(){
ssserver -c /etc/shadowsocks.json -d stop >/dev/null 2>&1
}