Ubuntu 16.04 + xrdp + Xfce 实现 Windows 远程桌面连接 Linux 配置及使用中出现的问题

- 配置步骤

可参考[1] [2] [3] [4],对服务器进行如下配置:

1. 安装xrdp

sudo apt-get install xrdp

以vnc方式

sudo apt-get install vnc4server tightvncserver

或者使用xorg方式

sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils

2. 安装Xfce桌面环境

sudo apt-get install xubuntu-desktop

或者直接在前面xorg方式中已经安装xfce。

3. 配置xfce4

echo "xfce4-session" >~/.xsession

创建.xsession文件并写入内容。
4. 配置xrdp

sudo gedit /etc/xrdp/startwm.sh

或者

sudo vim /etc/xrdp/startwm.sh

./etc/X11/Xsession (有的是 exec /bin/bash /etc/X11/Xsession) 前一行插入

xfce4-session

5. 重启 xrdp

sudo service xrdp restart
# 或者重新启动 Xrdp 服务:
sudo systemctl restart xrdp

理论上经过这些之后就可以使用远程桌面连接mstsc.exe,连接之后类型选择sesman-xvnc,填写用户名和密码之后就能连接到 Linux 系统的远程桌面。

- 有关问题

1. Unable to load a failsafe session

现象:连接时出现以下界面。在这里插入图片描述
即:

Unable to determine failsafe session name. Possible causes: xfconfd isn’t running (D-bus setup problem); environment variable $XDG_CONFIG_DIRS is set incorrectly (msut include “/etc”), or xfce4-session is installed incorrectly.

原因:该用户对某些文件夹没有读写权限。
参考https://bbs.archlinux.org/viewtopic.php?id=152171
解决方案: 使得该用户获得读写权限,可参考 [4] :
假设我的文件夹在主目录里,地址为 /var/home/dengchao/
则在终端输入:

chmod  777 /var/home/dengchao/

用户获取读写权限后,再重启xrdp服务:

sudo service xrdp restart

2. Tab 键无法使用

使用时发现Tab 键无法使用,原因是快捷方式被占用,解决方案:

  • 直接在远程桌面中设置,打开菜单->设置->窗口管理器,或者在终端中输入xfwm4-settings打开(xfwm4就是xfce4 window manger的缩写)。
  • 选择键盘,可以看到窗口快捷键中动作一列有“切换同一应用程序的窗口”选项。
  • 将该选项的快捷键清除后关闭窗口即可。

缺省的设置,该项的值为 super+制表,制表键就是 Tab键。这样修改后马上可以使用了。
参考资料:[1]

3. xrdp 连接相同的登陆会话

参考博文:xrdp 登录保持相同的登陆会话 (xfce-session)

4. xfce 退出屏保

有的时候会遇到 xfce 进入屏保模式,可以用鼠标点一下或者按下 enter 键。

5. 在Ubuntu 20.04 上使用Xrdp(远程桌面)

参考 如何在Ubuntu 20.04 上安装 Xrdp 服务器(远程桌面)
要点:

  1. Ubuntu 20.04 一般自带了桌面,无需安装Xfce;
  2. 安装 ubuntu-desktop 远程时, Ubuntu 本机不能用用户名登录,否则桌面会是漆黑一片。

6. 在Ubuntu 18.04 上安装 Xrdp 服务器(远程桌面)

参考 如何在 Ubuntu 18.04 上安装 Xrdp 服务器(远程桌面)
要点:

  1. Ubuntu 18.04 需要安装远程桌面;
  2. 安装ubuntu-desktop 远程时 Ubuntu 本机不能用用户名登录,否则桌面会是漆黑一片。

7. Ubuntu 18.04 配置xrdp后出现 thinclient_drives文件夹

参考 彻底删除 thinclient_drives ,要点:

  1. 修改 /etc/xrdp/sesman.ini 文件
sudo vim /etc/xrdp/sesman.ini

FuseMountName=thinclient_drives 修改为 FuseMountName=xxxx/thinclient_drives,其中 xxxx 是任意一个不存在的位置(其实没有这个文件夹),如改为 FuseMountName=.xrdp/thinclient_drives

  1. 删除 thinclient_drives 文件夹
sudo umount thinclient_drives
sudo rm -rf thinclient_drives

8. 黑屏

参考 完美方案——解决XRDP连接黑屏,以及桌面优化!

  1. 打开文件
sudo vim /etc/xrdp/startwm.sh
  1. 添加配置
unset DBUS_SESSION_BUS_ADDRESS
unset XDG_RUNTIME_DIR
  1. 重启xrdp服务
sudo systemctl restart xrdp.service

- 进阶资料

  1. xfce桌面环境美化教程
  2. Xfce (简体中文) - ArchWiki
  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值