archlinux 各种桌面环境下的xrdp的配置

arch

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

评论