XとUnityを実行せずにgsettingsを変更する


13

Ubuntu 12.10でgconf設定を変更しようとしています。lightdm greeterの背景を変更したいと思います。

Xサーバーの実行中にユーザーとしてUnityにログインしているときに、次の方法でこれを実行できることを発見しました。

sudo xhost +SI:localuser:lightdm
gsettings set com.canonical.unity-greeter background "'/usr/share/backgrounds/micros-background.png'"

問題は、Xの下でユーザーとしてログインする必要があることです。そのため、ウィンドウマネージャー全体を実行する必要があります。しかし、Xサーバーを実行せずにchrootを使用してこれらの設定を変更したいと思います。完全なウィンドウマネージャを実行せずに、パーティションをマウントしてgsettingsを変更したいだけです。

XとUnityにログインせずにgsettingsを直接変更する方法はありますか?

または代わりに...モニターにフルウィンドウディスプレイを表示せずに変更を加えることができるように、XサーバーとUnityをバックグラウンドで起動する方法はありますか?

回答:


17

以下を使用してX11なしで実行することが可能です。gsettingsdbus-launch --exit-with-session

dbus-launch --exit-with-session gsettings set com.canonical.unity-greeter background "'/usr/share/backgrounds/micros-background.png'"

これありがとう!私はこのように記録されていない別のユーザーのためのセットの設定にこれを使用sudo -u "username" dbus-launch --exit-with-session gsettings set org.gnome.settings-daemon.plugins.power lid-close-ac-action 'nothing'
HarlemSquirrel

5cdhnが提案する行の前にsudoを追加すると、ルートのdconfを編集できます(dconf-editorとgsettingsをsudo / gksuで使用すると、このエラーがスローされます)。これを行う別の方法は、Paco Porrasが示唆するように、「sudo / gksu dbus-launch gsetttnigs / dconf-editor」を使用することです。
Que Quotion

現在実行中のセッションがある場合、これは機能していないようです。たとえば、キーボードのプラグを抜くときのキーボードレイアウトを変更したい。dbus-launchを使用しても、udevスクリプト内でgsettingsを実行しても、現在実行中のセッションの設定は適用されません。
ベンデイビス

これをテストしようとすると、「プロトコルが指定されていません」。
realkstrawn93

-1

「gsettings」コマンドの前に「dbus-launch」という単語を付ける必要があると言う人もいますが、私は試していません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.