Googleに同じ質問をしたところ、得られた結果が気に入らなかった。
なに/tmp/.X11-unix/
?
Googleに同じ質問をしたところ、得られた結果が気に入らなかった。
なに/tmp/.X11-unix/
?
回答:
私のかなり最新のアーチのラップトップで、/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ドメインソケットは、アドレスとポートに接続する代わりにpathに接続することを除いて、より馴染みのあるTCPソケットに似ています。実際のファイル(ソケットファイル)を使用して接続します。
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には適していません。