2

在没有“-f”选项的情况下运行 autossh 时,一切正常。添加“-f”选项确实将 autossh 发送到后台,但是在 ssh 隧道正确建立后, autossh 本身退出,使 ssh 连接没有监视器。

这是我正在运行的命令:autossh -f -M 20000 -N -L 0.0.0.0:5601:10.10.0.8:5601 10.10.0.8

任何人都知道什么会导致这个问题?或者 - 任何人都知道使用“-f”时如何调试 autossh?(使用 AUTOSSH_DEBUG=1 时是否产生任何日志文件)?

(我在 Ubuntu 14.04 上运行)

谢谢, 谢伊

4

2 回答 2

2

在 macOS 上,我遇到了一个问题,autossh -M 0 -R 1234:localhost:22但添加-f使 autossh 在后台运行会记录以下内容,并且 autossh 会立即死亡:

2018/04/10 12:00:06 autossh[67839]: ssh exited with status 0; autossh exiting

添加-N(“不要执行远程命令。”)解决了这个问题:

autossh -f -M 0 -N -R 1234:localhost:22

看到你已经-N在命令中,这可能是无关的,但可能对其他人有帮助。

于 2018-04-10T09:07:54.967 回答
2

看到没有人有更好的建议......尝试在像daemontools这样的看门狗下运行 autossh 。使用这种方法,autossh 作为supervise守护进程的前台子进程运行(因此,没有-f开关)。您可以使用命令启动和停止它svc,并且可以使用multilog.

在一组生产箱上,这种方法已被证明对我来说足够可靠。

于 2016-02-12T02:47:49.043 回答