在 Linux 下安装配置 VNC

来源:互联网 发布:纬创软件科技有限公司 编辑:程序博客网 时间:2024/05/17 02:37

VNC 全称为 Virtual Network Computing,是一个桌面共享系统。它的功能,类似于windows中的远程桌面功能。VNC使用了RFB(Remote FrameBuffer,远程帧缓冲)协议来实现远程控制另外一台计算机。它把键盘、鼠标动作发送到远程计算机,并把远程计算机的屏幕发回到本地。

    VNC技术与平台无关,VNC Viewer可以和VNC Server在不同的操作系统上。VNC几乎支持所有的操作系统,也支持Java,甚至可以通过支持Java的浏览器来访问VNC Server。多个VNC客户端可以同时连接到一个VNC Server上。

    安装配置:

    1.检查VNC客户端和服务器端是否已经安装

    执行如下命令:rpm -q vnc vnc-server

    如果返回类似如下信息:

    package vnc is not installed

    vnc-server-4.0-8.1

    则说明系统已经默认安装了vnc服务器端(一般来说,系统都默认安装了vnc server)。

    2. 将用户名加入到配置文件中

    使用如下命令编辑配置文件,添加帐户信息:

    vi /etc/sysconfig/vncservers

    做如下修改:

    #

    # Uncomment the line below to start a VNC server on display :1

    # as my ’myusername’ (adjust this to your own).   You will also

    # need to set a VNC password; run ’man vncpasswd’ to see how

    # to do that.

    #

    # DO NOT RUN THIS SERVICE if your local area network is

    # untrusted!   For a secure way of using VNC, see

    # 〈URL:http://www.uk.research.att.com/vnc/sshvnc.html〉.

    # VNCSERVERS=“1:myusername“

    # VNCSERVERS=“1:gavin 2:john“ # use the method for more user

    VNCSERVERS=“1:oracle 2:root“

    VNCSERVERARGS[1]=“-geometry 800x600“

    VNCSERVERARGS[2]=“-geometry 800x600“
    设置多用户选项
     步骤三:将root用户下的路径复制到oracle用户的home路径下,并修改路径所属用户及组:
        cp -r /root/.vnc ~oracle/.vnc
        chown oracle ~oracle/.vnc/
        chown oracle.oinstall -R ~oracle/.vnc/
        chown oracle ~oracle/.vnc/*
        chown oracle.oinstall -R ~oracle/.vnc/*


    3.设置 oracle root用户的密码

    使用如下命令设置密码:vncpasswd

    当提示Verify时,再次输入密码确认。

    4.启动VNC服务

    使用如下命令启动VNC SERVER: /sbin/service vncserver start

    当显示如下信息时,表示启动成功:

    Starting VNC server: 2:root [OK]

    5.修改VNC SERVER的窗口管理器

    vnc server默认使用的窗口管理器是twn,这是一个非常简单的窗口管理器,我们可以改成常用的GNOME或者KDE。

    先使用如下命令进入用户的home目录:

    cd ~/.vnc

    编辑启动项:

    vi xstartup

    按照如下方式修改启动项:

    #!/bin/sh

    # Uncomment the following two lines for normal desktop:

    unset SESSION_MANAGER

    exec /etc/X11/xinit/xinitrc

    [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup

    [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources

    xsetroot -solid grey

    vncconfig -iconic &

    xterm -geometry 80x24+10+10 -ls -title “$VNCDESKTOP Desktop“ &

    gnome-session &     #以GNOME作为VNC的窗口管理器

    #startkde &                 #kde desktop

    #twm &                        #注掉系统默认的窗口管理器

    6.重启VNC SERVER

    /sbin/service vncserver restart

    当系统提示如下信息时,表示重启成功:

    Shutting down VNC server: 2:root  [OK]

    Starting VNC server: 2:root     [OK] 

    windows登录到VNC SERVER

    1.从IE登录

    直接从IE浏览器中输入如下地址:

    http://xxx.xxx.xxx.xxx:5802

    输入密码即可使用。

    2.从VNC view登录

    在windows上安装vnc view,然后输入xxx.xxx.xxx.xxx:2,连接登录,输入密码即可。

    备注:如果从vnc view登录时,提示connection refused(10061),则是因为linux防火墙的问题,
登录centos系统,选择System--〉Preferences--〉Remote Desktop,
勾选sharing中的两项,Security两项不勾,点击关闭,然后再重新用vnc view登录即可。
另外的方法:
 以上是桌面号的配置文件。

           我在此配置几个桌面和用户:

           VNCSERVERS="1:root"

           VNCSERVERARGS[1]="-gemometry 1024X768 -nolistern tcp -nohttpd" 

           VNCSERVERS="2:mr-ma"

           VNCSERVERARGS[2]="-gemometry 1024X768 -nolistern tcp -nohttpd"

            这样VNC将启动多个桌面,每个桌面互不干扰。

           VNC使用的端口起始号码为:5900 ,当桌面号为1时端口为5901.以此类推。

            设置防火墙:

            iptables -I INPUT -p tcp --dport 5901:5902 -j ACCEPT

            iptables -I INPUT -p udp --dport 5901:5902 -j ACCEPT   

            我配置了2个桌面,所以防火墙如上所设置。    

        (4)启动相应的桌面 和关闭相应的桌面

              vncserver :1

              vncserver  :2

              vncserver -kill :1

              vncserver -kill  :2