J'ai posé la même question à Google et je n'ai pas aimé les résultats que j'ai obtenus.
Qu'est-ce que c'est /tmp/.X11-unix/
?
J'ai posé la même question à Google et je n'ai pas aimé les résultats que j'ai obtenus.
Qu'est-ce que c'est /tmp/.X11-unix/
?
Réponses:
Sur mon ordinateur portable Arch, assez à jour, se /tmp/.X11-unix/
trouve un répertoire avec une entrée:X0
:, une socket de domaine Unix .
Le serveur X11 (généralement Xorg
nos jours) communique avec des clients comme xterm
Firefox, etc. via une sorte de flux d'octets fiable. Un socket de domaine Unix est probablement un peu plus sécurisé qu'un socket TCP ouvert au monde, et probablement un peu plus rapide, car le noyau fait tout, et n'a pas besoin de s'appuyer sur une carte Ethernet ou sans fil.
Mon serveur X11 apparaît comme:
bediger 294 293 0 Apr09 tty1 01:23:26 /usr/lib/xorg-server/Xorg -nolisten tcp :0 vt1 -auth /tmp/serverauth.aK3Lrv5hMV
Le "-nolisten tcp" l'empêche d'ouvrir le port TCP 6000 pour les communications.
La commande lsof -U
peut vous dire quels processus utilisent quels sockets de domaine Unix. Je vois Xorg
comme connecté à /tmp/.X11-unix/X0
.
Le serveur X a plusieurs façons de communiquer avec les clients X (applications). Le plus courant à utiliser, au moins sur la même machine, est un socket de domaine Unix.
Un socket de domaine Unix est comme les TCP plus familiers, sauf qu'au lieu de se connecter à une adresse et un port, vous vous connectez à un chemin . Vous utilisez un fichier réel (un fichier socket) pour vous connecter.
Le serveur X place son socket dans /tmp/.X11-unix
:
$ ls -l /tmp/.X11-unix/X0
srwxrwxrwx 1 root root 0 Dec 18 18:03 /tmp/.X11-unix/X0
Notez le s
devant des autorisations, ce qui signifie que c'est un socket. Si vous avez plusieurs serveurs X en cours d'exécution, vous y trouverez plusieurs fichiers.
Au moins avec les pages de manuel Linux, plus de détails sur les sockets (en général) peuvent être trouvés dans man 7 socket
. Les détails sur les sockets de domaine Unix sont disponibles man 7 unix
. Notez que ces pages sont destinées aux programmeurs.
/tmp/.X11-unix/X{n} est l'endroit où le serveur X place les sockets AF_DOMAIN à l'écoute. Près du même endroit sont /tmp/.X{n}-lock étant des verrous. Comme indiqué dans https://bugzilla.redhat.com/show_bug.cgi?id=503181, ce schéma n'est pas bon pour le FHS.