質問
リモートホストへのVNC接続を作成するための少しのスクリプトで奇妙な問題があります。スクリプトは、VNCセッション用のSSHトンネルを作成し、視聴者を開きます。わずか2行で、シェルに手動でコピーすると正常に機能します。ただし、スクリプトを呼び出すと、VNCビューアはこのエラーで失敗します。main: unable to connect to host: Connection refused (111)
これがスクリプトです:
#!/bin/bash
ssh -N -L5903:localhost:5903 username@example.com &
vncviewer :3
トンネルはプロセス全体に住んでいるので、それは問題ではありません。どちらも権限ではありません - スクリプトがルートとして実行されるときに同じエラーが発生します。公開キー認証が設定されているので、SSHがパスワードを要求しているわけではありません。
何が足りないの?コマンドは、シェルに入力されたときに機能します!
前もって感謝します。
解決
ほとんどの場合 vncviewer
コマンドは、その後速すぎて実行されています ssh
指図。入れてみてください
sleep 3
これらの2つのコマンド間で、ポート転送が設定される時間を確保します。
所属していません StackOverflow