我不太习惯sys admin,最近使用以下命令在两个服务器(在Ubuntu12.4上)之间创建了一个SSH隧道:
ssh -fNg -L 3307:127.0.0.1:3306 tunneluser@xx.xx.xx.xx它成功了,我还将这个命令添加到/etc/rc.local中,并在启动时成功地启动了SSH隧道。但是,我尝试将隧道添加到/etc/init/ my _tunel.conf中的一个文件中,它工作了,但在每次启动时都启动了将近12个隧道!我使用了以下代码:
start on (local-filesystems and net-device-up IFACE=eth0)
stop on runlevel[016]
respawn
exec ssh -fNg -L 3307:127.0.0.1:3306 tunneluser@xx.xx.xx.xx
exit 0我花了几个小时在这上面,完全不明白为什么和如何执行这个脚本这么多次。我也试过start on[2345],完全阅读了暴发户的手册,但仍然一样。我确信我在这里遗漏了一些东西。
如果有人能帮我的话。谢谢。
发布于 2015-06-26 18:20:09
正如c4f4t0r所评论的,respawn将在脚本退出时再次运行该命令。通过使用-f,它可以在后台运行,从而有效地退出并使新贵重新启动它。如果删除-f,那么它将保持运行状态,当它意外退出时,upstart可以观察它。
start on (local-filesystems and net-device-up IFACE=eth0)
stop on runlevel[016]
respawn
exec ssh -Ng -L 3307:127.0.0.1:3306 tunneluser@xx.xx.xx.xx
exit 0https://serverfault.com/questions/580857
复制相似问题