root进程创建的窗口在X11中有什么特殊权限吗? X 服务器和窗口管理器是由常规用户进程创建的。
答案1
只是为了确保您了解 X11 窗口和在该窗口中运行的进程之间的区别。
对于窗口本身,请参见user414777的回答。创建窗口的进程(例如xterm
)在以 root 身份运行时将拥有额外的权限。
但是,请注意差异:
xterm -e bash
给出一个 xterm 窗口,带有bash
.两者都bash
在xterm
您自己的 UID 下运行。
sudo xterm -e bash
还将创建一个窗口bash
,但现在以 root 身份xterm
运行bash
。
xterm -e sudo bash
再次创建一个带有 的窗口bash
,但现在xterm
在您自己的 UID 下运行并bash
以 root 身份运行。
答案2
不。
如果你真的指的是 X11客户而不是 X11 windows,它仍然是不。
不存在任何特权 X11 客户端的概念,它们都是平等的,并且都可以访问任何 X11 资源。
任何客户端都可以在任何窗口上执行任何操作,包括在其上绘图或更改其属性(如其标题或图标)。任何客户端都可以使用键盘或鼠标。任何客户端都可以使用 XTest 扩展来伪造键盘或鼠标输入。
并且任何客户端都可以踢出另一个客户端XKillClient(3)
(与 Unix 系统调用无关kill(2)
)。