別の TTY で新しいリモート X セッションを開始する

別の TTY で新しいリモート X セッションを開始する

私の自宅のセットアップでは、同じローカル ネットワーク上に 2 台のコンピューターがあり、どちらも Ubuntu 20.04 を実行しています。新しい TTY に切り替えてリモート X セッションを開始し、プライマリ コンピューター経由でセカンダリ コンピューターにアクセスする方法を確立したいと考えています。画面を共有したり、既存の X セッションにアクセスしたりしたくありません。また、リモート X セッションを開始するために使用しているコンピューターには 2 つのモニターがあり、両方を活用したいと思っています。

いくつかのオプションを試しました。XDMCP は私の希望どおりに機能するようです。しかし、今のところあまりうまくいっていないようです (アクセスはできるものの、カーソル付きの黒い画面しか表示されません)。さらに、帯域幅を大量に消費し、安全ではないようなので、理想的には他のものを使用するのがよいでしょう。

X2Go を試してみましたが、別の TTY で起動する方法や、両方のモニターを活用する方法を見つけることができませんでした。

xvnc や NoMachine のようなものも聞いたことがありますが、どちらも希望どおりに実行できるかどうかはわかりません。

これを実行する既存の方法はありますか? または、XDMCP を圧縮および/または保護する方法はありますか? XDMCP を SSH 経由で実行できる可能性があると聞いたことがありますが、これは本当ですか?

ありがとう!

答え1

X ウィンドウ セッションは、期待どおりには動作しません。接続先の反対側に「サーバー」があり、それを制御したいと考えているのです。

実際には逆のことが起こります。接続しているマシンはからサーバーとして機能し、接続すると別のマシンに表示するように指示します。

したがって、接続元のマシンで X が実行されている必要があり、次の操作を実行します。

  • xterm またはお気に入りのターミナル ウィンドウ アプリを開きます。

  • ローカル マシンのターミナルで、リモート ホストからの接続を許可します。

    xhost + 192.168.1.2 (192.168.1.2は接続先のマシンです)

  • 同じターミナルで、X11 転送を使用して、ssh を使用してリモート マシン (192.168.1.2) へのシェルを開きます。

    ssh -Y ログイン@ホスト名

  • リモート マシンでディスプレイを設定します。

    export DISPLAY=192.168.1.1:0.0
    (これは接続するマシンになりますから

  • ここでプログラムを起動します。xeyes、xcalc、chrome などを実行します。しばらくすると、プログラムがローカルの X Window インターフェイスに表示されます。リモート マシンで実行されていますが、ローカルに表示されます。

リモート マシンでは X Window サーバーが動作している必要はありません。リモート マシンは実際には、ローカル コンピューターの X Window サーバーに対するクライアントとして機能します。

XDMCP は、VNC のような、ディスプレイ変更用に最適化されたプロトコルよりも明らかに「重い」です。しかし、目標は異なります。VNC は通常、画面全体で動作します。また、VNC サーバーをインストールしてそのルートを使用することを妨げるものは何もありません。その場合、どの VNC クライアントでも動作します。

関連情報