Sco*_*pta 8 linux chroot xorg x11 socket
我有一个 chroot 设置,我一直在运行图形应用程序,没有问题。我所做的唯一设置是设置DISPLAY=:0
并且它有效。但是,我一直认为 Unix 域套接字用于 X11,所以我无法弄清楚为什么会这样。我做了一些挖掘,结果证明我是对的。我的 X.org 服务器是用-nolisten tcp
标志启动的,我有一个 unix 域套接字,/tmp/.X11-unix
但不知何故我的 chroot 可以在没有任何套接字的情况下在该 X11 显示器上启动图形应用程序。我从来没有将套接字硬链接到 chroot,事实上它们甚至不在同一个文件系统上。/tmp/.X11-unix
在 chroot 上是完全空的。我的 chroot 怎么可能在我的 X11 显示器上启动图形应用程序?
X 服务器还支持抽象套接字,其工作方式与 UNIX 套接字相同,并且具有与 UNIX 套接字类似的路径名,但路径名以 NUL 字符开头。请参阅unix(7)联机帮助页中“抽象”的文档。抽象套接字有效地存在于所有文件系统名称空间和 chroot 中;您无需将任何内容链接到 chroot 或命名空间即可使用它。
也许X服务器和客户端都使用抽象套接字进行通信?使用标准 X 客户端库的 X 客户端将在尝试使用默认 UNIX 套接字之前自动尝试使用抽象套接字。在 libxcb 中,请参阅src/xcb_util.c中的_xcb_open
和。_xcb_open_abstract
归档时间: |
|
查看次数: |
643 次 |
最近记录: |