您的位置:首页 > 运维架构 > Linux

vnc服务故障处理

2008-06-04 17:33 357 查看
上午攀枝花项目组打电话过来,告知中间件服务器主机重启之后,无法用vnc客户端连接。

没用过这个东东,赶紧查了一下资料,开始排除故障,改主机操作系统为redflag linux -64bit:

用root telnet到主机之后,首先查看vnc服务的状态: service vncserver status,显示关闭状态,启动vnc服务:vncserver,再检查状态,为正在运行中,启动成功。

检查vnc端口启动情况:netstat -alp | grep Xvnc,结果显示5801,5901,6001端口正常启动。运行 telnet localhost 5801,连接成功。

怀疑为linux防火墙问题,执行iptables -I INPUT -p tcp --dport 5901 -j ACCEPT 和
                                                     iptables -I INPUT -p tcp --dport 5801 -j ACCEPT
 设置允许TCP协议相应的端口连接通过防火墙。

但此时vnc客户端还是无法连接,由于客户端连接的是桌面2,重启vnc桌面2的服务,root用户运行两个命令:vncserver -kill :2 ,vncserver :2,客户端可以连接,但是只有一个terminal终端,无法显示图形桌面。

原来vnc服务与客户端的用户关联,vnc客户端用的哪个用户登陆,服务端相应的需要这个用户启动对应的vnc服务,由于该项目的客户端配置为weblogic用户登陆(配置文件在/etc/sysconfig/vncserver中),本配置文件中的对应配置为:VNCSERVER="2:weblogic",表明客户端以weblogic用户通过桌面2访问服务器,马上su到weblogic用户下,整执行这两个命令:vncserver -kill :2 ,vncserver :2,此时vnc客户端终于可以正常连接到图形桌面上了。

另,我在进行此实验的同时,在本机的linux中也同时进行实验,vnc客户端也无法进入图形桌面,查阅网上的资料,很多文章都说在xstartup文件的最后一行,将twm改为gnome-session(配置文件在/home/weblogic/.vnc/xstartup,如果为root用户,该文件路径为/root/.vnc/xstartup),但测试之后并未成功,最后将该文件的unset SESSION_MANAGER和exec /etc/X11/xinit/xinitrc这两行保留,其他行都屏蔽,搞定。

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息