Проблема Xauthority xdpyinfo: не удается открыть дисплей “”.

Вопрос или проблема

Я пытаюсь запустить программу после включения перенаправления портов X windows.

Мой файл sshd_config в /etc/ssh/sshd_config настроен следующим образом:

X11Forwarding yes
X11DisplayOffset 10
X11UseLocalhost yes

и мой файл ssh_config в /etc/ssh/ssh_config имеет:

Host *
ForwardAgent yes
ForwardX11 yes

Я пытаюсь включить перенаправление портов X Windows с помощью

lemon:~ # ssh -X localhost
lemon:~ # echo $DISPLAY

lemon:~ # /usr/bin/SMclient
xdpyinfo:  unable to open display "".
Unable to launch GUI due to X server display setting problem, Exiting .

Таким образом, $DISPLAY не установлен. Я попробовал все, что видел в интернете. Изначально не было файла .Xauthority, поэтому я скопировал из
/var/run/gdm/auth-for–/database
и переименовал файл в .Xauthority

Затем я попробовал

lemon:~ # xauth generate :0 . trusted
Invalid MIT-MAGIC-COOKIE-1 keyxauth: (argv):1:  unable to open display ":0".

Когда это не сработало, я удалил старый файл .Xauthority и затем:

lemon:~ # touch ~/.Xauthority
lemon:~ # xauth generate :0 . trusted
No protocol specified
xauth: (argv):1:  unable to open display ":0".  

И многие другие предлагали запустить host +, что просто приводит к

lemon:~ # xhost +
xhost:  unable to open display ""

Вместе со всем вышеперечисленным на macOS13 Ventura вы должны:
В Системных настройках, Общие, Разрешить в фоновом режиме, XQuartz должен быть включен.

Ответ или решение

Конечно, давайте рассмотрим эту проблему более детально и предложим решение, используя методу FOREST: Focus, Empathy, Reverence, Education, Simplicity, Trust.

Фокус: Описание проблемы

Вы сталкиваетесь с проблемой подключения X Window с использованием X11-перенаправления через SSH. Программа выдает ошибку xdpyinfo: unable to open display "", что указывает на проблемы в настройке переменной окружения $DISPLAY, и вы не можете запустить графический интерфейс. Настройки файлов sshd_config и ssh_config кажутся корректными, однако это не решает проблему.

Эмпатия: Осознание вашей ситуации

Вероятно, это вызывает у вас чувство разочарования, особенно если вы потратили много времени на поиск решения. Важно понимать, что такие проблемы возникают часто и их возможно решить систематичным подходом.

Реверенция: Изучение возможных причин

Для успешной работы X11-перенаправления необходимо соблюдение нескольких условий. Проблема может находиться в настройках SSH-сессии, конфигурации X сервера, или в правах доступа файлов .Xauthority.

Образование: Шаги решения проблемы

  1. Проверка X-сервера:

    • Убедитесь, что X-сервер работает и доступен. В macOS необходимо установить и запустить XQuartz — это может быть выполнено через Системные Настройки, вкладка "Разрешить в фоновом режиме".
  2. Проверка переменной DISPLAY:

    • После входа в систему через ssh, переменная окружения $DISPLAY должна автоматически устанавливаться. Если этого не происходит, возможно, проблема в самом вызове ssh. Попробуйте подключиться с использованием параметра -Y, который иногда работает лучше, чем -X: ssh -Y username@host.
  3. Создание корректного файла .Xauthority:

    • Убедитесь в корректности файла .Xauthority. Удаление файла и его повторное создание может быть полезно, но файл должен создаваться корректным образом, без ручного копирования с других источников. Автоматическая генерация правильного файла в большинстве случаев предпочтительнее.
  4. Включение разрешений:

    • Проверка файла /etc/hosts на наличие правильной записи для localhost.
    • Команда xhost + требует корректно установленного DISPLAY, поэтому до её выполнения необходимо удостовериться, что все предыдущие шаги соблюдены.
  5. Логи и права доступа:

    • Изучение логов SSH и X сервера для поиска дополнительных ошибок.
    • Проверка прав доступа к файлам конфигурации и Ensure что пользователь имеет необходимый доступ к X11.

Простота: Советы по устранению неисправностей

Подстройте систему пошагово, проверяйте каждый измененный параметр сразу. В сложных системах, таких как X11-пересылка, маленькие детали могут играть ключевую роль.

Доверие: Последующие действия

При выполнении данных шагов, проблема должна будет решиться. Однако, если трудности сохранятся, рекомендуется обратиться к более глубоким логам системы или специалисту. Это поможет избежать возможных ошибок в безопасности и добиться стабильной работы системы.

Оцените материал
Добавить комментарий

Капча загружается...