FANG KE (Coor)

Always Seeking an Adventure.

远程访问Raspberry Pi桌面

Sun 26 November 2017

前言

最近在翻译“Learn Electronics with Raspberry Pi”一书时,需要截取一些中文Raspbian的截图。一般RPI的访问方式有三种:直接键盘鼠标和显示器;通过SSH;通过VNC。

SSH只能够实现终端的远程交互,而无法载入用户界面,所以无法截图。而如果直接连接鼠标键盘,那么截图和将截图转移到日常使用的PC上则非常困难。这时候我决定使用VNC远程访问RPI的桌面,这样在我日常使用的PC上就可以使用截图工具直接截图,极大提高了工作效率。

什么是VNC

VNC是Virtual Network Computing的缩写,顾名思义,它就是虚拟网络计算的意思。更加准确的说,这是一款软件,而不是一种协议的名称。VNC可以实现不同操作系统的远程桌面连接,在实际使用过程中,通常需要在目标主机上安装一个VNC服务器,在控制主机上安装VNC客户端。

在Raspberry Pi上安装VNC服务器

在安装VNC服务器时,由于还无法实现远程的桌面访问,可以通过串口/局域网SSH的方式访问RPi。然后安装VNC软件包。

$ sudo apt-get install tightvncserver

安装完成后,首次运行需要设置一个访问密码和只读密码,后者不是必须。之后在每次使用VNC客户端连接之前,需要手动开启VNC服务。

$ tightvncserver

[email protected]:~ $ tightvncserver

New 'X' desktop is raspberrypi:3

Starting applications specified in /home/pi/.vnc/xstartup
Log file is /home/pi/.vnc/raspberrypi:3.log

运行结果如图所示,rasoberrypi:3表示当前开启了第三个会话,在使用vnc客户端连接时,需要此参数。默认情况下会话编号会从1开始,然后每次运行会依次增加。因为我已经开启了2个,所以这次运行就是3。

如果想要为远程桌面设置指定的分辨率和显示参数,可以通过如下命令(x表示希望使用的会话编号):

$ vncserver:x -geometry 1200×600 -depth 16 -pixelformat rgb565

[email protected]:~ $ vncserver :2 -geometry 1366x768 -depth 16 -pixelformat rgb565

New 'X' desktop is raspberrypi:2

Starting applications specified in /home/pi/.vnc/xstartup
Log file is /home/pi/.vnc/raspberrypi:2.log

不同系统的VNC客户端

  • Windows 有自带的远程桌面访问功能,直接访问即可。
  • Mac和其它平台,可以使用VNC Viewer

下载后使用当前RPi的网络IP和会话编号访问。

最终效果如图:

图1

图2