web-dev-qa-db-ja.com

SSHを切断した後、リモートX11アプリを実行し続ける方法は?

X11転送を使用しているため、デスクトップからサーバー上のプログラムウィンドウを見ることができます。PCへのx11転送でsshセッションから切断すると、切断時にサーバー側でそのプログラムが閉じますか?もしそうなら、それを防ぐ方法はありますか?

サーバーでMEGASyncを実行していますが、使用するにはXサーバーが必要です。iptablesが奇妙に動作し、ポートを正しく開けないため、VNCを使用できません。 SSHに接続したままでサーバーでmegasyncを実行し続けて、PCの電源を切ることができるようにします。

これを行う方法はありますか?

5
BitRain

Xpra はまさにあなたが探しているもののようです。画面やtmuxに少し似ていますが、X11アプリケーション用です。

例については、 この回答 on http://unix.stackexchange.com を参照してください。

3

私が探検する2つの道があります。最も簡単なのは、ServerAliveInterval 60をsshクライアント設定に追加することでsshを存続させることです

cat <<- EOF >> $HOME/.ssh/config

    # send packets over ssh every 60 seconds to keep ssh connection alive
    ServerAliveInterval 60
EOF

または、代わりにscreenまたはtmuxをインストールします。個人的にはtmuxを使用します

サーバー上で実行する必要があります

Sudo apt-get install tmux

次に、サーバーでtmuxを起動します

tmux -2

でサーバーに接続する

ssh -X -C -c blowfish-cbc,arcfour [-pPORT_NUM] [email protected]

どこ

  • -X X11転送を有効にします。
  • -Cすべてのデータ(stdin、stdout、stderr、および転送されたX11、TCPおよびUNIXドメイン接続のデータを含む)の圧縮を要求します。
  • -cは暗号タイプです

圧縮は本質的にではありませんが、サーバーとの遅延/応答性を低減します

次に、tmuxセッション内からプログラムを起動します

つまり.

$ your program

sshが切断された場合、プログラムはサーバー上で実行されたままで、新しいssh接続が確立されたらプログラムと再接続する必要があります。

tmux attach

サーバー上

1
the_velour_fog