xhost: невозможно открыть дисплей “desktop:0”

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

ОБНОВЛЕНИЕ 1: Я не использую SSH. Я использую локальную машину.

ОБНОВЛЕНИЕ 2: Я перезагрузил X и заметил, что файл Xauthority, в который я экспортирую, действительно обновляется:

$ sudo systemctl restart display-manager
$ ls /run/user/1000/gdm/Xauthority*
-rwx------ 1 mona mona 96 25 янв 16:07 /run/user/1000/gdm/Xauthority

Также, после перезагрузки X, два других файла Xauthority, а именно /run/user/1000/gdm/Xauthority-c и /run/user/1000/gdm/Xauthority-l, исчезли, как видно ниже:

$ fd Xauthority /
/run/user/1000/gdm/Xauthority

и я могу вызвать xauth после перезагрузки:

$ xauth
Используя файл авторизации /run/user/1000/gdm/Xauthority
xauth> 

Следуя “Недействительный ключ MIT-MAGIC-COOKIE-1” при попытке запустить программу удаленно я попробовал:

[9080:9072 0:2035] 02:14:50 Пн 25 янв [mona@goku:pts/0 +1] ~/research/code/vision/integration
$ export DISPLAY=desktop:0
18838/31772MB(vision)

и затем:

$ xhost +local: 
xhost:  невозможно открыть дисплей "desktop:0"

как я могу решить эту проблему?

$ lsb_release -a
Версия LSB:    core-11.1.0ubuntu2-noarch:security-11.1.0ubuntu2-noarch
Идентификатор дистрибьютора: Ubuntu
Описание:    Ubuntu 20.04.1 LTS
Версия:    20.04
Имя кодовой версии:   focal

Еще один подобный пример:

$ xclock
Ошибка: Невозможно открыть дисплей: desktop:0

Больше деталей:

$ xclock
Ошибка: Невозможно открыть дисплей: desktop:0
27296/31772MB
[3266:3258 3:2008] 02:54:16 Пн 25 янв [mona@goku:pts/0 +1] ~
$ export DISPLAY=":0.0"
26016/31772MB
[3266:3258 3:2009] 02:57:24 Пн 25 янв [mona@goku:pts/0 +1] ~
$ xclock
Недействительный ключ MIT-MAGIC-COOKIE-1Ошибка: Невозможно открыть дисплей: :0.0
$ export DISPLAY=":0"
26238/31772MB
[3266:3258 3:2011] 02:57:40 Пн 25 янв [mona@goku:pts/0 +1] ~
$ xclock
Недействительный ключ MIT-MAGIC-COOKIE-1Ошибка: Невозможно открыть дисплей: :0
$ xhost +mona
Недействительный ключ MIT-MAGIC-COOKIE-1 Ошибка: невозможно открыть дисплей ":0"
$ firefox
Недействительный ключ MIT-MAGIC-COOKIE-1 Невозможно инициализировать сервер: Не удалось подключиться: Подключение отклонено
Ошибка: невозможно открыть дисплей: :0
 
 
$ xclock
Недействительный ключ MIT-MAGIC-COOKIE-1Ошибка: Невозможно открыть дисплей: :0
25694/31772MB
[3266:3258 3:2026] 03:04:35 Пн 25 янв [mona@goku:pts/0 +1] ~
$ export DISPLAY=desktop:0
25694/31772MB
[3266:3258 3:2027] 03:04:49 Пн 25 янв [mona@goku:pts/0 +1] ~
$ xclock
Ошибка: Невозможно открыть дисплей: desktop:0

Также у меня есть странные символы в файле Xauthority:

$  xrandr | nc termbin.com 9999
Недействительный ключ MIT-MAGIC-COOKIE-1 Невозможно открыть дисплей :0
21618/31772MB
[9136:3258 0:2002] 03:49:16 Пн 25 янв [mona@goku:pts/2 +1] ~
$ fd Xauthority /
/run/user/1000/gdm/Xauthority
/run/user/1000/gdm/Xauthority-c
/run/user/1000/gdm/Xauthority-l
22048/31772MB
[9136:3258 0:2003] 03:51:26 Пн 25 янв [mona@goku:pts/2 +1] ~
$ cat /run/user/1000/gdm/Xauthority-c
22048/31772MB
[9136:3258 0:2004] 03:51:49 Пн 25 янв [mona@goku:pts/2 +1] ~
$ cat /run/user/1000/gdm/Xauthority-l
22081/31772MB
[9136:3258 0:2005] 03:51:58 Пн 25 янв [mona@goku:pts/2 +1] ~
$ cat /run/user/1000/gdm/Xauthority
gokuMIT-MAGIC-COOKIE-1R��9��s{�H��H�l��gokuMIT-MAGIC-COOKIE-1R��9��s{�H��H�l22081/31772MB
[9136:3258 0:2006] 03:52:03 Пн 25 янв [mona@goku:pts/2 +1] ~

Также установка его на найденный файл Xauthority не решила проблему:

$ export XAUTHORITY=/run/user/1000/gdm/Xauthority
22022/31772MB
[9136:3258 0:2010] 03:54:31 Пн 25 янв [mona@goku:pts/2 +1] ~
$ xclock
Недействительный ключ MIT-MAGIC-COOKIE-1Ошибка: Невозможно открыть дисплей: :0

Я uid 1000:

uid=1000(mona) gid=1000(mona) группы=1000(mona),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),120(lpadmin),131(lxd),132(sambashare)

У меня также есть следующее о xauth:

$ xauth info
Файл авторизации: /run/user/1000/gdm/Xauthority
Новый файл: нет
Файл заблокирован: нет
Количество записей: 2
Изменения учтены: да
Изменения сделаны: нет
Текущий ввод: (argv):1
21740/31772MB
[11979:11971 0:2016] 05:26:34 Пн 25 янв [mona@goku:pts/0 +1] ~
$ xauth list
goku/unix: MIT-MAGIC-COOKIE-1 SECRET_KEY
#ffff#676f6b75#: MIT-MAGIC-COOKIE-1 SECRET_KEY

введите описание изображения здесь

$  export DISPLAY=:1.0

сработало для меня.

введите описание изображения здесь

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

Ошибка xhost: unable to open display "desktop:0" может быть вызвана несколькими причинами, связанными с настройками X11 и авторизацией доступа к дисплею. Чтобы понять, как исправить данную проблему, давайте детально разберем возможные причины и решения, основываясь на предоставленной вами информации.

1. Установка переменной DISPLAY

Вы правильно заметили, что команда export DISPLAY=desktop:0 не сработала. По умолчанию переменная DISPLAY для X-сессии обычно устанавливается в формате :0.0 или просто :0. Попробуйте команду:

export DISPLAY=:0

или

export DISPLAY=:0.0

2. Проверка наличия X-сессии

Убедитесь, что вы используете активную сессию X11. Вы можете проверить это с помощью команды:

ps aux | grep X

Это должно показать запущенный процесс X-сервера. Если в процессе отсутствует, необходимо запустить X-сервер.

3. Аутентификация с помощью MIT-MAGIC-COOKIE

Ошибка Invalid MIT-MAGIC-COOKIE-1 key указывает на проблемы с аутентификацией. Если вы видите странные символы в вашем файле .Xauthority, это может свидетельствовать об его повреждении. Попробуйте удалить текущий файл .Xauthority и создать новый:

rm ~/.Xauthority
xauth generate :0 . trusted

После этого проверьте, был ли создан новый файл .Xauthority, и повторите попытку.

4. Проверка хостов

Команда xhost +local: не сработала из-за ошибки "unable to open display". Прежде чем запускать её, убедитесь, что переменная DISPLAY корректно настроена на текущую сессию. Если это не помогает, попробуйте:

xhost +SI:localuser:$(whoami)

Это добавит разрешения для вашего локального пользователя.

5. Перезагрузка дисплейного менеджера и очистка кэша

Если ничто из вышеперечисленного не сработало, попробуйте перезапустить дисплейный менеджер:

sudo systemctl restart display-manager

После перезагрузки снова проверьте файлы Xauthority и настройте переменные окружения.

6. Замечание о gdm

Вы используете gdm как дисплейный менеджер. Убедитесь, что ваш пользователь имеет права доступа для управления выводом X-сервера. Если вы работаете под другим пользователем (не под mona), это может вызвать проблемы.

Заключение

Создайте новую X-сессию с нужными переменными окружения и проверьте права доступа. Если все еще возникают проблемы, рассмотрите обновление или переустановку пакетов, связанных с X11 и gdm, поскольку это может решить проблемы с поврежденными зависимостями.

Если все вышеперечисленное не помогает, можете обратиться за помощью к сообществу Ubuntu или на форумы, предоставив всю полученную информацию.

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

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