题
我对一个小脚本有一个好奇的问题,可以与远程主机建立VNC连接。该脚本只是为VNC会话制作了SSH隧道,然后打开查看器。它只有两行,当手动复制到外壳中时,它可以正常工作。但是,调用脚本会导致VNC查看器在此错误时失败:main: unable to connect to host: Connection refused (111)
这是脚本:
#!/bin/bash
ssh -N -L5903:localhost:5903 username@example.com &
vncviewer :3
隧道在整个过程中一直生活,因此这不是问题。权限都不是 - 当脚本以root运行时,会发生相同的错误。我已经设置了公共密钥身份验证,因此不是SSH请求密码。
我想念什么?命令在外壳中键入时工作!
提前致谢。
解决方案
很可能是 vncviewer
命令执行太快了 ssh
命令。尝试放置
sleep 3
在这两个命令之间,可以设置端口转发的时间。
不隶属于 StackOverflow