首页 > 代码库 > 【树莓派】使用VNC进行远程控制

【树莓派】使用VNC进行远程控制

之前有进行过VNC以及xrdp连接树莓派,并成功了。

这里看到一篇比较新的,基于mac的连接,文章转载收藏,实践可参考。

这一课里我们将学习如何在树莓派上安装和使用VNC。它可以使你通过图形界面的方式访问树莓派的桌面,就好像你正坐在小派的前面。

技术分享

以这种方式连接小派可以节省桌面空间,使你的桌面不会乱糟糟的,不会这儿一套键盘鼠标那儿又有一套。这也可以使你把你的小派放到能连上网的其他地方,并远程控制它。

安装VNC

SSH(详见:http://www.boydwang.com/2014/05/adafruits-raspberry-pi-lesson-6-using-ssh/)通常对于控制树莓派来说已经足够了,但是有时使用鼠标进行远程控制并且能够看到树莓派的屏幕也非常有用。

VNC(Virtual Network Connection,可视化网络连接)正是能够做到这一点的一套标准。要使用它,你得在小派上安装一些软件。现在已经有许许多多的VNC server应用,我们接下来将要使用的一款叫做”tightvnc”。

我们可以通过先前已经建立好的SSH连接来安装VNC server。

在SSH终端里输入下列命令:

 
 
1
2
sudo apt-get update
sudo apt-get install tightvncserver

 

技术分享

当出现提示时按一下”Y”,安装完成后你会看到下面的信息:

技术分享

现在我们需要运行VNC Server,在SSH窗口里输入下面的命令:

 
 
1
vncserver :1

 

技术分享

系统会提示你输入密码并确认一次。使用”raspberry”会比较合适,但是密码限制8个字符,所以我使用了”raspberr”。要注意在你远程连接到树莓派的时候会用到这个密码。

从现在起,你需要敲到SSH命令行的唯一命令就是启动一个VNC server:

 
 
1
vncserver :1

 

现在VNC server已经启动了,所以我们可以尝试连接一下,但我们先得切换到另一台电脑上,安装一个VNC客户端然后连接到小派上。

使用VNC客户端

同样的,现在也有许多VNC客户端,我发现”VNC Viewer”(http://www.realvnc.com)可以在很多平台上使用并且与TightVNC配合的很好。

当你第一次运行VNCViewer时,你会看到下面的界面:

技术分享

输入你的树莓派的IP地址,紧跟着:1(意味着端口号)然后按一下”Connect”。你将会看到一个警告信息,点”Continue”就好。

技术分享

然后会弹出下面的窗口提示你输入密码(“raspberr”)。

技术分享

最终,会弹出VNC窗口。现在你就可以使用鼠标了,并且像在本地机器上一样使用鼠标键盘显示器操作小派了。

和SSH一样,因为这是通过网络进行连接的,所以你可以把小派放在任何能够连接到网络的地方。

技术分享

系统自带的屏幕共享

Mac OS X自带了一个VNC应用,你可以用它连接而不用安装别的软件。

在Finder里,选择Go -> Connect to Server…,然后输入vnc://192.168.1.10(你的树莓派IP)来连接。

启动时自动运行VNCServer

这个方法只适用于自启动到桌面的环境,参见第二课。

在没有重启之前,使用VNC进行远程连接都是没有问题的。但是一旦重启,你需要进入SSH重启VNC Server或者把VNC Server设置为重启时自启动。

有多种不同的方法能够使VNC Server自启动。下面介绍的方法应该是最简单的一种。你可以把它用到别的需要自启动的命令上。

步骤 1.

在小派上打开一个终端会话,或者使用SSH。终端会自动以home路径作为当前路径/home/pi。如果你没有在这个路径下,使用下面的命令:

 
 
1
ccd /home/pi

 

然后cd 到.config目录下:

 
 
1
cd .config

 

注意文件夹开头的’.’,这使得这个文件夹是隐藏的,因此不会在你输入’ls’的时候显示。

步骤 2.

通过下面的命令在.config文件夹下建立一个’autostart’目录。

 
 
1
mkdir autostart

 

然后cd进去:

 
 
1
cd autostart

 

技术分享

步骤 3.

剩下的就是要编辑一个配置文件。输入下面的命令使用nano编辑器打开一个新文件:

 
 
1
nano tightvnc.desktop

 

然后输入下面的内容:

 
 
1
2
3
4
5
[Desktop Entry]
Type=Application
Name=TightVNC
Exec=vncserver :1
StartupNotify=false

 

技术分享
按一下ctrl-X然后Y保存。

就是这样啦,下次启动的时候它就会自动运行了。

Mac的屏幕和文件共享

如果你是一个Mac用户并且在网络里有好几台Mac,你可能已经习惯了在Finder里自动显示网络里别的Mac,这样你就可以登录到上面浏览文件系统甚至远程控制它们。

技术分享

Mac的这个屏幕共享功能使用了VNC,所以如果你已经安装了TightVNC Server(就像上面所做的那样)那么只需要一点点配置,我们就可以在网络里的其他Mac上认出它了。

教程在这里:http://4dc5.com/2012/06/12/setting-up-vnc-on-raspberry-pi-for-mac-access/,它解释了如何做到这一点。也包含了TightVNC Server的安装过程,不过我们之前已经做过,就不用重做一遍了。

一旦所有事情就绪,你就可以连接到树莓派的文件系统里了。

技术分享

要记得把用户名改成pi并且默认的密码是raspberry。

技术分享

这样极大的方便了你在Mac与小派之间相互传文件。

如果你点一下Share Screen按钮,系统将弹出另外一个登录提示。

技术分享

这次的密码是你在启动VNC Server时设置的密码,我当初建议的是”raspberr”。没有”y”。

然后系统会打开Mac自带的VNC Viewer。

技术分享

测试&配置

以图形界面的方式连接到树莓派非常有用。然而,和SSH一样,你需要知道小派的IP地址才能连接上去。所以最好在路由上把小派的IP租约时间设置得尽可能地长。

要做到这一点,登录到你家的路由器上,找到DHCP设置页面然后把DHCP的租约时间设置为尽可能长或者如果可能的话选择为永久租约。

技术分享

这样就能确保你的小派每次获取到的IP都是一样的。

如果你原来有网络配置经验,你可以把树莓派设置为静态IP地址,但这也可能会在不同的网络里出现问题。

如果你想调整VNC屏幕的尺寸,你可以在启动VNC Server的时候加入下面的选项。这对于手动启动Server和配置自动启动来说都适用。

 
 
1
vncserver :1 -geometry 1440x900

 

-geometry指定了屏幕像素单位的宽和高。

 

参考:http://www.boydwang.com/2014/05/adafruit-raspberry-pi-lesson-7-remote-control-with-vnc/

 

【树莓派】使用VNC进行远程控制