Не удается запустить графические приложения из терминала после обновления до 15.10


10

После обновления до 15.10 невозможно запустить графические приложения из терминала:

xxx@xxx:~$ gksudo wireshark
Invalid MIT-MAGIC-COOKIE-1 key
(gksudo:5532): Gtk-WARNING **: cannot open display: :0
xxx@xxx:~$ sudo -H wireshark
[sudo] password for xxx: 
Invalid MIT-MAGIC-COOKIE-1 key
** (wireshark:5535): WARNING **: Could not open X display
Invalid MIT-MAGIC-COOKIE-1 keyFailed to connect to Mir: Failed to connect to server socket: No such file or directory
Unable to init server: Could not connect: Connection refused

(wireshark:5535): Gtk-WARNING **: cannot open display: :0
xxx@xxx:~$ wireshark
Invalid MIT-MAGIC-COOKIE-1 key
** (wireshark:5569): WARNING **: Could not open X display
Invalid MIT-MAGIC-COOKIE-1 keyFailed to connect to Mir: Failed to connect to server socket: No such file or directory
Unable to init server: Could not connect: Connection refused

(wireshark:5569): Gtk-WARNING **: cannot open display: :0
xxx@xxx:~$ gedit
Invalid MIT-MAGIC-COOKIE-1 key
** (gedit:5570): WARNING **: Could not open X display
Invalid MIT-MAGIC-COOKIE-1 keyFailed to connect to Mir: Failed to connect to server socket: No such file or directory
Unable to init server: Could not connect: Connection refused

(gedit:5570): Gtk-WARNING **: cannot open display: :0
xxx@xxx:~$ sudo gedit
Invalid MIT-MAGIC-COOKIE-1 key
** (gedit:5574): WARNING **: Could not open X display
Invalid MIT-MAGIC-COOKIE-1 keyFailed to connect to Mir: Failed to connect to server socket: No such file or directory
Unable to init server: Could not connect: Connection refused

(gedit:5574): Gtk-WARNING **: cannot open display: :0

Мое небольшое исследование указало на использование gksudo, но оно также не работает. Я также попробовал кое-что с xauth. В чем проблема? Спасибо.


1
Попробуйте удалить .Xauthority- sudo rm -f ~/.Xauthorityи затем перезапустить.
UniversallyUniqueID

Нет, тоже самое
сссемил

Ответы:


15

Как обычный пользователь, запустите команду xhost +. После этого попробуйте снова запустить графическое приложение.

Это отключает управление доступом на основе хоста на X-сервере. Вот соответствующая информация со страницы руководства:

Программа xhost используется для добавления и удаления имен хостов или имен пользователей в список, которому разрешено устанавливать соединения с X-сервером.

+ Доступ предоставляется всем, даже если их нет в списке (т.е. контроль доступа отключен).


У меня были проблемы, когда я могу открыть приложения с графическим интерфейсом из терминала root, но не как обычный пользователь. В этом случае запуск xhost +в режиме « как» rootпозволил мне запускать приложения с графическим интерфейсом как обычный пользователь.
Крейг Отис

Это сработало! Спасибо!
Мухаммед бин Юсрат

3

Странно, но export DISPLAY=:1помогло. Приветствия.


2
Вы используете несколько дисплеев X или что-то? По умолчанию должно быть:0
UniversallyUniqueID

2
точно такой же вопрос (16.04 в моем случае); к сожалению это не работает
adam.smith

Нет, только один. «: 0» всегда было по умолчанию, но что-то изменилось после обновления.
Сссемил

1
В моем случае установка DISPLAY в: 0 решила это (а 1 нет)
mbello

В моем случае установка DISPLAY на: 2 решила это. Просто надо продолжать пытаться.
Zkytony

0

В моем случае такая же проблема обнаружена после обновления одного пакета gnome-shellчерез synaptic-package-manager. Сразу после следующего входа в систему я не смог получить доступ к какой-либо части графического интерфейса операционной системы. Сделал много поисков, в конце концов,

когда я использовал apt install gdm3из терминала режима восстановления, я смог найти приглашение для входа в систему после загрузки системы (только терминал, а не графический интерфейс).

После этого я попробовал apt install gnomeустановить целую кучу компонентов, после завершения загрузки я смог перевести свою ОС в режим графического интерфейса.

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


0

Предупреждение. Неправильное использование xhost может непреднамеренно предоставить каждому узлу в Интернете полный доступ к серверу X Display.

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

Решение:

Выполнение: xhost +si:localhost:root

Вышеупомянутое решение также работает для пользователей Wayland, выполняющих приложение XWayland с повышенными правами.

При попытке запустить приложение XWayland с повышенными разрешениями вы можете получить следующую ошибку:

No protocol specified
Unable to init server: Could not connect: Connection refused
Could not parse arguments: Cannot open display:
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.