VNC简介:
VNC(Virtual Network Computing)中文名称为虚拟网络计算机,VNC使用的通信协议RFB(Remote Fram Buffers)是一个开放协议,一种在本地系统上显示远程计算机整个“桌面”的轻量型协议,其采用了GPL授权条款(也就是说它是一个开放源代码的软件),任何人都可免费取得该软件。VNC与Symantec公司的pcAnywhere可以实现类似的功能,但是VNC与其他远程软件不同的是跨平台性,即VNC可以在各种流行的操作系统间实现远程控制,如Unix系列(Unix,Linux,Solaris等),windows及MacOS。
VNC软件主要由两个部分组成:VNC server及VNC viewer。用户需先将VNC server安装在被控端的计算机上后,才能在主控端执行VNC viewer控制被控端(如果操作的主控端计算机没有安装VNC viewer,也可以通过一般的网页浏览器来控制被控端)。
整个VNC运行的工作流程如下:
(1) VNC客户端通过浏览器或VNC Viewer连接至VNC Server。
(2) VNC Server传送一对话窗口至客户端,要求输入连接密码,以及存取的VNC Server显示装置。
(3) 在客户端输入联机密码后,VNC Server验证客户端是否具有存取权限。
(4) 若是客户端通过VNC Server的验证,客户端即要求VNC Server显示桌面环境。
(5) VNC Server通过X Protocol 要求X Server将画面显示控制权交由VNC Server负责。
(6) VNC Server将来由 X Server的桌面环境利用VNC通信协议送至客户端,并且允许客户端控制VNC Server的桌面环境及输入装置。
我的操作环境是:被控端CentOS 5.2, 主控端Windows XP。
默认情况下已经安装了VNC:
[root@localhost /]# rpm -qa|grep vnc
vnc-server-4.1.2-9.el5
vnc-4.1.2-9.el5
1、在CentOS上启用vncserver
[root@localhost ~]#vncserver
You will require a password to access your desktops.
Password: (第一次启动时,VNC要求输入远程控制时的密码)。
Verify: (确认密码)
Creating default startup script /root/.VNC/xstartup
Starting applications specified in /root/.VNC/xstartup
Log file is /root/.VNC/Linux:1.log
(到此已启动了 VNC Server 。如果你想要更改 VNC Server 的密码,只要执行 vncpasswd 命令即可。)
2、 从浏览器远程遥控。
启动
VNC Server
后直接打开浏览器,在地址栏中输入被控端的网址或
IP
地址,并在网址后加上
“
:
5800
+显示编号
”
的端口号即可操控该计算机。
例如:[url]http://192.168.0.1:5801[/url]
(
如果显示编号为
1
,一般第一次设置的显示编号都是
1
,就用
5800
+
1
=
5801
。
)
如果看到窗口,就说明你成功,在密码框输入密码,就能远程控制了。
Q. 如何以图形界面登录被控端?
[root@localhost ~]#vi ~/.vnc/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 & (建议选这个,其他的都给它前面加上#)
#startkde &
#twm &
gnome-session是启动Gnome图形界面;startkde是启动KDE图形界面;twm是启动文本界面。三者选其一。
Q. 如何开机时自动启动VNC服务
打开“系统设置”-->"服务器设置"-->"服务",勾选上VNCserver,“保存”。
修改 /etc/sysconfig/vncservers
VNCSERVERS="1:root 2:phred 3:sysadmin" 1代表“桌面1”,root代表用户名;可同时启动多个用户桌面
VNCSERVERARGS[1]="-geometry 800x600 -alwaysshared -depth 24"
-alwaysshared代表允许多用户同时登录 -depth代为色深,参数有8,16,24,32。
Q.为什么连接后,不能显示桌面,而只有一个Terminal窗口?
试着修改~/.VNC/xstartup,把最后一行 twm& 改成 gnome-session& or kde&(据说KDE在目前的VNC Viewer上的表现不太稳定)
转载于:https://blog.51cto.com/garynic/143097