我问Google同样的问题,但不喜欢我得到的结果。
什么/tmp/.X11-unix/
啊
我问Google同样的问题,但不喜欢我得到的结果。
什么/tmp/.X11-unix/
啊
Answers:
在我还算跟上时代的拱门笔记本电脑,/tmp/.X11-unix/
是一个进入的目录:X0
,一个Unix域套接字。
X11服务器(通常现在是Xorg
这些天)xterm
通过某种可靠的字节流与客户端(如Firefox )通信。Unix域套接字可能比向外界开放的TCP套接字要安全一些,并且可能要快一些,因为内核可以完成所有工作,并且不必依赖以太网或无线卡。
我的X11服务器显示为:
bediger 294 293 0 Apr09 tty1 01:23:26 /usr/lib/xorg-server/Xorg -nolisten tcp :0 vt1 -auth /tmp/serverauth.aK3Lrv5hMV
“ -nolisten tcp”使它无法打开TCP端口6000进行通信。
该命令lsof -U
可以告诉您哪些进程正在使用哪些Unix域套接字。我认为Xorg
已连接到/tmp/.X11-unix/X0
。
X服务器有几种与X客户端(应用程序)通信的方式。至少在同一台计算机上,最常用的一个是Unix域套接字。
Unix域套接字类似于更熟悉的TCP套接字,不同之处在于,不是连接到地址和端口,而是连接到path。您使用实际文件(套接字文件)进行连接。
X服务器将其套接字放入/tmp/.X11-unix
:
$ ls -l /tmp/.X11-unix/X0
srwxrwxrwx 1 root root 0 Dec 18 18:03 /tmp/.X11-unix/X0
请注意s
权限前面的,这意味着它是一个套接字。如果有多个X服务器正在运行,则那里将有多个文件。
至少在Linux联机帮助页中,有关套接字的更多详细信息(通常)可以在中找到man 7 socket
。有关Unix域套接字的详细信息,请参见man 7 unix
。请注意,这些页面以程序员为中心。
/tmp/.X11-unix/X{n}是X服务器放置监听AF_DOMAIN套接字的位置。/tmp/.X{n}-lock在同一位置附近。正如在https://bugzilla.redhat.com/show_bug.cgi?id=503181中讨论的那样,此方案不是FHS好的方法。