所以,事情是这样的,由于某种原因,我现在无法从终端打开图形应用程序,令我好奇的是,我可以从键盘快捷键启动 gedit(例如)(我得到的是 Ctrl + Alt + G),但是从终端,我收到此错误:
Unable to init server: Could not connect: Connection refused`
(gedit:6690): Gtk-WARNING **: 22:38:15.851: cannot open display: 1
我尝试了从互联网上找到的一些东西: xhost + 这是为了(如果我理解得好的话)允许所有应用程序启动图形服务器,但它输出:
xhost: unable to open display "1"
我不知道为什么会收到此错误,因为一小时前我还可以从终端启动图形应用程序。因此,任何帮助都将不胜感激:)
附言:我尝试从终端启动的所有应用程序都会发生此错误
答案1
通常情况DISPLAY=:0
下,不是这样,而是DISPLAY=:1
运行以下命令来查看是否是这个问题。
DISPLAY=:0 gedit
如果有效,您可以通过运行以下命令使其永久生效:
export DISPLAY=:0
导出正确的 DISPLAY 变量后,您可以正常从终端启动图形应用程序:
gedit
答案2
我发现了问题,问题是我禁用了我的显示管理器(lightdm),因为它不允许我登录(循环登录),我认为这是它的唯一功能。
但是当我再次重新配置 lightdm 时,我可以从终端启动 gedit 而不会出现问题,所以从技术上讲我确实解决了我的问题,但现在我遇到了其他问题,那就是当 ubuntu 启动时如何直接显示控制台登录而不是图形登录。
但我稍后会尝试解决它...
无论如何谢谢你@mchid :)
答案3
您是否有可能以个人用户身份登录,然后在终端窗口中执行了“su”或“sudo su”之类的操作?然后桌面将归您所有,但您正尝试以 root 身份运行该应用程序。您将收到有关显示器的错误,因为 root 不拥有该显示器。使用“xhost +”是正确的,但您需要在使用“su”更改身份之前执行该操作。