我无法以root用户身份启动任何 GUI 应用程序:
# pgrep -lf Xorg
1590 /usr/bin/Xorg -br -nolisten tcp :0 vt7 -auth /var/lib/xdm/authdir/authfiles/A:0-PNnJzp
# echo $DISPLAY
:0
# xeyes
No protocol specified
Error: Can't open display: :0
# firefox
No protocol specified
No protocol specified
Error: cannot open display: :0
# xcalc
No protocol specified
Error: Can't open display: :0
#
Run Code Online (Sandbox Code Playgroud)
发行版为 openSUSE 11.2(2.6.31.5-0.1-default),X.Org X Server 版本为 1.6.5。我的 DISPLAY 变量设置正确,不是吗?任何想法可能导致这个问题?
Dav*_*e C 11
:0 应该像 :0.0 (正常默认) 和 localhost:0 等一样工作。权限很可能是问题。
尝试禁用 xhost: xhost +
(这不太可能奏效,但比以下操作更容易,如果没有,则需要这样做)。
因此,如果失败,则可能是 xauth。
按照此处的第一个答案进行操作:
如何使用 xauth 在 linux 上通过其他用户运行图形应用程序 | 服务器故障
将登录到 X 的用户的 xauth 密钥添加到 root 用户。