この記事は公開から3年以上経過しています。
Linuxのターミナルからsudoを使いroot権限でGUIアプリケーションを起動しようとすると「ディスプレイをオープンできません(Cannot open display)/接続を拒否されました(Could not connect: Connection refused)」のようなエラーが発生してアプリケーションを起動できないときの対応。
対応
以下のようにDISPLAY/XAUTHORITY変数設定後にアプリケーションを起動する。
LIGHTDMの場合:
sudo DISPLAY=:0 XAUTHORITY=/var/run/lightdm/root/${DISPLAY} /Path/To/Executable
※XAUTHORITY
はお使いの環境のディスプレイマネージャー(GDM/KDM/LXDM/LXDM/SDDM/SLIM等)によって変わります。設定内容については参考ウェブサイトのGary Macindoe氏のGitHubのコードが非常に役に立ちましたので宜しければご覧ください。
参考ウェブサイトなど
- archlinux wiki
X11vnc/GDM
以上です。