web-dev-qa-db-ja.com

コマンドラインからssh経由でデスクトップの背景を設定する

Ubuntu 12.04のコマンドラインからデスクトップの背景を設定しようとしています。

こちら のように、実際のマシンの端末からこれを行うことができます。

gsettings set org.gnome.desktop.background picture-uri file:///path/to/my/image.png

ただし、ssh経由でマシンにログインして同じコマンドを実行すると、次のエラーが表示されます。

ben@base:~$ gsettings set org.gnome.desktop.background picture-uri file:///path/to/my/image.png

** (process:19940): WARNING **: Command line `dbus-launch --autolaunch=ca5602075c1f96df6beebf670000000b --binary-syntax --close-stderr' exited with non-zero exit status 1: Autolaunch error: X11 initialization failed.\n

** (process:19940): WARNING **: Command line `dbus-launch --autolaunch=ca5602075c1f96df6beebf670000000b --binary-syntax --close-stderr' exited with non-zero exit status 1: Autolaunch error: X11 initialization failed.\n

デスクトップをSSHで設定するにはどうすればよいですか?

1
bbrame

ヒントは_X11 initialization failed_です。グラフィックプログラムは、 '$ DISPLAY'環境変数を介してディスプレイ画面を見つけます。デフォルトでは、Sshは「$ DISPLAY」を伝播しません。_ssh -X_は、独自のXセッションを取得し、「$ DISPLAY」を設定します。しかし、それは答えではありません。おそらく、最初にサーバーで_xhost +inet:remotesystem_を実行していた場合... _man xhost_とSEE ALSO X(7), Xsecurity(7), Xserver(1), xdm(1), xauth(1),を参照してください

たくさんのmanページを読みたくなければ、あなたは失敗する運命にあると思います。

2
waltinator

構成を設定するディスプレイをgsettingsに指示する必要があります。 remoteシステムの設定を変更する可能性があるため、たとえばデフォルトの表示は次のようになります。

export DISPLAY=":0"
0
adam