O que é '/tmp/.X11-unix/'?

29

Eu fiz a mesma pergunta ao Google e não gostei dos resultados que obtive.

O que é /tmp/.X11-unix/ ?

    
por ThorSummoner 16.04.2015 / 20:42

3 respostas

19

No meu laptop Arch bastante atualizado, /tmp/.X11-unix/ é um diretório com uma entrada: X0 , um Unix soquete de domínio .

O servidor X11 (normalmente Xorg nos dias de hoje) comunica-se com clientes como xterm , firefox, etc., por meio de algum tipo de fluxo confiável de bytes. Um soquete de domínio Unix é provavelmente um pouco mais seguro que um soquete TCP aberto ao mundo, e provavelmente um pouco mais rápido, já que o kernel faz tudo, e não precisa depender de uma placa ethernet ou wireless.

Meu servidor X11 é exibido como:

bediger    294   293  0 Apr09 tty1     01:23:26 /usr/lib/xorg-server/Xorg -nolisten tcp :0 vt1 -auth /tmp/serverauth.aK3Lrv5hMV

O "-nolisten tcp" impede que ele abra a porta TCP 6000 para comunicações.

O comando lsof -U pode dizer quais processos estão usando quais soquetes de domínio Unix. Eu vejo Xorg como conectado a /tmp/.X11-unix/X0 .

    
por 16.04.2015 / 20:58
11

O servidor X tem várias maneiras de se comunicar com clientes X (apps). O mais comum para usar, pelo menos na mesma máquina, é um soquete de domínio Unix.

Um soquete de domínio Unix é como os TCP mais familiares, exceto que, em vez de se conectar a um endereço e porta, você se conecta a um caminho . Você usa um arquivo real (um arquivo de soquete) para se conectar.

O servidor X coloca seu soquete em /tmp/.X11-unix :

$ ls -l /tmp/.X11-unix/X0 
srwxrwxrwx 1 root root 0 Dec 18 18:03 /tmp/.X11-unix/X0

Observe o s na frente das permissões, o que significa que é um soquete. Se você tem vários servidores X em execução, você terá mais de um arquivo.

Pelo menos com as páginas de manual do Linux, mais detalhes sobre soquetes (em geral) podem ser encontrados em man 7 socket . Detalhes sobre soquetes do domínio Unix estão em man 7 unix . Note que estas páginas são focadas no programador.

    
por 16.04.2015 / 20:57
1

/tmp/.X11-unix/X {n} é onde o servidor X coloca escuta soquetes AF_DOMAIN. Perto do mesmo local estão /tmp/.X{n}-lock sendo bloqueios. Como é discutido no link este esquema não é bom para a ESF.

    
por 13.01.2018 / 10:48

Tags