我将centos 6 minimal(无头)作为主机,并作为访客并使用KVM安装了ubuntu 14.04 Desktop。 在Guest中部署了一个Web应用程序,它在后台打开和关闭一个GTK应用程序(javafx)。 我通过ssh从我的主机调用这个Web应用程序为“curl http://guest/myapp/start” 我在Guest OS中观察了日志并看到错误消息“Gtk-WARNING **:无法打开显示”
我不明白这个错误的原因。 1)这个GTK应用程序没有在主机上的ssh控制台中物理打开任何窗口,而且它的背景。 2)访客是桌面版。
任何人都可以帮我解决这个问题。由于客户端的安全性要求,我无法启用XWindows。
谢谢, 斯里达尔
答案 0 :(得分:2)
当我们尝试使用需要打开窗口的ssh在远程计算机上执行某些命令时,会出现此警告。例如,考虑是否要使用git clone从远程存储库中提取代码。在这里你需要输入密码。但由于您在终端上使用ssh,因此无法打开新窗口。因此它抛出了这个警告。 您可以使用vnc作为解决方法,因为它可以打开任何新窗口
答案 1 :(得分:1)
这是在Gtk-WARNING **: cannot open display launching background GTK
处回答的我使用xvfb来解析它。
以下网址对我有很大帮助 http://www.installationpage.com/selenium/how-to-run-selenium-headless-firefox-in-ubuntu/
答案 2 :(得分:0)
您无法在没有显示器的情况下运行GTK +应用程序。
答案 3 :(得分:0)
“Gtk:无法打开显示”这意味着它无法找到与设备相连的显示器,因此如果您已连接显示器,则可以导出其地址。通常它将是0.0所以你的命令将像“export DISPLAY =:0.0”如果不起作用尝试将0.0更改为0然后它可以找到显示。可能此链接会有所帮助https://askubuntu.com/questions/47642/how-to-start-a-gui-software-on-a-remote-linux-pc-via-ssh
答案 4 :(得分:0)
在用户的终端(并且作为该用户不是 sudo 或 root),将 localhost 添加到 xhost 权限。输入
$ xhost +localhost
这允许 system-config-printer 运行。