V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
henryshen233
V2EX  ›  Linux

再求教一次, OpenWrt 不能自启动 ss-tunnel

  •  
  •   henryshen233 · 2017-03-17 12:55:17 +08:00 · 6702 次点击
    这是一个创建于 2596 天前的主题,其中的信息可能已经有所发展或是发生改变。
    RT ,路由器重新刷了一下系统,把 ss-redir 和 ss-tunnel 都写进了 /etc/rc.local , ss-redir 开机启动正常,但是 ss-tunnel 却不会,只能 ssh 上去手动重启,求解决办法,请教,我的 /etc/rc.local 如下:

    /usr/bin/ss-redir -c /etc/ss-redir.json -b 0.0.0.0 -f /var/run/ss-redir.pid
    /usr/bin/ss-tunnel -c /etc/ss-tunnel.json -b 0.0.0.0 -l 5353 -L 8.8.8.8:53 -u
    /etc/init.d/dnsmasq restart
    exit 0
    11 条回复    2019-07-16 13:41:58 +08:00
    jsq2627
        1
    jsq2627  
       2017-03-17 12:56:48 +08:00
    可以尝试一下延迟一下延迟启动
    henryshen233
        2
    henryshen233  
    OP
       2017-03-17 12:57:41 +08:00
    @jsq2627 请问我应该怎么操作啊,谢谢啦
    henryshen233
        3
    henryshen233  
    OP
       2017-03-17 13:00:01 +08:00
    @jsq2627 请问你说的是 sleep 延时吗
    henryshen233
        4
    henryshen233  
    OP
       2017-03-17 13:06:02 +08:00 via iPhone
    设置了一个 init.d 貌似好了,谢谢一楼
    jsq2627
        5
    jsq2627  
       2017-03-17 13:06:43 +08:00
    似乎发现问题可能是你的 ss-tunnel 没有加 -f 参数
    /usr/bin/ss-tunnel -c /etc/ss-tunnel.json -b 0.0.0.0 -l 5353 -L 8.8.8.8:53 -u -f /var/run/ss-tunnel.pid
    延时启动的话是这样:
    sleep 5 && /usr/bin/ss-tunnel -c /etc/ss-tunnel.json -b 0.0.0.0 -l 5353 -L 8.8.8.8:53 -u -f /var/run/ss-tunnel.pid


    不过既然是 openwrt ,为何不直接装 luci-app-shadowsocks 呢?

    顺道分享一个自己从 openwrt-shadowsocks 提取的 init 脚本,去掉了对 UCI 的依赖
    https://gist.github.com/stackia/0c83f9ca66cdc010be48840ee5b0a09c
    henryshen233
        6
    henryshen233  
    OP
       2017-03-17 13:19:29 +08:00 via iPhone
    @jsq2627 谢谢哥们!
    henryshen233
        7
    henryshen233  
    OP
       2017-03-17 13:22:35 +08:00 via iPhone
    @jsq2627 应该不是没加-f 的原因
    henryshen233
        8
    henryshen233  
    OP
       2017-03-17 13:24:36 +08:00
    @jsq2627 用你的命令成功了,刚才 init.d 还是失败的
    riverqh
        9
    riverqh  
       2019-07-16 12:53:53 +08:00   ❤️ 1
    每个命令行后面要加个空格和&符号,这样每个命令都独立在后台执行,否则因为第一个命令是服务导致进程没有终止,也就不会再启动后续的命令行了。
    riverqh
        10
    riverqh  
       2019-07-16 12:55:05 +08:00   ❤️ 1
    /usr/bin/ss-redir -c /etc/ss-redir.json -b 0.0.0.0 -f /var/run/ss-redir.pid &

    /usr/bin/ss-tunnel -c /etc/ss-tunnel.json -b 0.0.0.0 -l 5353 -L 8.8.8.8:53 -u &

    # 这个可以不加&
    /etc/init.d/dnsmasq restart

    exit 0
    henryshen233
        11
    henryshen233  
    OP
       2019-07-16 13:41:58 +08:00
    @riverqh 谢谢啦,现在又刷回去路由器官方的固件了😄
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3320 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 12:57 · PVG 20:57 · LAX 05:57 · JFK 08:57
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.