Неможливо відкрити Gedit як корінь


15

Під час запуску sudo gedit /path/to/some/random/fileя отримую таку помилку

** (gedit:6262): WARNING **: Command line `dbus-launch --autolaunch=7f8731869e1c690b8205727e0000000a --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.  

Використання gksudoне допомагає ні тому, що повертається

Cannot open display: 
Run 'gedit --help' to see a full list of available command line options.  

Допоможіть хлопці. Мені потрібно мати можливість відкривати файли в Gedit як root.
Я знайшов це питання з тією ж помилкою, але жодне рішення не вдається запустити gedit з sudo


EDIT
Я знайшов цю публікацію на форумах Ubuntu .
Це інструкції:

  1. echo $ DISPLAY # Вам знадобиться це значення 3 рядки нижче
  2. sudo -i # або "su -" на старих Slackwares
  3. xauth merge ~ alien / .Xauthority # використовуйте тут своє власне ім'я користувача замість "чужорідного"
  4. експортувати DISPLAY =: 0,0 # використовувати значення DISPLAY, яке ви бачили 3 рядки раніше

Прийшовши до команди №3, я отримав цю помилку
xauth: file /root/.Xauthority does not exist

Можливо, ця нова інформація може пролити більше світла.


Ви пробували gksudo gedit /path/to/the/file/nameзамість цього?
AzkerM

@AzkerMohamed Yah, як говориться в моєму питанні, використовує gksudoта gksuповертає ту саму помилку.
Парто

1
Здається, такий самий випадок, як і цей askubuntu.com/questions/175611/…
user.dz

Відповіді:


13

Нарешті знайшли відповідь. З цього питання не вдається підключитися до сервера X під час запуску програми з sudo, особливо це питання Помилка при спробі запуску програми з sudo або gksudo .

Я додав рядок Defaults env_keep+="DISPLAY"до кінця visudoфайлу в /etc/sudoers.

Так, моє sudo geditповернулося!

EDIT

Якось знову отримав ту саму помилку.

Зробив ще кілька досліджень, особливо цю відповідь /ubuntu//a/137584/163331 і зрозумів, що я повинен додати більше visudoфайлів у файл. Замість цього Defaults env_keep+="DISPLAY"я використав цей рядок:

Defaults env_keep="XAUTHORIZATION XAUTHORITY TZ PS2 PS1 PATH LS_COLORS KRB5CCNAME HOSTNAME HOME DISPLAY COLORS"

Навіщо додати HOME до env_keep?
муру

10

Запуск будь-яких програм графічного інтерфейсу як root може призвести до пошкодження файлів, особливо якщо програма графічного інтерфейсу є текстовим редактором. На додаток до цього gksuі gksudoне працюють для запуску графічних додатків як root у Wayland в Ubuntu 17.10: Чому gksu / gksudo не працюють з Wayland? і пакет gksu був скинутий із стандартних сховищ Ubuntu в Ubuntu 18.04 та пізніших версій.

Nautilus Admin ( nautilus-admin ) - це просте розширення Python для файлового менеджера Nautilus, яке додає деякі адміністративні дії до меню правої кнопки миші:

  • Відкрити як адміністратор: відкриває папку в новому вікні Nautilus, що працює з правами адміністратора (root).
  • Редагувати як адміністратор: відкриває файл у вікні Gedit, що працює з правами адміністратора (root).

Щоб встановити Nautilus Admin у всіх підтримуваних на даний момент версіях Ubuntu, відкрийте термінал і введіть:

sudo apt install nautilus-admin  

Хоча існують команди для запуску графічних додатків як root, настійно радимо використовувати наноредактор текстового редактора, який, як правило, запускається з терміналу, для редагування файлів як root. Текстовий редактор Nano включений в установку Ubuntu за замовчуванням.

Nano дуже простий у використанні. Інструкції щодо використання наноредактора завжди знайдені внизу кожної сторінки. Єдині дві комбінації нано-клавіатур, які вам потрібно знати, - це для WriteOut та Exit. Натисніть комбінацію клавіатури Ctrl+, Oа потім натисніть, Enterщоб зберегти файл, який редагується. Натисніть комбінацію клавіатури Ctrl+, Xщоб вийти з нано.

Якщо ви звикли редагувати файли як root правильним способом, ви зменшите можливість помилок, які можуть зайняти багато часу для виправлення.


2
+1 для nanoредактора. Один з найкращих редакторів, яким будь-хто міг би легше керувати.
AzkerM

@Karel Я нарешті використав нано для внесення змін, але мені потрібен мій корінь Gedit.
Парто

2
Це гарна порада, але це не відповідь. Хлопці з Linux люблять термінал, але графічний інтерфейс дивовижний для складних завдань і має кращий UX.
azerafati

Ви можете налаштувати редактор за замовчуванням sudoeditкоманди (що за замовчуванням nano): Як я можу змінити редактор за замовчуванням команди sudoedit на vim? але запуск редакторів GUI як root може спричинити проблеми в Ubuntu 17.10 та пізніших версіях з Wayland.
карел

5

У Ubuntu 17.10, принаймні, ви можете це зробити:

gedit admin:///path/to/some/random/file

Вам буде запропоновано ввести свій пароль, і тоді файл буде відкритий для редагування як root.


Працює також до 18.04 ...
Старійшина


1

Я намагаюся узагальнити всю інформацію в інших відповідях на цій сторінці:

Вейленд:

Єдиний варіант виглядає на використаний nanoабоvi/vim

Xorg:

спробуйте це

sudo -H env DISPLAY=:0 gedit

якщо він працює, це, ймовірно, означає, що вам потрібно додати певну опцію до файлів конфігурації sudo

sudo visudo

Спробуйте додати цей рядок наприкінці

Defaults env_keep="XAUTHORIZATION XAUTHORITY TZ PS2 PS1 PATH LS_COLORS KRB5CCNAME HOSTNAME HOME DISPLAY COLORS"`

Навіщо додати HOME до env_keep?
муру

geditпрекрасно працює у Вейленді. Будь ласка, дивіться відповідь, яку я щойно опублікував.
Гуннар Хяльмарссон,

0

У мене просто була подібна проблема. Я використовую Debian Jessie і для запуску gedit як root цей рядок тоді нарешті працював:

sudo -H gedit
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.