更新到 Ubuntu 24.10 后 Xrdp 连接后闪退修复

问题描述

Ubuntu 更新到 24.10 后,使用 apt 安装 xrdp

sudo apt install xrdp

添加 gnome-session 到~/.xsession

echo "gnome-session" | tee ~/.xsession

在 Windows 上使用远程桌面连接 Ubuntu 登录 Xorg 后闪退

查看 .xorgxrdp.10.log 发现客户端的版本比预期的要旧,但是更新客户端版本也不行。

[ 10160.761] rdpClientConProcessMsgClientInfo:
[ 10160.761] expected xrdp client_info version 20230425, got 20210723
[ 10160.761] (EE)
Fatal server error:
[ 10160.761] (EE) Incompatible xrdp version detected - please recompile(EE)
[ 10160.761] (EE)
Please consult the The X.Org Foundation support
at http://wiki.x.org
for help.
[ 10160.761] (EE) Please also check the log file at ".xorgxrdp.10.log" for additional information.
[ 10160.761] (EE)
[ 10160.762] rdpmouseControl: what 4
[ 10160.762] rdpkeybControl: what 4
[ 10160.762] (II) AIGLX: Suspending AIGLX clients for VT switch
[ 10160.762] rdpLeaveVT:
[ 10160.764] (EE) Server terminated with error (1). Closing log file.

其实这是 Ubuntu Oracular 源 Xrdp 的一个 Bug

在 Oracular 中,Xrdp 和 xorgxrdp 被编译为不同的版本


解决方法

方法一、使用旧版的 xorgxrdp 包

1. 下载旧版 xorgxrdp 包

wget http://launchpadlibrarian.net/640882094/xorgxrdp_0.9.19-1_amd64.deb

2. 使用 dpkg 安装

sudo dpkg -i xorgxrdp_0.9.19-1_amd64.deb

3. 重启 xrdp 服务

sudo systemctl restart xrdp

4. 禁止 xorgxrdp 自动更新

sudo apt-mark hold xorgxrdp

方法二、修改 apt 更新源并更新 Xorgxrdp

此方法我尝试了也没成功,有效性待定

1. 编辑 /etc/apt/sources.list.d/ubuntu.sources ,在 oracular-backports 后面添加 oracular-proposed

编辑示例

2. sudo apt update 更新软件源

3. sudo install xrdp/oracular-proposed ,使用指定软件源更新 xrdp


使用远程桌面连接测试

连接修复成功


参考资料