无法连接到 x 服务器错误

无法连接到 x 服务器错误

我有一个相机应用程序,我正尝试在 sudo 下运行:但我收到此错误

cannot connect to x server

问题是当我不使用 sudo 时,程序可以正常打开。但是,该应用程序的某些部分仍然需要管理员权限。

因为它是一个 GUI 应用程序,我尝试使用 gksudo,然后它会打开一个窗口询问密码,但是输入密码后应用程序返回并且 GUI 没有打开!

我也尝试过

sudo xhost local:root

并得到:

xhost: unable to open display""   

我正在使用 lubuntu 14.04

答案1

这个答案就像是一门杀兔子的大炮,但是如果你sudo对 X 应用程序感兴趣的话这就是你所需要的。

解决方案:

添加到您的~/.bashrc

# Fabby: 2014-11-14: http://askubuntu.com/questions/571116/
# to allow forwarding of xauth keys between users when calling su
# needs to be the last line
export $(dbus-launch)

说明:

  • 你知道 X 服务器是什么吗?好!
  • 您知道它有客户端/服务器技术吗?好!
  • 你知道什么是 D-Bus 吗?好!
  • 好了,现在 dbus-launch 变量已导出,因此来自一个用户会话的 x 条消息可以使用其他用户的会话!简单明了!

答案2

我使用 SecureCRT 作为 ssh 工具,但它无法在 Windows 操作系统的本地主机上显示一些图表。使用 Canopy 时我也遇到了同样的问题。

解决方案:

  1. 安装Xmanager,运行Xmanager Passive。
  2. 在 ~/.bashrc 中添加“export DISPLAY=your ip:0.0”,source ~/.bashrc(ip 是您的主机 IP,您想要在此显示图表或类似内容。如果您使用的是 Windows,请输入 cmd-ipconfig,找到您的 IP)。
  3. 测试(即 $xclock,您可以在 Windows 屏幕上看到一个时钟)或直接测试您自己的 GUI 应用程序。

完毕!

相关内容