摘要:linux环境下,利用VNC连接远程桌面是经常用到的。这里,我们介绍centos上,利用VNC连接远程桌面的方法和常见的两个问题的解决方法1)由于字体问题,导致VNCserver无法启动 2)由于防火墙问题,导致开启VNCserver以后,无法在VNCviewer连接过来。
本文来源:http://blog.csdn.net/trochiluses/article/details/10946181
注意相关软件源的查找:
[root@xen ~]# rpm -qa|grep tigervnc
tigervnc-1.0.90-0.17.20110314svn4359.el6.x86_64
tigervnc-server-1.0.90-0.17.20110314svn4359.el6.x86_64
如果没有就安装下了
[root@xen ~]# yum install tigervnc tigervnc-server
添加启动项
[root@xen ~]# chkconfig --add vncserver
[root@xen ~]# chkconfig vncserver on
[root@xen ~]# vncserver
Creating default startup script /root/.vnc/xstartup
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/xen:1.log
会在当前用户主目录下 生成 .vnc 目录和配置文件
[root@xen ~]# vncpasswd
Password:
Verify:
设置的密码保存在 /root/.vnc/passwd
1)gnome桌面显示
修改 xstartup 文件 把最后的 twm & 删掉 加上 gnome-session &
编辑/root/.vnc/xstartup,
vi /root/.vnc/xstartup
2)修改监听端口号、是否禁止远程监听和tcp监听
所以要修改 /etc/sysconfig/vncservers 文件添加以下内容
3)启动主机的多用户登录模式
这样修改后,就算 /etc/inittab 启动模式为 3 也可以正常进入图形界面
Log file is /root/.vnc/xen:2.log
1)由于防火墙,导致外部无法连接远程桌面
出错信息:
vncviewer: ConnectToTcpAddr: connect: No route to host
Unable to connect to VNC server
解决方法:启动完毕后使用netstat -nat查看监听端口(默认为5901,5902,5903等),如果开启了防火墙,则需要配置规则允许对应端口tcp包通过。
iptables -I INPUT 1 -p tcp --dport 5901 -j ACCEPT(其中-I INPUT 1代表插入一条规则,这条规则的位置是1,详情请查阅iptables相关配置)
原来可以发现,iptables有以下的配置(使用命令iptables -L):
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:5902
ACCEPT tcp -- anywhere anywhere tcp dpt:5901
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:bootps
ACCEPT tcp -- anywhere anywhere tcp dpt:bootps
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT icmp -- anywhere anywhere
ACCEPT all -- anywhere anywhere
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
其中domain端口提供的是域名解析服务;从这里可以看出,如果我们不添加前面两条规则,远程桌面就没法链接
2)字体问题导致无法启动vncserver
出错提示:WARNING: the first attempt to star Xvnc failed,possibly because the font catalog is not properly configured, attempting to determine an appropriate font path
for this system and restart Xvnc using that font path ...
解决方法:
a.查看需要更新的字体:yum list updates | grep font
b.将上一步中需要更新的字体都安装
3)其他相关的包缺失
启动时候,出错提示:
/usr/bin/Xvnc: symbol lookup error: /usr/bin/Xvnc: undefined symbol:
pixman_composite_trapezoids
解决方法:
yum install pixman pixman-devel libXfont -y
外部参考:
[1]http://stonebird.blog.51cto.com/1651861/942945
[2]http://www.cnblogs.com/zhangxiaodong/archive/2013/03/29/2989495.html