archlinux 各种桌面环境下的xrdp的配置
xrdp 相对 vnc 以及第三方的其他的原创桌面的软件 例如 todesk rustdesk(自建) nomactione 以及 串流等,都有速度优势。
但是xrdp 肯定是只支持x11/xorg的,目前只有gnome自带的远程(用户级且不稳定)支持Wayland
在不同桌面的下 xrdp的处理也稍有差异,这里分别记录常见的
#安装配置xrdp
这里跳过桌面环境的搭建 kde、i3、xfce4 ,以及驱动部分,只记录xrdp相关的
plaintext
sudo pacman -S xorg-xinit # 一般桌面应该都带了
sudo pacman -S base-devel #all 一些编译要用的包
yay -S xrdp
yay -S xorgxrdp-glamor
sudo pacman -S xorg-xrdb
声卡的处理要用pulseaudio
plaintext
sudo pacman -S pulseaudio
sudo pacman -S sbc bluez
yay -S pulseaudio-module-xrdp
#处理启动脚本
xrdp 使用xinit 启动
plaintext
cp /etc/X11/xinit/xinitrc ~/.xinitrc #复制一个过来
nano ~/.xinitrc
#注释掉最后的几行
#twm &
#xclock -geometry 50x50-1+1 &
#xterm -geometry 80x50+494+51 &
#xterm -geometry 80x20+494-0 &
#exec xterm -geometry 80x66+0+0 -name login
#pulseaudio
plaintext
# 声音部分可能需要 有的桌面环境不需要
PULSE_SCRIPT=/etc/xrdp/pulse/default.pa pulseaudio --daemonize=no
pulseaudio &
#添加需要启动的桌面
#i3w / dwm
添加一行
plaintext
exec i3w
#gnome
plaintext
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec dbus-launch gnome-shell --x11
#kde
plaintext
export DESKTOP_SESSION=plasma
/usr/lib/plasma-dbus-run-session-if-needed startplasma-x11
#xfce4
plaintext
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec dbus-launch startxfce4
#后续处理
#Xwrapper
plaintext
sudo nano /etc/X11/Xwrapper.config
allowed_users=anybody
#启动xrdp
plaintext
sudo systemctl enable xrdp
sudo systemctl start xrdp