Manjaro Gnome + XRDP 最佳配置方案
通过逐一体验 Manjaro 21.2.6 官方维护的 xfce、KDE 和 Gnome 桌面环境的发行版,实测表明 Gnome 在 xrdp 远程桌面功能相对最完整。xfce 和 KDE 虽然可以成功通过 xrdp 远程连接到桌面,但无法弹出密码认证窗口,导致无法使用系统自带的应用管理器安装程序,像 GParted 等需要获取管理员权限的 GUI 程序也无法使用。
当然,从 XRDP 远程桌面的角度来看,Gnome 版本的 Manjaro 也不是开箱即用。常规方法配置的 xrdp 连接后会提示“发生了系统错误,所有插件都已禁用,是否注销登录”,这个问题需要用第三方的补丁来解决,虽然打补丁也没多复杂,但毕竟多了步骤,就给 xrdp 的配置又增加了一层门槛。
安装
安装必须的包
yay -S base-devel xrdp xorgxrdp
配置
创建或编辑 /etc/X11/Xwrapper.config
,添加
allowed_users=anybody
使用 ~/.xinitrc
的内容创建 ~/.xrdpxinitrc
文件
cp ~/.xinitrc ~/.xrdpxinitrc
编辑它 ~/.xrdpxinitrc
,找到并删除里面的 --exit-with-session
。
然后修改 /etc/xrdp/startwm.sh
,将文件中所有的 ~/.xinitrc
替换成 ~/.xrdpxinitrc
。即让这个脚本去找 ~/.xrdpxinitrc
配置文件。
提示,其实也可以直接编辑
.xinitrc
文件,但使用.xrdpxinitrc
应该可以避免因修改设置而影响其他关联程序的稳定。
打补丁
一行一条命令
git clone https://github.com/matt335672/pam_close_systemd_system_dbus
cd pam_close_systemd_system_dbus
sudo make install
编译好的库文件位于 /usr/lib/security/pam_close_systemd_system_dbus.so
,修改 /etc/pam.d/xrdp-sesman
文件,参考以下内容添加倒数第二行的 optional:
#%PAM-1.0
auth include system-remote-login
account include system-remote-login
password include system-remote-login
session optional pam_close_systemd_system_dbus.so
session include system-remote-login
重启系统,试试用 Microsoft Remote Desktop
连一下吧。
Reference
- 版权声明:本作品采用 自由转载-非商业性使用-禁止演绎 4.0 国际许可协议 进行许可
- 发布日期:May 3, 2022
评论区