ブート時のxhost設定


8

Fedoraのブート時にxhostを設定/etc/gdm/Init/Defaultして、たとえば次のように編集して追加できます。

/usr/bin/xhost +local:

Ubuntuではどのようにして同様のことができますか?私はそれが欲しい

/usr/bin/xhost +local:

システムがログインプロンプトに座っているときにコマンドが実行されます。

回答:


11

xhostコマンドを実行するには、アクティブXサーバを必要とし、それはたとえばときのために、ログイン画面で実行することができますlightdmロード。次/etc/lightdm/lightdm.confの行を編集して追加することで有効にできます。

display-setup-script=/home/user/bin/xhost.sh

サンプル/etc/lightdm/lightdm.confファイル:

[SeatDefaults]
greeter-session=unity-greeter
user-session=ubuntu
display-setup-script=/home/user/bin/xhost.sh

サンプル/home/user/bin/xhost.shファイル:

#!/bin/bash
xhost +

Ubuntu 12.04.1 LTSで動作し、Xを必要とし、Tomcat 6によって実行されるJavaアプリケーションを有効にするために必要でした。


1
xhost.shスクリプトを次のように実行可能にする必要があるかもしれません:chmod + x /home/user/bin/xhost.sh
George Litos

Xubuntu 18.04で動作しますが、スクリプトが@George Litosで述べたように実行可能であることを確認してください。そうしないと、システムが起動しません。
ホセ・トマスTocino

2

これは私のために働きました:

編集~/.xinitrc

export DISPLAY=":0.0"
xhost +
openbox

注:特定のセットアップでは、openboxのみを実行しています。通常、Ubuntuではそのファイルは空であるか欠落しています。私の推測では、「openbox」の行を削除すればそれはうまくいくと思いますが、今はそれをテストする方法がありません。動作しない場合は、ウィンドウマネージャーコマンドの最後の行を置き換えます。


1

~/.xinitrcUbuntu 14.04では動作しませんでしたが、次のように動作しまし~/.profileた。ログインごとに、GUI /ターミナル/ SSH / etc ...、スクリプトが実行されるため、リダイレクトstdoutして出力を無音にします。

xhost +local: > /dev/null


1

Ubuntu 17.10でも同じ問題が発生しました。システムが適切に構成されていなかった可能性があります。とにかく、私の場合、私は追加しました

xhost + SI:localuser:root > /dev/null

私の~/.bashrcファイルの下部にあり、それは働いた。これがセキュリティリスクかどうかはわかりません。他の誰かが同じ状況にある場合に備えて、特権Xサーバーのユーザーのリストにrootを追加しても問題ないことを確信しています。

こちらをお勧めしますhttp://ubuntuhandbook.org/index.php/2017/10/ubuntu-17-10-tip-graphical-apps-doesnt-launch-via-root-sudo-gksu/

最初にターミナルで直接テストできます:

$ xhost + SI:localuser:root
$ xhost -

2行目は、リスト内のユーザーのみがXサーバーにアクセスできることを確認します。次に、「管理者として編集」を試してください。ファイルを右クリックするか、直接実行してください。

$ pkexec gedit

これが機能しない場合は、〜/ .bashrcでコマンドを永続的にしても意味がありません。

より正確には、私は最初に実行しました

$ xhost

Xサーバーにアクセスできるユーザーを確認します。私はフォーマットがあったことを見たSI:localuser:dominicところdominic、私のログイン名です。そのため、同じ形式を使用しSI:localuser:rootrootユーザーを追加しました。


0

@GeorgeLitosの回答の変形を以下に示します。

  • /etc/lightdm/lightdm.confこれはシステムが所有するファイルであり、システムのアップグレードによって上書きされる可能性があるため、直接変更しないでください。代わりに、拡張ディレクトリを使用してください/etc/lightdm/lightdm.conf.d/。これは、他の設定をそこに複製する必要がないことも意味します。
  • 個別のシェルスクリプトは必要ありません。コマンドは構成ファイルに直接配置できます。

/etc/lightdm/lightdm.conf.d/xhost.conf次の内容のファイルを(ユーザーrootとして)作成するだけです。

[SeatDefaults]
display-setup-script=xhost +

これはUbuntu 16.04.5 LTSで動作します。


-1

ファイルを編集し/etc/rc.local(を使用sudo)、最後のコマンド(exit 0)の前にコマンドを追加します。


1
これは機能しません(私はそれでも試しましたが機能しません)。そのスクリプトには、最初はその設定を変更するためのアクセス権がないためです。lightdmユーザーとして実行する必要がありますか?
ユルテセン2012年

-1

次の行を追加します /etc/xdg/lxsession/LXDE/autostart

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