Вопрос или проблема
Неожиданно я получаю пустой экран при запуске на Arch Linux. Зайдя в TTY, я вижу
xset: не удается открыть дисплей ""
Не удалось подключиться к X серверу
Я использую X11, LightDM и i3. Здесь LightDM, похоже, может показать пустой экран с крестиком в качестве курсора (как во время запуска, так и после выполнения lightdm
в TTY).
Я подозреваю, что это может быть вызвано i3, так как файл ~/.xsession-errors
содержит следующее
i3status: пытаюсь автоматически определить настройку output_format
i3status: автоматически определено "i3bar"
i3status: выходим из-за сигнала.
Тем не менее, выполнение exec i3 -V -d all &>> "$HOME/i3.log"
показывает только i3: Невозможно открыть дисплей
, так что, возможно, это не i3.
Когда я запускаю htop
, я вижу, что Xorg
работает с командой
/usr/lib/Xorg :0 -seat seat0 -auth /run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch
что должно говорить мне о том, что правильный дисплей действительно :0
. Я попробовал export DISPLAY=":0"
, но не знаю, что делать после этого.
Я обновил свою систему вчера через pacman, могло ли что-то из этого стать причиной? Я вижу, что i3wm
для Arch был обновлен несколько дней назад, что может это объяснять.
Что мне делать, чтобы это заработало?
Это не имело ничего общего ни с i3, ни с LightDM, это была только плохая конфигурация с X11.
Моя конфигурация, как видно в моем вопросе, не работала с моим вторичным монитором, но работала так, как и предполагалось, для моего основного монитора. Теперь, вдруг, кажется, что X11 определил мой основной монитор как вторичный в моей конфигурации, хотя я не подключал второй монитор около полугода.
Поэтому я просто удалил все в конфигурации, что предназначалось для моего второго монитора, и теперь это работает.
Ответ или решение
Проблема с черным экраном на этапе загрузки и сообщением об ошибке «xset: unable to open display ""» может быть связана с неправильной конфигурацией X11. Хотя в вашем случае вы подозревали i3 или LightDM, на самом деле проблема касалась конфигурации X-сервера.
Судя по предоставленной вами информации, вы видите, что Xorg работает, и это хороший знак. Однако, судя по содержимому ~/.xsession-errors
, видно, что i3status не может корректно запуститься, что может указывать на проблемы с выводом.
Основной причиной вашей проблемы является неправильная настройка конфигураций, связанных с мониторами. Иногда может случиться так, что X-сервер неправильно идентифицирует основной и вторичный мониторы, особенно если вы не использовали второй монитор в течение длительного времени. В вашем случае, X11, вероятно, ошибочно определил ваш основной монитор как вторичный, что и привело к возникновению ошибки.
Чтобы решить эту проблему, выполните следующие шаги:
-
Проверьте и отредактируйте конфигурацию X11:
Откройте файл конфигурации X11, который обычно находится по пути/etc/X11/xorg.conf
или в папке/etc/X11/xorg.conf.d/
. Убедитесь, что в нем нет ссылок на ваш вторичный монитор, если вы его не планируете использовать. Если вы не уверены, лучше временно переместите файл конфигурации в другое место, чтобы X-сервер использовал настройки по умолчанию. -
Запустите X11 с параметрами по умолчанию:
После внесения изменений попробуйте перезапустить LightDM:sudo systemctl restart lightdm
Это позволит X-серверу заново инициализироваться с новой конфигурацией.
-
Консольный доступ и установленный драйвер:
Если проблема не устраняется, попробуйте зайти в TTY и переустановить драйвер для вашего графического устройства. Например, если у вас видеокарта NVIDIA, используйте:sudo pacman -S nvidia nvidia-utils
и для AMD:
sudo pacman -S xf86-video-amdgpu
-
Проверьте логи:
Если ни один из методов не сработал, посмотрите логи X-сервера в/var/log/Xorg.0.log
для выявления возможных ошибок или предупреждений, которые могут помочь диагностировать проблему. -
Используйте утилиты для настройки мониторов:
Вы можете также использовать такие утилиты, какarandr
илиxrandr
, для управления и конфигурации ваших мониторов после того, как X-сервер запустится.
Следуя этим шагам, вы сможете устранить проблемы с конфигурацией мониторов и восстановить работу X-сервера, а также вернуть нормальную функциональность вашего рабочего стола i3.