
複数のユーザーが使用するコンピューターに Ubuntu 14.04 を使用しています。次のように構成しました。
/etc/profile.d/all_users.sh
gsettings set org.gnome.Vino disable-background true
gsettings set org.gnome.Vino authentication-methods "['none']"
gsettings set org.gnome.Vino enabled true
gsettings set org.gnome.Vino icon-visibility 'client'
gsettings set org.gnome.Vino lock-screen-on-disconnect false
gsettings set org.gnome.Vino notify-on-connect true
gsettings set org.gnome.Vino prompt-enabled true
gsettings set org.gnome.Vino require-encryption false
gsettings set org.gnome.Vino view-only false
これはうまく機能します。すべてのユーザーはログイン時にこの設定を取得します。
問題は、このマシンに ssh するときです。次のようなエラーが発生します。
dconf-警告**: dconfへの変更をコミットできませんでした: X11 $DISPLAYなしではD-Busを自動起動できません
そこで、次の方法を知っている人がいたら教えてください。
- このマシンにSSH接続するときにprofile.dスクリプトを実行しないようにする
- profild.dスクリプトを設定して、それがsshスクリプトであることを検出し、スクリプトから戻るようにします。
どのような助けでも大歓迎です。
答え1
ユーザーが ssh でログインすると、$SSH_CLIENT が環境に設定されます。そのため、必要なのは設定をステートメントで囲むことだけですif
。
if [ "$SSH_CLIENT" ] ; then
# gsettings set ...
fi