Tumbleweed 上面的 xrdp 默认配置是不是有权限问题

Tumbleweed + KDE 环境,配置了 xrdp,用 Windows mstsc 连接,总是有一些问题。但是同样的配置在 Debian 10 + lxqt(xrdp 0.9.9)下面就没有问题

  1. 在 RDP 中,KDE Launcher 里面的 Shutdown 和 Reboot 点击之后并不会真正的关机或重启,只是会黑屏然后鼠标还在。但是 Debian 下面 lxqt 菜单中的关机/重启点击后会弹出一个 graph sudo,让输入 sudo 密码,之后就能正常执行关机/重启操作

  2. thinclient_drives 没有正常挂载,导致 Driver Redirection 不能使用,文件复制也只能从 rdp 往外复制,不能往 rdp 里面复制。mstsc 剪切板功能是打开的,什么打印机智能卡功能都给关掉了。同样的 Debian 那边就正常。

    [20210425-10:29:07] [INFO ] xrdp_load_keyboard_layout: keyboard_type [7] keyboard_subtype [0]
    [20210425-10:29:07] [INFO ] xrdp_load_keyboard_layout: model [] variant [] layout [us] options []
    [20210425-10:29:08] [INFO ] TLS connection established from port 54011: TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384
    [20210425-10:29:08] [INFO ] xrdp_caps_process_pointer: client supports new(color) cursor
    [20210425-10:29:08] [INFO ] xrdp_process_offscreen_bmpcache: support level 1 cache size 10485760 MB cache entries 100
    [20210425-10:29:08] [INFO ] xrdp_caps_process_codecs: nscodec, codec id 1, properties len 3
    [20210425-10:29:08] [WARN ] xrdp_caps_process_codecs: unknown codec id 5
    [20210425-10:29:08] [INFO ] xrdp_caps_process_codecs: RemoteFX, codec id 3, properties len 49
    [20210425-10:29:08] [INFO ] Cannot find keymap file /etc/xrdp/km-00000804.ini
    [20210425-10:29:08] [INFO ] Cannot find keymap file /etc/xrdp/km-00000804.ini
    [20210425-10:29:08] [INFO ] Loading keymap file /etc/xrdp/km-00000409.ini
    [20210425-10:29:08] [WARN ] local keymap file for 0x00000804 found and doesn’t match built in keymap, using local keymap file
    [20210425-10:29:08] [ERROR] libxrdp_query_channel - Channel 0 name rdpdr
    [20210425-10:29:08] [ERROR] libxrdp_query_channel - Channel 1 name rdpsnd
    [20210425-10:29:08] [ERROR] libxrdp_query_channel - Channel 2 name cliprdr
    [20210425-10:29:08] [ERROR] libxrdp_query_channel - Channel 3 name drdynvc
    [20210425-10:29:08] [ERROR] libxrdp_query_channel - Channel out of range 4
    [20210425-10:29:08] [INFO ] drdynvc_process_capability_response: DVC version 3 selected
    [20210425-10:29:12] [INFO ] xrdp_wm_log_msg: sesman connect ok
    [20210425-10:29:12] [INFO ] xrdp_wm_log_msg: login successful for display 200
    [20210425-10:29:12] [INFO ] lib_mod_log_peer: xrdp_pid=2113 connected to X11rdp_pid=1574 X11rdp_uid=1000 X11rdp_gid=100 client_ip= client_port=54011
    [20210425-10:29:12] [ERROR] libxrdp_query_channel - Channel 0 name rdpdr
    [20210425-10:29:12] [ERROR] libxrdp_query_channel - Channel 1 name rdpsnd
    [20210425-10:29:12] [ERROR] libxrdp_query_channel - Channel 2 name cliprdr
    [20210425-10:29:12] [ERROR] libxrdp_query_channel - Channel 3 name drdynvc
    [20210425-10:29:12] [ERROR] libxrdp_query_channel - Channel out of range 4

/var/log/xrdp.log 里面报错也在 GitHub Issue 上搜了一下,好像都和我这两个问题没什么关系
然后我发现 Debian 上 xrdp.service 是以 xrdp 用户执行的,Tumbleweed 上面 xrdp.service 是以 root 执行的,我想着会不会是这个原因导致的上面这两个问题。但问题是 Tumbleweed 的 xrdp 是在 /usr/sbin 下面的,只能用 root 执行

另外还有一个小问题,不知道是 KDE 的锅还是 xrdp 的锅。Windows 上 NumLock 是打开的,openSUSE 的物理键盘 NumLock 也是打开的。用 mstsc 连 openSUSE 的 xrdp 时,登录界面输入用户名密码的时候 NumLock 还是正常打开的,登进去进到桌面 NumLock 就被关上了。KDE 无论设置成 NumLock Always On 还是 Leave Unchanged 都会有同样的问题。这个问题只有首次登录的时候没有,如果没 Logout 直接叉掉 mstsc,再次登录 100% 出现。就很烦人

应该是 D-Bus 的锅,用命令行就好