我有一个进程,希望ssh隧道连接能够正确执行,我一直使用以下命令:
ssh -L localhost:3306:127.0.0.1:3306 username@<mysql-machine-ip-address> -N &我已经成功运行了8个月,最近我们的主机提供商不得不进行硬件修改来更新我们的机器,并为Ubuntu升级了新的内核。从4.8.3-x86_64-linode78 76到4.8.6-x86_64-linode78 78。
在解决了一系列问题之后,我们不得不更新命令如下:
ssh -L localhost:3306:127.0.0.1:3306 username@<mysql-machine-ip-address> -fN在研究ssh文档时,-f参数
请求ssh在执行命令之前转到后台。如果ssh想要密码或密码,这是有用的,但是用户希望它在后台。这意味着-n。在远程站点上启动X11程序的推荐方法是使用类似ssh -f主机xterm之类的内容。
在研究bash命令"&“时
将一个进程放到后台(参见“中间使用> UNIX操作系统”中的多任务处理)。
这两个命令有本质上的区别吗?
发布于 2016-12-07 23:35:53
是的,有。ssh &从一开始就在后台运行ssh。ssh -f在前台启动ssh,允许它提示密码等等,只有在执行请求的命令之前,ssh才会将自己放在后台。
https://unix.stackexchange.com/questions/328819
复制相似问题