如何使用树莓派搭建个人远程桌面

  • 背景
  • 准备工作
  • Ubuntu换源
  • 安装xfce4和xrdp
  • 安装cpolar
  • 设置rdp隧道
  • 远程连接


背景

本人在学校购入了一块树莓派4B(4G)做项目,工作之后就一直闲置。这两天收拾房间的时候翻出来,想到前一阵树莓派被炒到那么高,在手里闲着也是浪费,索性搭建一个远程桌面,可以远程写写代码什么的。

准备工作

首先,你需要一块树莓派,型号对于用作远程桌面来说差别不大,只是性能上会有区别。其次,下载Ubuntu Server Arm版的iso镜像文件并烧录到SD卡中。最后,将SD卡插入树莓派,上电并完成系统的初始化配置,如认证用户,连接WIFI等。

Ubuntu Server Arm版下载地址:https://cn.ubuntu.com/download/server/arm

javascript开发树莓派屏幕 树莓派桌面开发_服务器

树莓派烧录软件下载地址:https://www.raspberrypi.com/software/

javascript开发树莓派屏幕 树莓派桌面开发_linux_02

Ubuntu换源

在进行后续操作之前可以先将Ubuntu更换为国内的镜像源。

// 备份原始镜像文件
cp /etc/apt/sources.list /etc/apt/sources.bk

// 编辑sources.list
sudo vi /etc/apt/sources.list

// 替换为以下内容
deb http://mirrors.163.com/ubuntu-ports jammy main restricted universe multiverse
deb http://mirrors.163.com/ubuntu-ports jammy-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu-ports jammy-backports main restricted universe multiverse
deb http://mirrors.163.com/ubuntu-ports jammy-security main restricted universe multiverse

安装xfce4和xrdp

// xfce4: 一款类UNIX 操作系统上的轻量级桌面环境
sudo apt-get install xfce4
// 防止xfce4桌面默认终端打不开
sudo apt-get install xfce4-terminal
echo xfce4-session>.xsession

// xrdp: linux远程桌面管理工具xrdp
sudo apt-get install xrdp

xrdp在进行远程连接时可能会出现以下情况

  1. xrdp输入账号密码闪退
    原因是xrdp安装不到位,需要换个源,阿里和清华的不行,可以采用网易的。
  2. xrdp登录后黑屏或者息屏后黑屏
// 打开startwm.sh
sudo vi /etc/xrdp/startwm.sh

// 添加以下内容
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
. $HOME/.profile

javascript开发树莓派屏幕 树莓派桌面开发_linux_03

安装cpolar

cpolar可以帮助我们实现内网穿透,让我们在外网环境下也能访问树莓派。打开cpolar的网站(https://www.cpolar.com/docs)我们可以看到在文档中介绍了如何安装cpolar,我们按照步骤一步步执行即可。

javascript开发树莓派屏幕 树莓派桌面开发_树莓派_04

设置rdp隧道

这一步我们需要借助另一台在同一个局域网下的笔记本来实现。通过ifconfig命令在树莓派上查看在当前局域网下的ip地址,比如,当前我的树莓派的ip是192.168.110.74。

javascript开发树莓派屏幕 树莓派桌面开发_linux_05

如果显示ifconfig命令不存在,则先通过apt安装net-tools,再执行ifconfig

// 安装net-tools
sudo apt-get install net-tools

查到树莓派的ip地址后,在笔记本的浏览器中输入树莓派ip:9200,那么我需要输入的就是192.168.110.74:9200。此时我们会进入cpolar的管理后台页面。

javascript开发树莓派屏幕 树莓派桌面开发_javascript开发树莓派屏幕_06


登录后,在创建隧道页面中创建一个隧道名称为rdp,协议类型为tcp,端口为3389的隧道。

javascript开发树莓派屏幕 树莓派桌面开发_网络_07


点击创建后,我们可以从在线隧道列表中看到cpolar穿透树莓派3389端口为我们生成的tcp公网地址。

javascript开发树莓派屏幕 树莓派桌面开发_javascript开发树莓派屏幕_08

远程连接

在Windows系统下打开桌面远程连接工具,输入树莓派tcp公网地址,点击连接。

javascript开发树莓派屏幕 树莓派桌面开发_树莓派_09


此时我们会看到xrdp的登录界面,输入树莓派的用户名和密码就能进入远程桌面了。

javascript开发树莓派屏幕 树莓派桌面开发_linux_10


树莓派远程桌面

javascript开发树莓派屏幕 树莓派桌面开发_javascript开发树莓派屏幕_11


至此,使用树莓派搭建个人远程桌面的教程就结束了,谢谢。