Не удается подключиться к X-серверу при запуске приложения с помощью sudo

Когда я запускаю какое-то программное обеспечение с помощью команды sudo, оно показывает ошибку, подобную

cannot connect to X server

Например, если я запускаю следующую команду:

$ sudo gedit /etc/profile

Я получаю следующую команду

(gedit:6758): WARNING **: Command line `dbus-launch --autolaunch=84b871d735f31ffe014dc9ba00000009 --binary-syntax --close-stderr' 
exited with non-zero exit status 1: 
Autolaunch error: X11 initialization failed. 
Cannot open display:
Run 'gedit --help' to see a full list of available command line options.

Или, если я бегу super-boot-manager Я получаю следующую ошибку

buc: cannot connect to X server

Пожалуйста, помогите.

28
задан 14 August 2012 в 12:17

3 ответа

Добавление ответа @Thor:

Выполненный xhost local:root прежде sudo gedit. Для создания этого постоянным добавьте строку

xhost local:root

в файл ~/.xinitrc 1. Создайте файл, если он не существует.


[1] https://askubuntu.com/a/720120/452398

4
ответ дан 14 August 2012 в 12:17

Вам необходимо разрешить пользователю root доступ к X-серверу:

xhost local:root

и направить команду вправо DISPLAY:

sudo DISPLAY=$DISPLAY gedit /etc/profile
0
ответ дан 14 August 2012 в 12:17

Наконец проблема решена. Я только что добавил строку:

Defaults env_keep = "DISPLAY XAUTHORITY"

в конце visudo.

Для этого вам нужно запустить

sudo visudo

, откроет файл и добавит указанную выше строку в конце.

Спасибо всем, особенно @Thor за добрую помощь

0
ответ дан 14 August 2012 в 12:17

Другие вопросы по тегам:

Похожие вопросы: