1. 问题
Linux下安装GUI程序出现:
cannot connect to X server :0.0
2. 解释
X server是Linux系统上提供图形用户界面的服务程序。当客户端主机Client访问服务器Server上的图形程序时,需要Server对该Client赋能访问图形程序的权限。
3. 解决
给尝试访问图形程序的用户主机赋予xhost权限:
xhost +$HOSTNAME
本机的话使用$HOSTNAME,远程访问需要替换为该主机的IP,即可运行。
4. 真实再现
[root@FUTENG-CentOS bin]# ls
wiznote
[root@FUTENG-CentOS bin]# ./wiznote
No protocol specified
wiznote: cannot connect to X server :0.0
[oracle@FUTENG-CentOS bin]$ su root
Password:
[root@FUTENG-CentOS bin]# xhost +FUTENG-CentOS
FUTENG-CentOS being added to access control list
[root@FUTENG-CentOS bin]# su oracle
[oracle@FUTENG-CentOS bin]$ ls
wiznote
[oracle@FUTENG-CentOS bin]$ ./wiznote
[WIZAPI]api entry is empty, acquire entry...
[WIZAPI]acquire entry finished, url: "http://as.wiz.cn/wizas/xmlrpc"
set object: "folder" version: 0
[Syncing]logined...
[Syncing]start syncing folders...
[Syncing]upload folders...
5. 其他可能
还可能由于未将DISPLAY配置到环境变量上,可如下配置:
export DISPLAY=:0.0
6. 参考
http://stackoverflow.com/questions/646930/cannot-connect-to-x-server-0-0-with-a-qt-application
【TechTarget中国原创】X服务器为X Window System的分布式网络中连接到X终端的服务器。从终端用户的角度来看,X服务器相当于一个多视窗操作的服务器。实际上,X服务器应用程序提出客户请求,要求在各个终端运行视窗管理服务。X服务器(为X Window System的一部分)一般安置在大型机、小型机或者工作站中基于Unix的操作系统。
http://baike.baidu.com/view/2909526.htm
Nice :)