これに問題があり、理由がわかりません。関連する質問はたくさんありますが、どれも役に立ちませんでした。
私は2つのVMを持っています:
GNOME192.168.1.53を搭載したCentOS7
XFCE192.168.1.54を搭載したMint17.1 Rebbeca
デフォルトでは、ディスプレイのエクスポートはまっすぐ進む必要があることを知っています。例:
#While I am Logged in on the desktop on the MINT: user@mint:~$ xhost + #I am SSHing to the Centos from the MINT user@mint:~$ ssh -XY [email protected] #At the CentOS I export the display [root@cent ~]$ export DISPLAY=192.168.1.54:0.0 [root@cent ~]$ echo $DISPLAY 192.168.1.54:0.0 #Trying to start a simple program but I get an error message instead: [root@cent ~]$ xclock Error: Can"t open display: 192.168.1.54:0.0
何が間違っているのですか?
いくつかのフォーラムで提案を試しましたが、それでもエラーメッセージが表示されます。また、ディスプレイをMintからCentosにエクスポートしようとしましたが(反対の方法)、同じエラーが発生しますが、今回はMintで発生します。
エラーは、1つのシステムが原因である可能性があります。 XFCEと他のGNOMEはありますか?
私が気付いていないディストリビューションの一方または両方で、いくつかのデフォルトのセキュリティ設定が有効になっている可能性があると考えています。
私も編集しようとしましたここで説明するCentOSの/etc/gdm/custom.conf
:
http://www.softpanorama.org/Xwindows/Troubleshooting/can_not_open_display.shtml
回答
SSHを介してXトンネルを作成し、IPアドレスを指定してオーバーライドしようとしています。 SSHトンネルをバイパスします。これは機能しません。SSHトンネリングの場合、SSHは、通信する各マシンのローカルホストでポートを開くことにより、ローカルIPアドレスとリモートIPアドレス間のデータ転送を処理します。どちらのコンピューターのIPアドレスも指定できません。
SSHを介してトンネリングされたディスプレイをエクスポートする必要があります。つまり、export DISPLAY=localhost:x.y
をエクスポートする必要があります。これは、ssh-Xを使用して接続すると自動的に実行されるはずです。
コメント
回答
転送にSSHを使用するかどうか。ここでは、2つの方法を組み合わせて組み合わせようとしているようです。 1つはSSHで転送するためのもので、sshでは使用されません。
SSH経由で転送する場合は、クライアントで行う必要があるのはssh -X remotehost
。接続したら、サーバー上のセッションで何もする必要はありません。 xhostやエクスポートは必要ありません。
SSHサーバーがX11転送用に適切に設定されているかどうかは疑問です。これは、デフォルトで常にオンになるとは限らないオプションです。sshd_configX11Forwarding
設定を参照してください。
ssh -XY [email protected]
を実行すると、echo $DISPLAY
の出力はlocalhost:10.0
になります。少し紛らわしいです。export DISPLAY
は元々telnetで使用することを目的としていましたか?export DISPLAY
が作成されたとき、rlogin & telnetは存在し、sshはまだ何年も先のことでした。