问题描述
在此之前,我已经解决过 Ubuntu20.04.2无法启动xrdp click here,并且已经能够成功远程桌面连接了。
但是,经过某些操作,突然又不行了。
问题分析
虚拟机Ubuntu系统,需要 xrdp 和 xrdp-sesman 服务都是启动的情况下,才能正常进行远程桌面连接。
我们用 netstat -tl
查看 TCP 监听端口的情况:
如上图所示,xrdp
应该监听的 3389
端口,还有 xrdp-sesman
应该监听的 3350
端口都不存在,说明这两个服务都没有启动,所以远程桌面连接不上来。
我们还可以进一步查看 systemctl status xrdp
:
以及查看 systemctl status xrdp-sesman
:
问题解决
所以,我们再次以 root 身份重启 xrdp 和 xrdp-sesman
$ su root
$ systemctl restart xrdp xrdp-sesman
$ netstat -tlpn
现在就可以用主机的 远程桌面连接 你的 Ubuntu 虚拟机了。
继续优化
我回忆了一下,我发现是因为我 关机 或者 重启 Ubuntu 虚拟机导致服务停止,所以我想是不是能够设置开机自启动呢?
首先,你要了解 systemctl service服务文件夹在/lib/systemd/system
(基本服务文件夹)与/etc/systemd/system
(开机启动文件夹)。
因为 xrdp.service
和 xrdp-sesman.service
已经存在于 /lib/systemd/system
文件夹中,所以我们直接用以下命令加到开机启动:
$ sudo systemctl enable xrdp.service
$ sudo systemctl enable xrdp-sesman.service
接着 reboot
重启 Ubuntu 虚拟机。再次使用检查服务,我们发现实现了开机自启动。
参考文档
-
ubuntu18.04 远程桌面连接失败的来龙去脉 click here
-
Ubuntu18.04添加服务并设置开机启动 click here