SSH経由でリモートLinux PCでGUIソフトウェアを起動する方法


109

XMBCメディアプレーヤーまたは他のGUIソフトウェアを自分のPC(メディアセンターとして使用される小さなXubuntu PC)で起動する必要がある場合があります。

通常、リモートPCでSSH経由でX11vncサーバーを起動し、Xvncクライアントを使用してXfceデスクトップに接続します。

SSH経由でリモートLinux PCでGUIソフトウェアを起動する方法はありますか?

ありがとう!


リモートクライアントもMacの場合、選択した回答のアプローチが機能することを確認できます。macOS Sierraで正常に動作しています。
ベンジャミンR

回答:


136

はい。あなただけ実行する必要がexport DISPLAY=:0あなたのsshセッションで(または任意のリモート表示は次のように番号付けされた)とプログラムがリモートディスプレイ上で実行されます実行します。簡単な例:

oli@bert:~$ ssh tim
oli@tim:~$ export DISPLAY=:0
oli@tim:~$ firefox

Firefoxはのtimディスプレイで実行中です。

ただし、sshセッションを閉じると、ほとんどの場合、リモートアプリケーションが閉じます。sshから切断し、アプリケーションを実行したままにする場合は、画面(バックグラウンドで実行されているsshセッションを保持する)またはnohup、または別の方法を使用して特別な方法で起動する必要があります。これに関する詳細については、最近別の質問がありました

これをすべて短縮して、接続し、インラインでディスプレイをエクスポートし、sshセッションが終了した後も閉じられない方法でアプリケーションを起動する1つのコマンドに短縮できます。

ssh tim "DISPLAY=:0 nohup firefox"

それは言ったNo DISPLAY: this may not be what you want.私は道でAbiWordのからそれを試してみました(それをしようとしたとき、 `。
PyRulez

1
@PyRulez最初の行の「またはリモートディスプレイの番号付け」に注意してください。最初のグラフィカルサーバーでない場合は、1以上の可能性があります。実行wして、誰がどこにログインしているかを確認します。これにより、DISPLAY番号もわかります。
オリ

1
どのように私は戻ってオフにそれを回す
akabhirav

1
unset DISPLAY
オリ

7
反対のことを行い、-Yを使用してXアプリをローカルで実行してからアプリを実行したい場合がありますssh -Y <remoteip>
-Postadelmaga
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.