Ubuntu запустить приложение от root через иконку

Обновлено: 04.07.2024

По умолчанию файловый менеджер в Ubuntu или любом другом дистрибутиве Linux использует пользователя без полномочий root. Это повышает общую безопасность системы. Однако, если вы хотите запустить файловый менеджер от имени пользователя root или хотите открывать и редактировать файлы и папки с правами администратора, это тоже возможно.

Вы должны использовать командный терминал, чтобы включить этот режим. Следующее руководство актуально для Ubuntu 20.04 LTS . Однако шаги будут такими же для более ранних версий, таких как Ubuntu 19.10 / 19.04; 18.10 / 18.04, включая Debian, Linux Mint или любую аналогичную ОС с файловым менеджером Nautilus.

Как открыть диспетчер файлов Ubuntu Nautilus от имени пользователя root

  1. Откройте командный терминал либо из приложения, либо с помощью сочетания клавиш Ctrl + Alt + T.

Как редактировать или открывать файлы и папки Ubuntu от имени администратора с правами root

Если вы хотите отредактировать любой файл или открыть папку как пользователь root прямо из графического пользовательского интерфейса файлового менеджера Nautilus. Затем мы можем встроить опцию « Редактировать как администратор » или « Открыть как администратор » в его контекстное меню.

  1. Откройте командный терминал с помощью сочетания клавиш Ctrl + Alt + T.
  2. Установите пакет администратора Nautilus .
  3. Введите текущий пароль пользователя root и нажмите клавишу Y, чтобы принять пакеты для загрузки и установки.
  4. Перезапустите экземпляры файлового менеджера Nautilus.
  5. Введите exit и нажмите клавишу Enter, чтобы закрыть окно терминала.
  6. Теперь, чтобы отредактировать любой файл от имени пользователя root, откройте файловый менеджер или щелкните правой кнопкой мыши по конкретному файлу, где бы он ни находился. И выберите опцию «Открыть как Администратор».
  7. Чтобы открыть папки как root, так же, как и выше, щелкните правой кнопкой мыши и выберите «Открыть как Администратор».

Хотя приведенное выше руководство и полезно, однако если вы не являетесь опытным пользователем командного терминала, то будьте осторожны. Убедитесь, что вы не изменяете и не редактируете некоторые основные файлы конфигурации, которые могут сделать вашу Ubuntu нестабильной или незагружаемой.

Как вы знаете, Linux очень серьезно относится к управлению пользователями и предоставлению им прав на работу с системой. Обычный пользователь может записывать файлы только в свой каталог и каталог /tmp/. Также есть возможность читать некоторые файлы в корневой файловой системе. Но вы не можете устанавливать программы, ведь для этого нужно право на запись, не можете изменять атрибуты файлов, не можете запускать сервисы, не можете читать некоторые файлы логов и еще много чего не можете.

В Linux управлять корневой файловой системой и создавать там файлы имеет право только пользователь root.

В этой статье мы рассмотрим какие программы нужны для того, чтобы получить права root пользователя linux, как они работают, как выполнять программу с правами root от обычного пользователя и как запускать графические программы с правами root. А также выясним что такое sudo в чем разница su или sudo.

Права суперпользователя в Linux

Очень долго перечислять чего не может обычный пользователь Linux, проще сказать на что у него есть право, а именно при стандартной настройке полномочий для файлов в Linux, обычный пользователь может:

  • Читать, писать и изменять атрибуты файлов в своем каталоге
  • Читать, писать, изменять атрибуты файлов в каталоге /tmp
  • Выполнять программы там, где это не запрещено с помощью флага noexec
  • Читать файлы, для которых установлен флаг чтения для всех пользователей.

Если же нужно сделать что-то большее нам понадобятся права root пользователя linux. У root есть право делать все в вашей файловой системе независимо от того какие права установлены на файл.

Чтобы войти под пользователем root можно переключиться в одну из виртуальных консолей, например, с помощью сочетания клавиш Ctrl+Alt+F1 и затем ввести логин root и пароль root пользователя.

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

Можно поступить полностью противоположным путем, ввести логин root и его пароль в графическом менеджере входа, чтобы окружение рабочего стола работало от имени root, и мы получаем все права root linux, но такой вариант крайне не рекомендованный, и очень опасный, вы можете случайно повредить всю систему. Поэтому этот способ был отключен во многих менеджерах входа.

Переключение на суперпользователя в терминале

Теперь мы подошли к более интересному и практичному. С помощью специальных утилит вы можете переключить текущий эмулятор терминала в окружения суперпользователя и выполнять все следующие команды не от своего имени, а от его, таким образом, дав программе права root linux. Для этого существует утилита su. Вообще говоря, эта утилита позволяет не только переключаться на пользователя root но и на любого другого пользователя, но по умолчанию используется именно root. Рассмотрим ее подробнее. Команда su linux имеет следующий синтаксис:

$ su опции пользователь

Вот ее основные опции:

  • -c, --command - выполнить команду
  • -g, --group - установить основную группу пользователя (только для root)
  • -G --supp-group - дополнительные группы пользователя (только для root)
  • -, -l, --login - режим входа, будут очищены и инициализированы с учетом нового пользователя все переменные окружения, а также изменен домашний каталог
  • -p, --preserve-environment - сохранить переменные окружения
  • -s, --shell - задать оболочку для входа
  • --version - отобразить версию программы.

Теперь немного поэкспериментируем, чтобы понять как работает команда su linux.

Сначала выполним su без параметров, но для начала создадим переменную окружения, чтобы проверить как с ними обходится эта команда:

Теперь смотрим что получилось:

whoami
pwd
echo $VAR
echo $PATH
exit

sudo

Из этих команд мы видим, что теперь мы пользователь root, но домашней директорией считается директория нашего предыдущего пользователя и наша переменная не сохранилась также изменилась переменная PATH, теперь там добавлен путь /sbin.

Теперь используем вход в режиме логина:

И повторим ту же комбинацию:

whoami
pwd
echo $VAR
echo $PATH
exit

sudo1

Та же ситуация, только на этот раз изменена ко всему еще и домашняя директория на директорию root. Но мы можем сохранить наши переменные окружения, если это нужно, для этого есть опция -p:

sudo2

Как видите, наша переменная осталась. Вы также можете переключится на любого другого пользователя. Например:

sudo3

Более подробно о команде su вы можете почитать в отдельной статье. Получение прав суперпользователя таким способом используется во многих дистрибутивах, например, Debian, OpenSUSE, ArchLInux, Gentoo и т д. Но в Ubuntu, как дистрибутиве для начинающих вход под пользователем root отключен. Это сделано потому, что это тоже не очень безопасно, вы можете забыть что выполняете команду от root и что-то натворить в системе. Поэтому переходим к следующей программе.

Получение прав root без переключения

Чтобы реализовать максимально безопасный интерфейс для работы с правами суперпользователя в Linux была разработана команда sudo. Давайте рассмотрим что такое sudo. Эта команда пишется перед каждой командой, которую нужно выполнить от имени суперпользователя, и для ее выполнения нужно ввести пароль уже не root, а всего лишь вашего пользователя. Так же, как и в предыдущей, в этой утилиты есть свои опции. Сначала рассмотрим синтаксис:

$ sudo опции команда

  • -b - выполнять запускаемую утилиту в фоне
  • -E - сохранить переменные окружения
  • -g - запустить команду от группы
  • -H - использовать домашний каталог
  • -l - показать список полномочий в sudo для текущего пользователя
  • -r - использовать для команды роль SELinux
  • -s - использовать оболочку
  • -u - запустить команду от имени пользователя, если не задано используется root
  • -i - не выполнять команду, а войти в оболочку, эквивалентно su -

Вы можете выполнить те же эксперименты, только для этой команды, чтобы понять как использовать команду sudo. Например:

Использование sudo - это рекомендованный способ выполнять команды от имени суперпользователя в Linux. Так вы не забудете с чем имеете дело и меньше всего рискуете повредить систему. Более подробно о команде sudo читайте здесь. Но остался еще один нерешенный вопрос - как быть с графическими утилитами? Ведь команда sudo их не запускает, а запускать графическую оболочку от имени root небезопасно. Это мы и рассмотрим далее.

Графически приложения от имени суперпользователя

Для запуска графических приложений от имени суперпользователя существуют специальные утилиты. Они сохраняют все необходимые переменные окружения и полномочия. В KDE это команда kdesu, а в Gnome команда gksu.

Просто наберите gksu или kdesu, а затем нужную команду:

Эта команда запустит файловый менеджер KDE с правами суперпользователя. В Gnome это будет выглядеть вот так:

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

Выводы

Вот и все. Теперь вы знаете как получить права суперпользователя в Linux, знаете как использовать команду sudo и в чем разница sudo или su. Теперь программы, требующие дополнительных привилегий в системе, не вызовут у вас проблем. Если остались вопросы, пишите в комментариях!

00_running_program_as_root

Программы, такие как Nautilus или gedit, позволяют вам просматривать или просматривать все файлы в вашей системе, но они позволяют только изменять или создавать новые файлы в вашем домашнем каталоге (например, / home / lori) и его подпапках.

Ранее мы показали вам, как получить доступ к расширенному файловому менеджеру, если вы используете Linux Mint 12 . Если вы используете Ubuntu 11.10, легко настроить ярлык, который позволит вам открыть любую программу от имени пользователя root или другого пользователя.

Чтобы создать ярлык в Ubuntu 11.10, вы должны установить несколько пакетов. См. Нашу статью о создании ярлыков в Ubuntu 11.04 и 11.10 для получения инструкций.

ПРИМЕЧАНИЕ. Когда мы говорим вам вводить или вводить текст в поле редактирования или в командной строке, а текст окружен кавычками, НЕ вводите кавычки, если не указано иное.

После того, как вы установили необходимые пакеты, нажмите Ctrl + Alt + T, чтобы открыть окно терминала. Введите в командной строке следующую команду и нажмите Enter.

01_opening_create_launcher_dialog

ПРИМЕЧАНИЕ. Вы также можете нажать Alt + F2 и ввести команду в появившемся окне редактирования.

02_opening_create_launcher_dialog_using_alt_f2

Откроется диалоговое окно «Создать панель запуска». Введите имя, например «Открыть как», в поле «Имя». Введите следующий текст в поле редактирования команды:

Вы можете ввести описание для ярлыка в поле редактирования комментария, но это не обязательно. Нажмите OK, чтобы создать ярлык.

03_create_launcher_dialog

Вы вернетесь к приглашению в окне терминала. Чтобы закрыть окно, введите «exit» в командной строке и нажмите Enter.

04_closing_terminal_window

Новый ярлык «Открыть как» отображается на рабочем столе. Дважды щелкните по нему, чтобы вызвать его.

05_starting_open_as

Откроется диалоговое окно «Выполнить программу». Если вы хотите запустить Nautilus от имени пользователя root, введите «nautilus» в поле «Редактировать», убедитесь, что root выбран в раскрывающемся списке «Как пользователь», и нажмите кнопку «ОК».

06_running_nautilus_as_root

Введите пароль в появившемся диалоговом окне и нажмите «ОК».

07_entering_password_orig

Появляется следующая ошибка, поскольку Nautilus использует каталог в каталоге .config в домашнем каталоге текущего пользователя, который в данном случае является root. Поэтому нам нужно создать каталог «nautilus» в каталоге /root/.config. Для этого мы должны открыть окно терминала с правами root. Мы можем использовать наш новый ярлык, чтобы сделать это.

08_nautilus_error_dialog

Когда появится диалоговое окно «Выполнить программу», введите «gnome-терминал» в поле «Редактировать» и нажмите «ОК».

09_running_gnome_terminal_as_root

10_change_to_root_config_directory

В каталоге .config нам нужно создать каталог «nautilus». Для этого введите в командной строке следующую команду и нажмите Enter.

11_making_nautilus_directory

Если вы введете «ls» в командной строке и нажмете Enter, вы увидите новый каталог nautilus. Чтобы закрыть окно терминала, введите «exit» в командной строке и нажмите Enter.

12_nautilus_directory_created

Теперь, когда вы вызываете ярлык Open As и вводите «nautilus», Nautilus открывается с правами root.

13_nautilus_open_as_root

Вы можете добавить ярлык в панель запуска Unity, перетаскивая его на панель запуска.

14_dragging_shortcut_to_launcher

Значок добавлен в нижней части лаунчера.

15_shortcut_on_launcher

ВАЖНОЕ ПРИМЕЧАНИЕ: Будьте очень осторожны при изменении или удалении файлов за пределами вашего домашнего каталога. Если вы переименуете или удалите важный файл, вы можете испортить вашу систему и сделать ее непригодной для использования.

Вы также можете запустить Firefox от имени пользователя root, введя «firefox» в диалоговом окне «Запуск программы». Если вы хотите открыть домашнюю папку как root, введите «nautilus / home» в диалоговом окне «Запуск программы». Чтобы открыть командную консоль, введите «gnome-терминал» в диалоговом окне «Запуск программы». Таким способом вы можете запускать большинство программ с правами root, если вы знаете команду для запуска программы. См. Нашу статью о поиске файлов и папок в Linux с помощью командной строки для получения информации о командах which и whereis, которые могут помочь вам найти исполняемые файлы.

root в Linux

Для запуска и корректной работы различных административных консольных и графических программ в GNU-Linux (просто Linux далее) могут потребоваться права администратора. Получить права root их можно при помощи нескольких основных способов.

Команда su , отданная в консоли Linux вызовет запрос пароля администратора root компьютера и, после его ввода, Ваш вход с правами администратора компьютера в той же консольной сессии. Это даёт возможность работать далее от имени администратора системы с любыми консольными командами и программами.

Во многих современных дистрибутивах Linux, созданных для использования на персональном компьютере в первую очередь (Ubuntu Linux, например), авторизация администратора root бывает заблокирована, а пользователь root может отсутствовать в системе как таковой. В этом случае используйте алгоритм, не предусматривающий авторизации администратора root как такового - режим "Super User Do" (sudo)".

Настоятельно не рекомендуется запускать графическую систему X11, рабочие столы Gnome, KDE и т.п. от имени администратора: это может стать угрозой безопасности ваших данных и, часто, причиной некорректной работы операционной системы.

Права администратора без авторизации администратора root - режим "Super User Do" (sudo)

Команда sudo , в качестве приставки к имени основной программы, предоставляет возможность пользователю выполнять команды от имени администратора, не авторизуясь непосредственно как root. В большинстве случаев наличие в системе настроенного режима sudo делает работу от имени администратора практически ненужной, а паролем для запуска sudo чаще всего становится пароль первого созданного в системе пользователя ("sudoer'а").

Запуск программ с правами администратора root из графического диалога

Для того, чтобы запускать программы от имени администратора root, в том числе и в основном графические, можно использовать графические же утилиты kdesudo (программа, написанная на Qt для KDE) и gksu (программа с GTK-интерфейсом для Gnome, XFCE и т.п.). Использовать оба варианта запуска графических программ от имени администратора очень просто: через консоль путём ввода приставки kdesudo (или gksu ) перед именем программы, как в случае с sudo : gksu synaptic

Читайте также: