Intereting Posts

XServer: как проверить, кто / что использует отображение: N

У меня странная ситуация. Это мои команды и их выходы:

user@machine:~/Temp$ Xvfb :10 -screen 0 1024x768x16 _XSERVTransSocketINETCreateListener: ...SocketCreateListener() failed _XSERVTransMakeAllCOTSServerListeners: server already running (EE) Fatal server error: (EE) Cannot establish any listening sockets - Make sure an X server isn't already running(EE) user@machine:~/Temp$ Xvfb :11 -screen 0 1024x768x16 _XSERVTransSocketINETCreateListener: ...SocketCreateListener() failed _XSERVTransMakeAllCOTSServerListeners: server already running (EE) Fatal server error: (EE) Cannot establish any listening sockets - Make sure an X server isn't already running(EE) user@machine:~/Temp$ Xvfb :12 -screen 0 1024x768x16 started... 

Как вы видите, dipslay: 10 и дисплей: 11 не являются бесплатными. Однако в / tmp нет файлов .x10-lock и .x11-lock. Кроме того, в /tmp/.X11-unix нет файлов = x10 и = x11.

Как я могу узнать, почему дисплеи 10 и 11 не являются бесплатными?

Вы можете узнать

 lsof -i TCP:6010 

Как root, это покажет прослушиватели TCP, используя дисплей X11: 10; измените 6010 на 6011 для отображения: 11 и т. д .; или используйте такой диапазон, как TCP:6000-6020 .

Аналогичным образом вы можете проверить наличие прослушивателей сокетов, если это тоже проблема для вас (вы только получаете сообщение об ошибке для прослушивателя INET выше, так что это еще не так). Например, если вы запустите свой Xorg с помощью -nolisten tcp , вы увидите его в результатах lsof /tmp/.X11-unix/* .

Вы можете комбинировать оба:

 lsof -iTCP:6000-6020 /tmp/.X11-unix/*