一、屏幕控制原理
VNC是把被控制端的屏幕做成图像,经过压缩后传送到控制端,控制端的控制信息(如鼠标信息)传送到被控制端后进入消息队列。
客户端 X服务器 应用程序
vnc viewer<----------------------->Xvnc(vnc server)<------------------------>applications
(vnc protocal) (X protocal)
其控制是基于tcp/ip的,其中vnc server扮演了双重角色,vnc protocal是基于RFB protocal的。
数据的进行再server上,viewer只是作为一个显示终端,类似于windows下的mstsc。
二、截屏方式
VNC使用的截屏方式比较独特,它有两种方式:第一种是使用钩子自动报告需要截屏的区域;第二种是轮询某一个区域(如前景窗口)。截屏后使用某种压缩算法压缩后发送。
三、传输方式
1.RFB协议传输:
在控之端不能直接改变显示大小,只能进行缩放,如缩放为原大小的几倍。原理是在远程机器上运行一个额外的X服务器,X服务器和客户机器都在远程跑。然后通过RFB协议用自己的客户端显示到本地。
2.X协议:
X 视窗系统提供了一个公开协议,由其客户程序可以查询和更新 X 服务器上的信息。X 视窗系统(X 协议)允许网络中不同计算机上的进程在其它网络显示器上显示内容。
如何使用:
ubuntu下安装VNC远程桌面的详细步骤
Virtual Network Computing(VNC)是进行远程桌面控制的一个软件。客户端的键盘输入和鼠标操作通过网络传输到远程服务器,控制服务器的操作
(只有背景,没有菜单栏问题没有解决)Virtual Network Computing(VNC)是进行远程桌面控制的一个软件。客户端的键盘输入和鼠标操作通过网络传输到远程服务器,控制服务器的操作。服务器的图形界面 通过网络传输会客户端显示给用户。给你的感觉就像直接在操作本地计算机一样,只是所有的程序和命令都是在服务器端执行。
1、打开一个Terminal,安装vnc4server
sudo apt-get install vnc4server
2、接着安装 sudo apt-get install gnome-panel
3、启动vnc4server,输入vnc4server此时系统会提示你输入密码,在通过客户端链接时将会用到这个密码。
输入完密码后你将看到类似下边的提示:
这里你就可以看到了新创建了一个桌面 为ubuntu:1这个作为后台连服务器用
4.编辑启动脚步
vim /home/用户名/.vnc/xstartup
在&x-window-manager & 增加#
然后再最下面增加2行
startgnome &
DISPLAY=:1 gnome-session &
5.重启VNC服务
vncserver -kill :1 然后再启动vnc服务输入vnc4server
6.在window下打开vnc客户端输入 服务器IP+:1:
7.点击确定,输入在服务端的密码
8.成功登录
PS:在这里顺便介绍一款window下操作linux类似FTP工具winscp,从window上拉取某个文件到linux下,直接拉取到对应的文件夹就达到了上传效果
+++++++++++++++++++附贴xrdp的方法++++++++++++++
打开终端:依次安装
sudoapt-get install xrdp
sudoapt-get install vnc4server tightvncserver
安装完毕以后,执行以下命令(该命令的作用是由于安装了 gnome桌面,ubuntu12.04中同时存在unity、GNOME多个桌面管理器,需要启动的时候指定一个,不然即使远程登录验证成功以后,也只是背景,其他什么也没有)
cd /home/youruser(youruser 是每个人自己的用户名)
sudo /etc/init.d/xrdp restart
3、运行Windows的mstsc