写在前面
今天工作的时候,朋友突然感慨很久没有把显示器连到linux主机上使用桌面。
平时工作中我们已经习惯了通过SSH登录到linux机上,使用命令行来操作,那有没有办法可以远程使用linux桌面呢?有的兄弟有的,一番了解下得知,通过 RDP 协议就可以满足这个需求。
RDP协议简介
远程桌面协议(Remote Desktop Protocol,RDP) 是由微软开发的一个多通道网络通信协议。它最主要的功能,就是让用户能在自己的电脑(客户端)上,通过网络远程操作和控制另一台电脑(服务器端)的桌面。
RDP构建于TCP/IP协议之上,默认使用TCP端口3389进行通信。
xrdp是一个开源的RDP服务器端软件,适用于Linux/Unix系统(包括树莓派OS、Ubuntu、Centos等)
配置流程
以我手头的树莓派5B为例,没有给他外接显示屏,可以用xrdp来实现远程桌面。配置的步骤如下:
首先是安装xrdp服务,并设置开机自启动
sudo apt updatesudo apt upgrade -ysudo apt install xrdp -ysudo systemctl enable xrdp
检查xrdp是否成功监听tcp端口3389
cai@raspicai:~ $ sudo ss -tlnp | grep 3389LISTEN 0 2 *:3389 *:* users:(("xrdp",pid=1206,fd=13))
如果没有的话,需要检查下服务是否启动以及防火墙,不过树莓派OS默认没有防火墙
至此xrdp的配置完成了。windows环境下可以使用mobaxterm创建一个rdp终端。
mobaxterm有免费版,可以直接去官网下载。公众号聊天框【实用工具】也有提供链接。
这里可以先用(Tools -> Network Scanner)扫描下确认rdp服务开启

在(Sessions -> New Session)处选择RDP,输入IP和用户名,使用默认端口登录,再输入密码即可

然后大概率会发现,咦,登录不上?

这通常是由于同一个账号重复登录导致的“会话冲突”。
树莓派OS默认会开启桌面环境自动登录,也就是说,你一给树莓派通电,它就已经用你的账号登录进桌面了。
在这种状态下,再尝试用同一个账号通过xrdp远程连接,就相当于同一个用户要开启第二个桌面会话。这会造成会话冲突,xrdp通常会拒绝连接!
如何解决呢,可以关闭树莓派的自动登录桌面功能
进入系统设置
sudo raspi-config
按照下图依次选择



最后重启树莓派启用配置更改
sudo reboot
大功告成!再次输入密码后就可以畅快使用了。