查看: 2232|回复: 25

打造linux的远程桌面-vnc服务

[复制链接]
发表于 2013-1-29 11:58:07 | 显示全部楼层 |阅读模式

在对linux主机进行管理时,尽管很多时候并不需要图形界面,但是在一些特殊的场合,如动态监控,采用OUI通用安装oracle时候图形界面是必须要展示出来的。但是囿于数据库服务器一般都在标准的数据中心机房,想要身临其境地接上vga线缆来展示图形界面便太费周折。这时,我们就怀念windows下的远程桌面了,如果linux也有远程桌面的话这就解决问题了。linux当然也有同样的功能,这就是vnc服务(virtual network computing)。配置好vnc服务后,客户端的计算机有2种方式展开主机的桌面,第一种就是使用vncview客户端软件进行连接。另一种方式是使用浏览器直接访问主机的iP和端口。第二种方式需要java环境的支持。下面我就分别两种方式展示下vnc的配置和使用。

一,服务端配置。

1,安装vnc软件包。

      [root@localhost Server]# rpm -ivh vnc-server-4.1.2-9.el5.i386.rpm
warning: vnc-server-4.1.2-9.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing...                ########################################### [100%]
        package vnc-server-4.1.2-9.el5 is already installed

    安装好之后我们可以通过使用[root@localhost Server]# man vncserver 来查看具体的配置方    式。这里把vnc的配置原理说下:

           $HOME/.vnc/xstartup :这个脚本文件存在于每个用户下,这个文件包含了vnc运行的参 数,一会儿我们会对这个文件进行编辑,将vnc默认显示的图形改成我们熟悉的gnome或者kde模式。

           $HOME/.vnc/passwd  :这个脚本文件和参数文件一起。记录了vnc登录的密码。

           $HOME/.vnc/host:display#.pid :当vnc启动后,这个文件便指明了vnc执行的x桌面的ID,如在第一个x桌面下便是 $HOME/.vnc/127.0.0.1:1.pid。当我们要关闭这个x桌面,我们使用vncserver -kill : 1

2.启动VNC服务

     启动vnc的服务很简单,如果要启动第一个x桌面。在当前用户的shell下输入vncserver :1

[lion@localhost ~]$ vncserver :1

You will require a password to access your desktops.

Password:
Password must be at least 6 characters - try again
Password:
Verify:
A VNC server is already running as :1

这里,密码也要求至少6个字符。vnc服务启动成功,这里我们查看下后台的开放的端口号

[lion@localhost ~]$ netstat -tupln

tcp        0      0 0.0.0.0:5801                0.0.0.0:*                   LISTEN      -                  


tcp        0      0 0.0.0.0:5901                0.0.0.0:*                   LISTEN      -                  
   这里我们看到了建立了2个端口,分别是TCP的5801和TCP的5901。这里我们使用客户端的IE浏览器连接。5901指的是服务端的监听端口,5801指的是web访问时使用的监听端口号。打开防火墙,如果使用了防火墙功能则执行下面的命令[root@localhost ~]# iptables -I INPUT -p tcp --dport 5901 -j ACCEPT
[root@localhost ~]# iptables -I INPUT -p tcp --dport 5801 -j ACCEPT3.修改配置文件。尽管服务可以启动,但是如果不修改配置文件只有root用户可以通过vnc访问主机。这里我们对配置文件进行修改,文件 /etc/sysconfig/vncservices 这里添加进去希望使用vnc服务的用户[lion@localhost ~]$ su - root
Password:[root@localhost ~]# cp /etc/sysconfig/vncservers /etc/sysconfig/vncservers.bak [root@localhost ~]# vi /etc/sysconfig/vncservers修改#vncservers 选项,注意#符号不是注释改动后的那一行:# VNCSERVERS="1:root 2:lion"  表示root,和lion用户均可以访问。修改后重启服务 [root@localhost ~]# /etc/init.d/vncserver stop
Shutting down VNC server: [  OK  ]
[root@localhost ~]# /etc/init.d/vncserver start
Starting VNC server: no displays configured [  OK  ]4。修改默认的显示选项,改成我想要的KDE,或者GNOME桌面。我想要在lion用户下建立vnc服务,这时我要进入lion的家目录修改。[lion@localhost ~]$ cd ~
[lion@localhost ~]$ cd .vnc[lion@localhost .vnc]$ cp xstartup xstartup.bak
[lion@localhost .vnc]$ vi xstartup(1)修改为KDE模式:#twm &              **注释掉默认的twm方式
gnome-session  &          **添加的一行,启动以KDE方式。修改后重启服务。(2)修改为gnome模式
#twm &              **注释掉默认的twm方式
startkde &          **添加的一行,启动以gnome方式。   之后,进入lion用户,我要在lion用户下启用vnc。[root@localhost ~]# su - lion
[lion@localhost ~]$ vncserver :1
A VNC server is already running as :1使用vnc 方式,以web方式是访问580x端口。使用vncview直接使用:x即可。


发表于 2013-1-29 21:10:23 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2013-2-5 23:16:54 | 显示全部楼层
感谢党和人民的关爱~~~  
发表于 2013-2-12 08:25:09 | 显示全部楼层
你喜欢贴子还是发贴子的人  
发表于 2014-10-8 19:56:07 | 显示全部楼层
不错啊! 一个字牛啊!  
发表于 2014-11-17 12:54:14 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
发表于 2014-12-4 22:43:23 | 显示全部楼层
不要等到人人都说你丑时才发现自己真的丑。  
发表于 2014-12-28 03:16:43 | 显示全部楼层
呵呵,等着就等着....  
发表于 2015-1-28 00:08:18 | 显示全部楼层
希望大家帮我把这个帖发给你身边的人,谢谢!  
发表于 2015-3-1 23:13:30 | 显示全部楼层
谁能送我几分啊  
高级模式
B Color Image Link Quote Code Smilies

本版积分规则