使用 XRDP 时出现“无法加载会话“ubuntu-2d”

Geo*_*ker 16 rdp 12.10 xrdp

最初,当我尝试使用 RDP 登录到我的 ubuntu 机器(版本 12.10)时,我会得到一个 ubuntu 桌面背景,没有文本、菜单栏或任何表明它已加载桌面的内容。

我经历了以下声称可以解决该问题的说明:

编辑.Xsession文件以添加以下行:

gnome-session –session=ubuntu-2d
Run Code Online (Sandbox Code Playgroud)

但它导致了以下错误:

无法加载会话“ubuntu-2d

它只允许我注销。

所以现在,我的问题是:

如何使用 XRDP 以万无一失的方式登录到我的 Ubuntu 桌面。我可以成功通过 SSH 连接到命令行,所以我需要安装另一个窗口管理器吗?我需要重置一些设置吗?

小智 19

从 Ubuntu 12.10 开始,Unity 2D 桌面界面(“Ubuntu 2D”)不再存在。通常,没有足够 3D 加速的计算机使用 llvmpipe 软件渲染器。

由于 Unity 2D 曾经是将 xRDP 导入 Ubuntu 系统的简单方法,因此删除它需要使用不同的技术。幸运的是,有一个解决方案:

安装 xRDP

该页面提供了一种安装 xRDP 的迂回方式,但实际上它和以前一样简单。安装xrdp安装 xrdp在软件中心。或者通过运行从终端安装:

sudo apt-get update && sudo apt-get upgrade
Run Code Online (Sandbox Code Playgroud)

如果未找到,请确保在您的软件源中启用了 Universe 存储库组件。(如果这是一个无头系统,请改用这种命令行方式。)

安装不需要(真实或模拟)3D 加速的桌面界面

Grifon 的说明推荐GNOME Fallback(提供“GNOME Classic”会话类型)。在GNOME的会话回退安装 gnome-session-fallback 包提供了它。

sudo apt-get install gnome-session-fallback
Run Code Online (Sandbox Code Playgroud)

sudo apt-get update如果您最近没有这样做,最好先运行。)

其他替代方案包括:

创建~/.xsession指定 xRDP 所需接口的文件

在您希望通过 xRDP 登录的一个或多个用户的主目录中,创建一个名为.xsession. 您可以使用任何文本编辑器(例如 Gedit)执行此操作。创建后,此文件在文件管理器中将不可见,除非启用了“查看”>“显示隐藏文件”(或类似)。在 Nautilus 和大多数其他文件管理器中,Ctrl+ 就是H这样做的。

制作这个文件的最快和最简单的方法可能是终端——一个命令就可以创建它。

要使用 GNOME Fallback(“GNOME Classic(无效果)”):

echo gnome-session --session=gnome-fallback > ~/.xsession
Run Code Online (Sandbox Code Playgroud)

或者,使用 Xfce(“Xubuntu 会话”):

echo xfce4-session > ~/.xsession
Run Code Online (Sandbox Code Playgroud)

或者,使用 LXDE(“Lubuntu 桌面”):

echo lxsession -s Lubuntu -e LXDE > ~/.xsession
Run Code Online (Sandbox Code Playgroud)

配置键盘布局

如果您想要英文键盘布局,则无需为此步骤执行任何操作。

否则,要将 xRDP 配置为使用不同的键盘布局,请参阅本文的“解决 xRDP 会话中的键盘布局问题”部分(博文的其余部分仅适用于 Ubuntu 的早期版本;该博文链接到来自那些12.10 的说明)。

现在它应该可以工作了!

Griffon指出,不幸的是,在 GNOME Fallback 中,通常的注销方式不起作用(通过 xRDP 连接时)。相反,通过运行以下命令注销:

gnome-session-quit --logout
Run Code Online (Sandbox Code Playgroud)

您可以为此打开一个终端窗口 ( Ctrl+ Alt+ T),但您也可以只使用运行对话框 ( Alt+ F2)。

在其他桌面环境中,注销可能仍然有效,但如果无效,您可以使用它们的大致等效gnome-sesison-quit命令:

Xfce: xfce4-session-logout --logout

LXDE: lxsession-logout

致谢

这里的大部分信息都来自那篇博文(尽管没有复制文本)。