首页 > 评测 > Trick
[导读]吹客=Trick ; 这是评测频道打造地一个全新栏目,旨在用轻松活泼的方式让大家一起来分享开发板使用开发的技巧和心得。只要你的文章是原创的,并且有观点有干货,一切内容和题材都可以被我们所接受。投稿请至board@21ic.com(采用有惊喜!)

什么是远程桌面?通俗的讲,就是将其它机器的桌面系统通过网络连接显示到本地,然后在本地操控远程机器。

这样说其实有点过于简单。远程桌面访问的实现,一般由三部分组成:远程机器开启相关的服务,使得客户端可以通过网络连接并提供相关服务;其次是需要借助网络通信来传递数据;最后客户端也就是本地机器需要相应的软件来实现显示及操控。说白了,这就是一个经典的C/S架构,属于远程控制里的一个具体应用。

图片1.jpg

黑客们费尽心思,要在你的电脑上种个木马,就是为了好远程监控你的电脑,这样子看来太恐怖了!然而技术本身并无过错,远程控制的另一面,当然也能帮我们解决许多问题。设想一个这样的场景,你作为企业里的管理员,管理着几十甚至上百台电脑,这些电脑分布在不同的位置,如果需要维护的话,光是跑腿就够你受的了,这时候远程控制或者远程桌面就派上用场了。另外在嵌入式应用领域,许多设备甚至没有安装显示器、键盘等周边设备,在首次安装后就将它们撤去了。

笔者手头有个树莓派(RPI2),作为服务器常年运行着,为了不占地,干脆直接将显示器、键盘移除了。碰到偶尔需要维护或使用怎么办,远程桌面帮你搞定一切!

图片2.jpg

常年运行的RPI2,运行的是RASPBIAN系统,只连接了网络和电源。老外喜欢叫这种配置为HEADLESS,最清爽的配置方式。

前面提到,要实现远程桌面访问,有三个要素:服务、网络、客户端。对于网络来说,基本就是TCP/IP通信,现在的操作系统内部都已内置相关协议栈,不需要过多考虑。支持远程桌面的软件很多,这里介绍几种常见的类型,一个是VNC,另一个就是LINUX系统自带的X-WINDOWS。VNC想必大家耳熟能详,至于X-WINDOWS,可能有人知道这是LINUX系统上最常用的底层GUI,其实X-WINDOWS本身就是基于网络通信协议设置的,只不过大部分情况下,客户与服务端都在同一机器上实现,遮掩了X-WINDOWS的本质。

先看VNC吧,RPI的系统上为了方便大家实现HEADLESS操作,早就预置了VNC SERVER。

图片3.jpg

不过默认没有启动,所以只要启动VNC SERVER就可以了。

图片4.jpg

当然也可以将vncserver的启动命令加入到自启动脚本里,实现开机启动。

注意看输出的信息,这个服务器是REALVNC的产品,还有其它公司的VNC产品,原理一样,只不过不同的产品加入了各公司自己的特色功能而已。注意最后一行信息,这是告诉我们,在客户端里访问时指定的地址。

接下来使用客户端软件实现远程访问,使用VNC VIEWER,版本如下

图片5.jpg

点击FILE/NEW,出现新建对话框

图片6.jpg

主要参数包括VNC SERVER,加密方式等。

接下来就会连接RPI,弹出输入用户登陆信息的对话框

图片7.jpg

然后稍等片刻,桌面就出来了,这是RPI最新的PIXEL桌面,有没有焕然一新的感觉!

图片8.jpg

VNC就是一个傻瓜式的工具,简单配置,一切就都搞定!不过VNC的速度挺快,比后面介绍的东西效果要好。

跑个OPENGL DEMO来看看

图片9.jpg

还不错的效果。

其实咱也可以使用X-WINDOWS来实现LINUX的远程桌面。

X窗口系统(X Window System,也常称为X11或X)是一种以位图方式显示的软件窗口系统。最初是1984年麻省理工学院的研究,之后变成UNIX、类UNIX、以及OpenVMS等操作系统所一致适用的标准化软件工具包及显示架构的运作协议。X窗口系统通过软件工具及架构协议来创建操作系统所用的图形用户界面,此后则逐渐扩展适用到各形各色的其他操作系统上。现在几乎所有的操作系统都能支持与使用X。更重要的是,今日知名的桌面环境——GNOME和KDE也都是以X窗口系统为基础建构成的。

由于X只是工具包及架构规范,本身并无实际参与运作的实体,所以必须有人依据此标准进行开发撰写。如此才有真正可用、可运行的实体,始可称为实现体。目前依据X的规范架构所开发撰写成的实现体中,以X.Org最为普遍且最受欢迎。X.Org所用的协议版本,X11,是在1987年9月所发布。现在最新的版本是Xorg 7.7,UNIX/LINUX家族广泛使用它作为桌面系统。

图片10.jpg

X WINDOWS由X SERVER和X CLIENT组成。X采用C/S的架构模型,由一个X服务器与多个X客户端程序进行通讯,服务器接受对于图形输出(窗口)的请求并反馈用户输入(键盘、鼠标、触摸屏),服务器可能是一个能显示到其他显示系统的应用程序,也可能是控制某个PC的视频输出的系统程序,也可能是个特殊硬件。服务器和客户端之间的通信协议的运作对计算机网络是透明的:客户端和服务器可以在同一台计算机上,也可以不是,或许其架构和操作系统也不同,但都能运行。客户机和服务器还能够使用安全连接在互联网上安全地通讯。

本文系21ic原创,未经许可禁止转载!

网友评论

立 即 购 买 查看产品细节
更多相似方案