突然のgksuのすべてが私のために動作しなくなりました:
~$ gksu gparted
(gpartedbin:24252): Gtk-WARNING **: cannot open display: :0
gparted-pkexec
でも同じことが起こります:
~$ gparted-pkexec
No protocol specified
(gpartedbin:25454): Gtk-WARNING **: cannot open display: :0
何がこれを引き起こしているのでしょうか?
私はこれをSSHまたはVNCで実行していません。これはnormal端末ウィンドウのlocalhostです
Ubuntu 17.10以降を実行している場合、この問題はWaylandを完全にサポートするようにアプリケーションが更新されていないときに発生する可能性があります。アプリケーションが更新されるまでの回避策として、次を実行できます。
xhost +SI:localuser:root
root
ユーザーがデスクトップにアプリケーションを表示できるようにします。他の考えられる回避策については、このQ&Aも参照してください: なぜgksu/gksudoを使用しないか、Sudoでグラフィカルアプリケーションを起動しないでWaylandを使用しますか?
ターミナルでxhost +localhost
を実行してから、コマンドを再度実行してください。これにより、システム(つまり、root)上のすべてのユーザーが画面上のウィンドウを開くことができます。単純に+ではなく、+ localhostを使用してください。どこからでもよりもlocalhostのみからの接続を許可する方が安全です。
これを永続的にするには、次のように~/.xinitrc
ファイルを編集します。
gedit ~/.xinitrc
を実行します
ファイルを次のように編集します(最初は空である必要があります)。
#! /bin/bash
xhost +localhost &
ここでファイルを保存し、ログアウトしてログインします。これで、すべてがSudoで問題なく実行されるはずです。
14.04に問題を再現することはできませんが、これは過去にSudo/gksuがこのエラーをスローしたときに機能していました。
ソース:
ターミナルで次を実行します。
nano /home/user/.bashrc # user = name of your user
最後に次の行を追加します。
export XAUTHORITY=$HOME/.Xauthority