我在一个小脚本中遇到了一个奇怪的问题,该脚本用于建立到远程主机的VNC连接。该脚本只是为VNC会话创建了一个SSH隧道,然后打开查看器。它只有两行,当手动复制到shell中时,它工作得很好。但是,调用该脚本会导致VNC查看器失败,并显示以下错误:main: unable to connect to host: Connection refused (111)
脚本如下:
#!/bin/bash
ssh -N -L5903:localhost:5903 username@example.com &
vncviewer :3
隧道在整个过程中都存在,所以这不是问题。权限也不是--当脚本以root用户身份运行时,也会发生同样的错误。我已经设置了公钥身份验证,所以ssh并不是在请求密码。
我遗漏了什么?当在shell中输入命令时,这些命令就会起作用!
提前谢谢。
发布于 2010-06-29 02:43:15
最有可能的情况是,在执行ssh命令之后,vncviewer命令执行得太快。试着把
sleep 3在这两个命令之间,以便有时间建立端口转发。
https://stackoverflow.com/questions/3135155
复制相似问题