Tim*_*son 5 nx systemd-logind x2go snap
Ubuntu 中的 snap 应用程序在 nomachine 虚拟桌面或 x2go 中启动时会出现错误,并且它们不会运行。这仅适用于有限的快照,这是其中的大多数。
nomachine 虚拟桌面与 nomachine 工作站服务器或其他终端服务器类型的产品相关联,而不是与基本的 nomachine 桌面共享客户端相关联。我不使用 x2go,但用户报告了相同的问题,所以我猜它也是共享虚拟桌面。
已知的解决方法是通过禁用 cgroups v2 来更改快照沙箱,或者手动模拟 DBUS_SESSION_BUS_ADDRESS 的正常值。第一个解决方案简单但引人注目,因为 cgroups v2 是现代 Linux 体验的重要组成部分,而第二个解决方案是一种可能在多个用户下崩溃的 hack。
我不知道为什么 nomachine 或 x2go 启动会话时 DBUS_SESSION_BUS_ADDRESS 是错误的。当使用这些远程访问应用程序访问虚拟桌面会话时,传统显示管理器不管理登录。Nomachine 自行登录,然后启动图形会话。我认为 x2go 也会做同样的事情。代码路径存在一些差异,导致 DBUS_SESSION_BUS_ADDRESS 出现意外值。我的猜测是 systemd 会话启动逻辑的某些部分不是由 nomachine 或 x2go 调用的。但这对我来说很难理解。我意识到我对 Linux 登录的工作原理没有具体的了解,而且我找不到我能理解的文档。
(我认为连接到物理存在的会话(例如 nomachine 桌面)的“屏幕共享”会话不存在此问题,因为它不会绕过显示管理器)
我的经验是使用 nomachine,但 x2go 用户报告了同样的问题,并且同样的解决方法也适用。
使用 xubuntu 或 ubuntu 中的 nomachine 虚拟桌面,我无法启动 Firefox 等受限快照(除非通过内核参数禁用 cgroups v2)。
从终端启动时的错误如下所示:
tim@ubuntu ~/Desktop $ firefox /user.slice/user-1000.slice/session-c3.scope 不是 snap cgroup
但问题的根本原因之一似乎是 DBUS_SESSION_BUS_ADDRESS
设置不正确。它确实有其价值,但与普通的显示管理器会话非常不同。
在典型的 Ubuntu 登录中,我们会看到如下内容:
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
Run Code Online (Sandbox Code Playgroud)
但在损坏的 nomachine 会话中,我们看到如下内容:
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-ELpK0GVRdC,guid=877c270e0667562ac373497b63ebf31c
Run Code Online (Sandbox Code Playgroud)
如果我手动设置 DBUS_SESSION_BUS_ADDRESS,则受限快照可以工作。
例如,如果在 nomachine 中我像这样启动 xfce:
DefaultDesktopCommand "env
DBUS_SESSION_BUS_ADDRESS=unix:path=$XDG_RUNTIME_DIR/bus /usr/bin/startxfce4"
Run Code Online (Sandbox Code Playgroud)
快照工作。
仅当 cgroups v2 运行时,该问题才会出现在受限快照中。因此,有限的快照(因此沙箱)也一定是一个因素。出于这个原因,许多人相信这是一个快照错误,但快照开发人员却不这么认为。
查看 DBUS_SESSION_BUS_ADDRESS 的奇怪值,我得出结论,会话设置不正确。nomachine 启动会话的方式必须与显示管理器的工作方式不同。DBUS_SESSION_BUS_ADDRESS 在图形会话启动之前在 systemd 登录过程中设置。
另一种可能性是
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-ELpK0GVRdC,guid=877c270e0667562ac373497b63ebf31c
是一个完全有效的值,但该快照的沙箱不喜欢它(不受限制的快照应用程序没有问题)。
最麻烦的解决方法是禁用 cgroups v2,这是 nomachine 所建议的。
为什么 nomachine 或 x2go 登录时 DBUS_SESSION_BUS 不同?
| 归档时间: |
|
| 查看次数: |
8438 次 |
| 最近记录: |