Linux VNC
周绪宏
概述
网络遥控技术是指由一台计算机(主控端)去控制另一台计算机(被控端),而且当主控端在控制被控端时,就如同用户在被控端前操作一样,可以执行被控端的应用程序等。
VNC(Virtual Network Computing)是一套由AT&T实验室所开发的可操控远程的计算机的软件,其采用了GPL授权条款,任何人都可免费取得该软件。VNC软件主要由两个部分组成:VNC server和VNC viewer。用户需先将VNC server安装在被控端的计算机上后,才能在主控端执VNC viewer控制被控端。
VNC server与VNC viewer支持多种操作系统,如Unix系列(Unix,Linux,Solaris等),windows及MacOS。因此可将VNC
server 及VNC viewer分别安装在不同的操作系统中进行控制。如果目前操作的主控端计算机没有安装VNC
viewer,也可以通过一般的网页浏览器来控制被控端。
整个VNC运行的工作流程如下:
(1) VNC 客户端通过浏览器
或VNC Viewer连接至VNC Server。
(2) 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的桌面环境及输入装置。
一般情况下服务器上运行Linux,多用户登录到Linux,如果用户不大喜欢使用文本模式,可通过使用VNC 客户端连接到VNC Server 得到一个图形终端。 使用自己的帐号来运行vncserver命令,这样可以做到同时有多个用户登录图形终端,同时一个图形终端编号只能有一个用户登录。
配置
这里介绍Linux VNC Server的安装, Redhat 及Fedora 一般都自动安装了VNC Server,只要在服务列表中选中启动一下就可以了。
安装VNC Server
使用VNC时首先查询vnc-server是否安装,如果未安装,从网上下载vnc-server的最新版本安装。
$ rpm -qa
| grep vnc
vnc-server-4.1.2-3.fc6
vnc-4.1.2-3.fc6
# rpm –ivh
vnc-server-4.0-0.rpm
创建VNC Server配置文件
每个用户在配置自己的VNC配置文件时,要现在自己的目录下建立.vnc目录,然后在此目录下创建配置文件xstartup。
$ mkdir
.vnc
$ cd .vnc
$ vi
/home/hongdy/.vnc/xstartup
# 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 &
gnome-session
// 启动gnome桌面
#startkde
// 启动kde桌面
$ chmod a+x
xstartup // 给文件加上可执行权限
配置Linux
VNCServer时,最好关闭防火墙,否则客户端可能会连接不上。
#
/etc/rc.d/init.d/iptables stop // 关闭防火墙命令
启动VNC Server
创建好VNC Server配置文件后可运行vncserver新建一个图形终端。
$ vncserver
//
启动 VNC Server
passwd:
//
如果此用户第一次运行VNC
Serverr则要求输入连接的密码
verify:
New 'server1.linux:4 (hongdy)' desktop is server1.linux:4
Starting applications specified in /home/ hongdy/.vnc/xstartup
Log file is /home/ hongdy/.vnc/server1.linux:4.log
这段话表示启动了一个图形终端,编号为4。要记住这个编号,等下登录时需要提供这个编号。
用户也可以在启动VNC
Server时指定图形终端编号,当然此编号必须是其他用户未使用。
设置VNC Server访问密码
设置当前用户的VNC
Server的密码,使用vncpasswd命令
终止VNC Server
启动VNC Server时启动了一个新进程,此用户的连接都通过这个进程来完成,要终止这个图形终端,停止这个进程即可。
$
vncserver -kill :4
// 数字表示图形终端编号。
登录使用
1.3.1 在Linux上运行VNC Viewer
如果是Linux的系统,直接使用vncviewer命令登录连接vnc-server
#
vncviewer xx.xx.xx.xx:4 ; // 连接方式是ip地址:编号,这里的编号是4
会弹出一个对话框,要求输入密码,如果密码正确,就会出现图形终端了。
1.3.2 在Windows上运行VNC Viewer
如果windows没有安装VNC Viewer,可从