Когда я запускаю какое-то программное обеспечение с помощью 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
Пожалуйста помоги.
super-boot-manger
?super-boot-manager
напрямую из Unity Luncher, это не сработало. Тогда я попробовал это из терминала, затем я получил те ошибки массажа.echo $DISPLAY
говорит? Вы должны запустить его без ,sudo
какsuper-boot-manager
прогоныsudo
внутренне.echo $DISPLAY
дает:0.0
. И я не бегаюsuper-boot-manager
какsudo
. Я бегу, просто используя командуsuper-boot-manager
из терминала.Defaults env_keep="DISPLAY XAUTHORITY"
в концеvisudo
. Спасибо всем, особенно @Thor за любезную помощь.Ответы:
Вам необходимо разрешить доступ пользователя root к X-серверу:
И направьте команду справа
DISPLAY
:источник
gedit
какsudo
, но все еще не может обедатьsuper-boot-manager
. Это показывает ту же ошибкуНаконец проблема решена. Я только что добавил строку:
в конце
visudo
.Для этого нужно бежать
он откроет файл, а затем добавит строку выше в конце.
Спасибо всем, особенно @Thor за добрую помощь
источник
Дополнение ответа Тора:
Беги
xhost local:root
раньшеsudo gedit
. Чтобы сделать это постоянным, добавьте строкув файл ~ / .xinitrc 1 . Создайте файл, если он не существует.
[1] https://askubuntu.com/a/720120/452398
источник