注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 用了十年的QQ号,第二次被..
 帮助

Linux vnc


2008-05-12 22:12:08
 标签:Linux vnc   [推送到技术圈]

版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://zxuhong.blog.51cto.com/368977/76637
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Linux VNC
 
周绪宏
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

1.1 VNC概述

网络遥控技术是指由一台计算机(主控端)去控制另一台计算机(被控端),而且当主控端在控制被控端时,就如同用户在被控端前操作一样,可以执行被控端的应用程序等。
 
VNCVirtual Network Computing)是一套由AT&T实验室所开发的可操控远程的计算机的软件,其采用了GPL授权条款,任何人都可免费取得该软件。VNC软件主要由两个部分组成:VNC serverVNC viewer。用户需先将VNC server安装在被控端的计算机上后,才能在主控端执VNC viewer控制被控端。
 
VNC serverVNC viewer支持多种操作系统,如Unix系列(UnixLinuxSolaris等),windowsMacOS。因此可将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命令,这样可以做到同时有多个用户登录图形终端,同时一个图形终端编号只能有一个用户登录。
 
 

1.2 VNC Server配置

这里介绍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时指定图形终端编号,当然此编号必须是其他用户未使用。
$ vncserver : 2
 
 
设置VNC Server访问密码
设置当前用户的VNC Server的密码,使用vncpasswd命令
$ vncpasswd
 
 
终止VNC Server
启动VNC Server时启动了一个新进程,此用户的连接都通过这个进程来完成,要终止这个图形终端,停止这个进程即可。
$ vncserver -kill :4                // 数字表示图形终端编号。
 
 

1.3 VNC Viewer登录使用

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,可从 http://www.realvnc.com/cgi-bin/download.cgi
下载vnc-4_1_2-x86_win32_viewer.exe及更新版本的软件。
 
运行 VNC Viewer,在"Connection details"对话框中的"VNC server"文本框中输入VNC ServerIP地址(或主机名及显示装置编号,(在Linux上启动VNC server的这一行,New 'X' desktop is linux:4 得到此信息),例如:192.168.0.14(冒号后面的4是执行VNC Server生成的显示装置编号),单击"OK"按钮后,VNC Server即会开始检查所输入的信息,若是信息错误,系统会出现"Failed to connect to server"的错误信息:若是信息正确,则会接着出现"VNC Authentication"对话框。 若是在"VNC Authentication"对话框中输入的密码正确,就可以成功地打开Linux的桌面窗口。
 

1.3.3 从浏览器远程遥控

如果需要从外网控制内网的某台Linux,则需要打开防火墙相应的端口,并在路由器上进行端口映射。VNC给浏览器的端口是5800+N,给vncviewer的端口是5900+NN是设置的display
 
启动VNC Server 后直接打开浏览器,在地址栏中输入被控端的网址或IP地址,并在网址后加上"5800+显示编号"的端口号即可操控该计算机。
例如:http://192.168.01.:5801 (如果显示编号为1,一般第一次设置的显示编号都是1,就用580015801)
 
FAQ
A 为什么重新启动VNC Server后,连接不上了?
因为重新启动VNC Server时,系统会指定一个新的显示编号,需使用此新的编号,否则就无法连接。
 
B  为什么不能连接上主机?
可能是Linux 防火墙挡住了,关闭Linux 的防火墙即可:/etc/rc.d/init.d/iptables stop
 
 

本文出自 “zxuhong” 博客,请务必保留此出处http://zxuhong.blog.51cto.com/368977/76637



上一篇 Linux Date & Time  下一篇 Linux Daemon



    文章评论
 
 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: