Есть ли более простой или более «правильный» способ открыть gedit от имени root?

У меня Ubuntu 12.04 работает в виртуальной машине на виртуальной машине. Его существование в основном как «игрушка», чтобы играть с Ubuntu, поэтому по этой причине я хотел графический интерфейс (это то, что «Dash» есть в Ubuntu 12.04? Во всяком случае ...)

Я одно В настоящее время эта машина используется для LAMP-сервера. Я использую «gedit» для редактирования своих файлов, но поскольку я еще не правильно установил права доступа, я просто открываю его с помощью sudo в терминале.

Только сейчас, чтобы попытаться упростить этот процесс, я создал сценарий оболочки на рабочем столе с очень простой задачей - sudo gedit

Я не могу не думать, что должен быть еще более очевидный способ откройте gedit от имени пользователя root, чем этот. Так что же есть?

Редактировать: я просто «улучшил» свой скрипт, заменив sudo на gksudo. Теперь мне не нужно открывать окно терминала, пока открыт gedit. Так что я думаю, что сейчас это довольно удобно :) Было бы хорошо, если учесть, знать, близко ли это к тому, как более опытные пользователи Ubuntu будут делать такие вещи.

19
задан 19 November 2013 в 00:42

7 ответов

Используйте gksudo gedit.

gksudo является эквивалентом sudo для графических программ, которые небезопасны для запуска с использованием sudo.

0
ответ дан 19 November 2013 в 00:42

gksudo gedit работает в 16.04 LTS, но в 17.10 с Wayland gksudo не работает.

0
ответ дан 19 November 2013 в 00:42

Используйте admin:// перед именем файла, которое вызывает стандартную подсказку пароля GUI для вашей соответствующей WM / оболочки.

Так, например, если вы хотите редактировать свои репозитории, вместо того, чтобы набирать sudo gedit /etc/apt/sources.list, вы наберете gedit admin:///etc/apt/sources.list. Он работает практически для всех программ с графическим интерфейсом, а не только для Gedit.

0
ответ дан 19 November 2013 в 00:42

gksudo, по-видимому, недоступно в более новых версиях Ubuntu, и gksu не работал для меня, но этот ответ был очень полезным в моем случае (Ubuntu 17.04).

Используйте visudo, чтобы добавить следующую строку в файл конфигурации sudo:

Defaults env_keep="XAUTHORIZATION XAUTHORITY TZ PS2 PS1 PATH LS_COLORS KRB5CCNAME HOSTNAME HOME DISPLAY COLORS"`
0
ответ дан 19 November 2013 в 00:42

Я часто запускаю gedit как root, поэтому я добавил эту опцию в контекстное меню в Unity (она использует ту же команду, что и выбранный ответ, gksu gedit).

Вам потребуется отредактировать файл *.desktop, чтобы добавить опцию меню, и у вас есть два варианта:

  • /usr/share/applications/gedit.desktop (для правки требуется root-доступ) [ 1110] - опция меню будет добавлена ​​для всех пользователей. Обратите внимание, что вам может потребоваться повторно отредактировать этот файл, добавив параметр, если происходит обновление для gedit, которое перезаписывает ваши изменения.
  • ~/.local/share/applications/gedit.desktop (Если вы не можете найти его там, сделайте дубликат того, который найден в /usr/share/applications/, и сохраните его в этом новом месте) - Пункт меню будет доступен только для указанного пользователя и считается «лучшей практикой». Обратите внимание, что если вы уже прикрепили его к панели Unity, вам нужно будет выбрать Unlock from Launcher на существующем значке GEdit, а затем снова добавить свою «пользовательскую» версию. Эти изменения должны остаться, даже если GEdit получит обновление.

Отредактируйте текстовый файл gedit.desktop, добавив следующий блок кода (вы можете использовать два существующих блока в качестве шаблона):

[Desktop Action RootWindow]
Name=Open a Root Window
Exec=gksu gedit
OnlyShowIn=Unity;

Затем добавьте новое действие в list (должен быть примерно в строке 19 текстового файла):

Actions=Window;Document;RootWindow;

Теперь, щелкнув правой кнопкой мыши окно текстового редактора в Unity, открывается новая удобная опция:

Ubuntu Unity: Open Gedit as Root [ 1112]

0
ответ дан 19 November 2013 в 00:42

Вы можете открыть Nautilus как root, gksu nautilus, теперь любой текстовый файл, который вы открываете из этого окна, будет открываться в Gedit как root.

0
ответ дан 19 November 2013 в 00:42

EDITOR=gedit sudo -e рекомендуется.

0
ответ дан 19 November 2013 в 00:42

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

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