SSH 経由の X11 転送

SSH 経由の X11 転送

ここ数時間、X11 転送をいろいろ試してきましたが、今のところ、X11VNC をサーバー、X2VNC をクライアントとして使用して、デスクトップ PC の X サーバーをラップトップに転送することができました。X2VNC は、Xinerama を使用して、ラップトップとデスクトップ PC の間でデュアル スクリーンのような動作を提供します。

それは本当に素晴らしいです!

ほとんどの Linux システムは Xorg とデスクトップ環境を TTY7 上で実行していることを知っています。

そこで、VNC トンネルを独自の TTY に結び付けることは可能なのかと考えました。

管理するマシンを選択するために、2 つの TTY を切り替えられると便利です。Xinerama や GUI を使用するよりも、このアプローチの方が気に入っています。

答え1

これは本当の答えではないと思いますが、出発点にはなるかもしれません。

私は次のように xinit を使用して多数の追加 X サーバーを起動しました。

xinit -- :1 tty3   
xinit -- :2    
xinit -- :3 tty5    
xinit -- :4

異なる仮想ディスプレイで複数のgnome3とxfceセッションを開始することもできるようです

startx -- :2  tty3   
startx -- :3  tty4

そして、DISPLAY変数をエクスポートしてexport DISPLAY=:3、Ctrl-Alt-F2、F3などを使用して選択することで、それらのセッションで作業を開始できるようになりました。

しかし、自分が何をしているのか全く分かりません (DISPLAY、セッション、コンソール、または tty を切り替えているのでしょうか?)。おっしゃるとおり、とてもクールです... ;-)

[tomh@workstation001 ~]$ export DISPLAY=:4
[tomh@workstation001 ~]$ google-chrome

答え2

これは古いことだとは分かっていますが、

xinit -e ssh -XYC $HOSTTOSSHTO startx -- :1

私が見つけた唯一の欠点は、セッションが開始したらログイン ターミナルを閉じることができないことです。他の投稿で言及されているように、 CTRL+ ALT+を使用して前後に移動しますF#。私は Raspberry Pi で常にこれを行っており、インターネット上のサーバーなどでもこれを行ってきました (少し遅いです)。、、などで交換することもできstartxます。/usr/bin/icewmopenboxstartKDE

答え3

これに対する適切な解決策を見つけたようです。

デスクトップ コンピューターに接続するために特別にユーザーを作成しました。

私のラップトップ上のユーザーの ~/.xinitrc 内に、次の行があります (/home/desktop/.xinitrc):

exec vncviewer 192.168.1.2

192.168.1.2 は私のネットワーク上のデスクトップ コンピューターの IP です。

私の場合は、デスクトップ PC でクライアントとして Tiger VNC を使用し、サーバーとして X11VNC を使用しています。

どのクライアントでも大丈夫だと思います。

現在の仕組みは、CTRL+ALT+F2 で tty2 に入り、新しいデスクトップ ユーザーとしてログインし、 で x を起動しますxinit -- :1。メインの x サーバーがすでに tty7 で実行されているため、新しい x サーバーは tty8 で起動します。

vncviewer が実行され、デスクトップ PC に正常に接続され、デスクトップ PC の解像度がラップトップの解像度よりも高い場合に画面全体とスクロール バーが表示されます。

今では、CTRL+ALT+7 と CTRL+ALT+8 でラップトップ PC とデスクトップ PC を簡単に切り替えることができます。

これは、Tiger VNC を使用することを前提とした完全な手順です (唯一の違いは次のとおりですexec vncviewer x.x.x.x)。

  1. 新しいユーザーを作成するadduser desktop
  2. 新しいユーザーの設定はデフォルト値で問題ないので、ユーザーが作成されるまで Enter キーを押し続けます。
  3. 開いて/home/desktop/.xinitrc(デスクトップとしてログインしていない場合は必ず root として実行し、権限にも注意してください)、ファイルを消去して (コンテンツがある場合)、次の行を入力します。exec vncviewer x.x.x.x
  4. x.x.x.xを希望する IP アドレスに置き換えます。
  5. ファイルを保存します。
  6. CTRL+ALT+X を使用して未使用の tty を入力します。ここで、X は 1 から 9 までの数字です。
  7. ログインdesktop
  8. で新しい X サーバーを起動します。xinit -- :1:1 がすでに使用されている場合は、別のディスプレイを使用できます。
  9. X サーバーが起動される新しい tty に送信され、これで Tiger VNC が選択した IP アドレスに接続されるはずです。

あなた5月任意のユーザーから X を起動すると自動的に起動するデスクトップ環境がある場合は、問題が発生します。したがって、期待どおりに動作しない場合は、その点に注意してください。

関連情報