hardware

树莓派教程4:为 raspberry pi 创建和配置远程桌面 (图文)


我们已经知道如何为树莓派安装无线网卡并配置无线网络( 树莓派教程3:使用命令行方式为 raspberry pi 配置无线 wifi )。这样我们可以通过无线的方式使用 SSH 远程连接树莓派的命令终端,但这不是70、80年代的 unix ,现在的 linux 都使用各自的桌面环境,为使用 linux 内核系统提供了极大的方便。

这篇文章将主要介绍如何使用 TightVNC 为树莓派提供远程桌面服务,通过在树莓派上安装和配置 TightVNCServer 用客户端只要点几下鼠标就可以进行远程桌面操作,对开发和使用树莓派来说是必不可少的步骤之一。

  准备工作                                                                                                                         
1. 一个完备的树莓派
2. 一台 PC 或者笔电

 

  为树莓派安装和配置 TightVNCServer                                                                     
1. 使用 puTTY 远程登录到树莓派,按下图输入命令
1
sudo apt-get install tightvncserver
为树莓派 raspberry pi 安装tightvncserver

为树莓派 raspberry pi 安装tightvncserver

 

2. 运行 TightVNC Server

命令行中输入

1
tightvncserver
在树莓派中启动tightserver

在树莓派中启动tightserver

第一次启动 TightVNC Server,会要求给 VNC 客户端配置连接密码,两次输入之后会提示是否为 view-only 模式配置密码,一般选 no。这样服务端的启动脚本就会自动创建并配置好。

3. 更精确地配置 vncserver

想要更细致地配置 tightvnc server,可以通过 vncserver 命令来完成。你可以通过它来设置远程桌面的分辨率,位深,连接端口等。格式如下:

1
vncserver :1 -geometry 1360x768 -depth 24 -pixelformat rgb888

:1 为屏号,熟悉 linux 桌面环境的应该都了解
-geometry 设置远程桌面的分辨率
-depth 为位深,从8到32位,一般设为16和24
-pixelformat 为一个像素的rgb格式,16位深一般设置成 rgb565;24位深设置成rgb888

4. 通过 TightVNC 客户端连接远程桌面

首先下载 TightVNC,可以根据自己所在系统选择下载版本
TightVNC desktop client for Windows
TightVNC desktop client for Linux/Unix-like Systems
RealVNC desktop client for OSX

运行 TightVNC client,填上树莓派的 IP 地址,和屏号如图所示

运行 TightVNC client 连接树莓派远程桌面

运行 TightVNC client 连接树莓派远程桌面

弹出连接密码输入框,输入之前在server端配置好的密码

输入vnc连接密码

输入vnc连接密码

正常情况下,可以很顺利地进入到远程桌面环境中:)

树莓派的VNC远程桌面环境

树莓派的VNC远程桌面环境

 

5. 修正 Raspbian 下 TightVNC BUG

输入如下命令

1
sudo chown pi /home/pi/.Xauthority

当 TightVNC Server 安装时,该文件没有被正确给用户 pi 赋予权限,可能会导致客户端无法再次连接,输入上边命令可以给该文件指定所有用户为 pi。

6. 创建初始化文件,让 tightvnc server 随系统启动自动运行

我们当然不想每次都手动运行 vncserver,接下来我们将创建系统初始化文件,让 vncserver 实现开始自动运行

1
sudo nano /etc/init.d/tightvnc

将下列脚本考入编辑器中

#!/bin/sh
### BEGIN INIT INFO
# Provides: tightvncserver
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: start vnc server
# Description:
### END INIT INFO

case "$1" in
start)
su pi -c 'vncserver :1 -geometry 1360x768 -depth 24 -pixelformat rgb888:'
echo "VNC server Started"
;;
stop)
pkill Xtightvnc
echo "VNC server Terminated"
;;
*)
echo "Usage: /etc/init.d/tightvnc {start|stop}"
exit 1
;;
esac

保存并退出编辑器。因为我们是使用 pi 作为登录用户,所以要给 tightvnc 文件相应的权限

1
sudo chmod 755 /etc/init.d/tightvnc

到这里就算是全部配置完成,可以用下边的命令测试一下是否正常

1
2
sudo /etc/init.d/tightvnc stop
sudo /etc/init.d/tightvnc start

最后记得更新一下 rc.d 文件让 tightvnc 脚本生效

1
sudo update-rc.d tightvnc defaults

测试妥当后,重启树莓派,当当成功  😀

General
Google 发布今年最后一个谷歌眼镜升级包,支持眨眼拍照及环聊Youtube上传
Intel Edison
Intel Edison Kit for Arduino 开箱展示,SD卡尺寸电脑震撼到货(【Gekius】图文)
hardware
如何为Intel Edison 设置开机自动运行程序,systemd 设置篇