X 服务器上的权限混乱

X 服务器上的权限混乱

我按照以下教程进行操作http://fabiorehm.com/blog/2014/09/11/running-gui-apps-with-docker/并能够成功运行 Firefox。但是,重新启动后,我无法从图形登录或通过 为我的用户启动 X。startx它总是出错:

(EE) xf86OpenConsole: Cannot open virtual console 2 (permission denied)

如果我startx以 root 身份运行,它运行良好。如何才能重新获得从我的用户帐户使用 X 的能力?

答案1

虚拟控制台 2 似乎是指 tty2。我在 docker 容器中通过 startx 命令使用 chromium-browser 和 X11 时遇到了这个问题。

为了解决这个问题,我必须在 docker 容器中创建一个用户,将其添加到“tty”组,并确保“tty”组具有读取权限。当我到达那里时,tty2 已经启用了写入权限。

Chmod 供参考:

sudo chmod 660 /dev/tty2

对于读/写所有者、读/写组以及世界而言,什么都没有。

在我的 docker run 命令中,我使用 --device 标志映射了 tty2:

--device=/dev/tty2:/dev/tty2

这为我解决了这个非常具体的问题。我希望这对以后的某些人有所帮助。

答案2

我不确定我做了什么,但我肯定以 root 身份运行了某些不该运行的操作。要使用您的用户运行 Docker 应用程序,请将选项添加-u $UIDdocker run命令中。这将确保权限不会混乱。

相关内容