分类: LINUX
2013-07-24 15:15:34
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.[root@node1 ~]# vncserver 配置vnc密码 同时会自动生成.vnc文件
3.将用户名加入到配置文件中
使用如下命令编辑配置文件,添加帐户信息:
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
# 〈〉.
# 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/*
4.设置 oracle root用户的密码
使用如下命令设置密码:vncpasswd
当提示Verify时,再次输入密码确认。
5.启动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 & #注掉系统默认的窗口管理器
7.重启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浏览器中输入如下地址:
输入密码即可使用。
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
[root@node1 ~]# vncserver :1 ----------------------对应于:
A VNC server is already running as :1
[root@node1 ~]# vncserver :2 ---------------------对应于:
A VNC server is already running as :1
A VNC server is already running as :2 ---------------------。。。。。。5803
[root@node1 ~]# vncserver :3
A VNC server is already running as :3
[root@node1 ~]# vncserver :4
New 'node1:4 (oracle)' desktop is node1:4
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/node1:4.log