我是 RDP 设置的新手,我在大学时将 Mac 设置成远程登录我的 Ubuntu PC(22.04.3 LTS),一切正常。我遇到的唯一问题是,关闭连接后,当我尝试亲自重新登录 Ubuntu PC 时,我遇到了黑屏,无法执行任何操作,重新启动后,此问题自行解决,我可以正常登录。
我一直在寻找任何可能的解决方案,但我认为我的搜索措辞不正确,因此无法在线找到任何帮助。任何帮助都将不胜感激,谢谢。
答案1
起因
和 gnome协议xrdp
仅允许单个 GUI 会话。这意味着您可以本地登录或使用 xrdp 登录,但不能同时进行。“简单”的解决方案是从 xrdp 会话注销。不幸的是,有时我们会忘记这样做。
例如,如果您在本地登录,则无法使用 xrdp 进行远程登录。相反,如果您使用 xrdp 进行远程登录,则无法在本地登录。xrdp 的这一限制可能会在未来版本中被删除。
解决方案
以下过程适用于 Ubuntu 23.10。我已经在虚拟机上对其进行了测试。
打开本地虚拟终端
使用 远程连接到本地计算机xrdp
。
物理前往远程计算机。您将无法使用 GUI 方法登录。按Ctrl+ Alt+打开虚拟终端(仅键盘界面) F3。这将打开一个黑屏并提示:
login:
输入您的用户名,然后按回车键并在提示时输入您的密码。输入密码时,您不会看到光标移动或任何****。这是正常的。
查找会话列表
现在在终端输入以下命令:
loginctl list-sessions
您将会看到类似这样的输出:
SESSION UID USER SEAT TTY
2 1000 aniket32 seat0 tty3
c1 120 gdm seat0 tty1
c2 1000 aniket32
3 sessions listed.
请注意,没有任何 SEAT 和 TTY 的用户 aniket32 的 SESSION ID。在上面的示例中,它是c2
。您的可能有所不同。
终止远程会话
当您执行此操作时,您可能打开的任何未保存的文件更改都将丢失。
现在使用以下命令来终止该会话:
sudo loginctl kill-session c2
出现提示时输入您的密码。
这应该会终止远程xrdp
会话。如果远程 xrdp 连接处于活动状态,则它将使用此命令关闭。
退出虚拟终端
现在您可以通过输入来退出虚拟终端“TTY3” logout
Enter。交替按下组合键Ctrl+ D。
正常登录
要返回 GDM 登录屏幕,请按Ctrl+ Alt+ F1。现在您应该看到正常的登录屏幕并照常登录。
替代解决方案
来源:打开 Xrdp 会话后本地 Ubuntu 桌面无法登录
当您未使用 xrdp 登录时,在远程计算机上本地登录。/etc/xrdp/sesman.ini
使用 `sudo打开文件:
sudo nano `/etc/xrdp/sesman.ini`
寻找以下行:
KillDisconnected=false
并使其看起来像:
KillDisconnected=60s
Ctrl按+保存更改S。按Ctrl+退出 nano X。
直到重新启动 xrdp,更改才会生效。通过以下方式重新启动 xrdp 服务:
sudo systemctl restart xrdp.service
进行此更改后,一旦您断开远程 xrdp 连接而不远程注销,远程会话将在 60 秒后关闭。也就是说,您可能打开的文件的任何未保存的更改都将丢失。从好的方面来说,您将能够本地登录。
希望这可以帮助