Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
17 Август 2018, 23:07:12
Новости:

Страниц: [1]   Вниз
Печать
Автор Тема: Отказано в доступе, права Суперпользователя, sudo su и т.д  (Прочитано 9284 раз)
0 Пользователей и 1 Гость смотрят эту тему.
admin
Знания не сила, сила - это воля и умение применить знания
Администратор
Бог
*****

Карма: +226/-23
Offline Offline

Пол: Мужской
Сообщений: 2142


Главный


WWW
« : 15 Январь 2011, 12:09:54 »

Администратор в системах проекта Синяя птица, или что такое sudo

В любой Linux системе обязательно есть один привилегированный пользователь - root. Этот пользователь имеет права на выполнение любых действий, удаление любых файлов и изменение любых параметров. Как-то ограничить свободу действий root практически невозможно. С другой стороны, все остальные пользователи системы в целях безопасности, обычно не имеют большинства необходимых прав, например, прав на установку программ, поскольку это является административной операцией, права на которую есть только у root. Ещё одной распространённой операцией, доступной только суперпользователю, является копирование и изменение файлов в системных папках, куда обычный пользователь доступа не имеет.

Раньше данное ограничение обходилось достаточно просто: при обладании паролем root можно было зайти в систему под его аккаунтом, либо временно получить его права, используя команду su. Потом выполнить все необходимые операции и вернуться обратно под обычного пользователя. В принципе, такая схема работает неплохо, однако у неё есть много существенных недостатков, в частности, невозможно никак (точнее очень сложно) ограничивать административные привилегии только определённым кругом задач.

Поэтому в современных дистрибутивах Linux вместо root аккаунта для администрирования используется утилита sudo.

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

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

Что такое sudo

sudo - это утилита, предоставляющая привилегии root для выполнения административных операций в соответствии со своими настройками. Она позволяет легко контролировать доступ к важным приложениям в системе. По умолчанию, при установке любой из систем Синяя птица первому пользователю (тому, который создаётся во время установки) предоставляются полные права на использование sudo. Т.е. фактически первый пользователь обладает той же свободой действий, что и root но только после проверки пароля. Однако такое поведение sudo легко изменить, об этом см. ниже в пункте про настройку sudo.

Где используется sudo

sudo используется всегда, когда вы запускаете что-то из меню Администрирования системы. Например, при запуске Synaptic вас попросят ввести свой пароль. Synaptic - это программа управления установленным ПО, поэтому для её запуска нужны права администратора, которые вы и получаете через sudo вводя свой пароль.

Однако не все программы, требующие административных привилегий, автоматически запускаются через sudo. Обычно запускать программы с правами администратора приходится вручную.

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

Для запуска графических программ с правами администратора можно воспользоваться диалогом запуска программ, вызываемым по умолчанию сочетанием клавиш Alt+F2.

Допустим, нам необходимо запустить файловый менеджер Nautilus с правами администратора, чтобы через графический интерфейс как-то изменить содержимое системных папок. Для этого необходимо ввести в диалоге запуска приложений команду

gksudo nautilus

Вместо gksudo можно подставить gksu. У вас попросят ввести свой пароль, и, если вы обладаете нужными правами, Nautilus запустится от имени администратора. Запуск любого графического ПО можно производить с правами администратора, просто написав в диалоге запуска

gksudo <команда_запуска>, например gksudo krusader

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

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

Для запуска в терминале команды с правами администратора просто наберите перед ней sudo:

sudo <команда>

У вас попросят ввести ваш пароль. Будьте внимательны, пароль при вводе никак не отображается, это нормально и сделано в целях безопасности, просто вводите пароль до конца и нажимайте "Enter". После ввода пароля указанная команда исполнится от имени root.

Система какое-то время помнит введённый пароль (сохраняет открытой sudo-сессию). Поэтому при последующем выполнении sudo ввод пароля может не потребоваться. Для гарантированного прекращения сессии sudo наберите в терминале

sudo -K

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

Иногда возникает необходимость выполнить подряд несколько команд с правами администратора. В этом случае можно временно перейти под суперпользователя командой

sudo -s

После этого вы перейдёте в режим суперпользователя (с ограничениями, наложенными через настройки sudo), о чём говорит символ # в конце приглашения командной строки. Данная команда по действию похожа на su, однако она не меняет домашний каталог на /root, что обычно очень удобно. Для того, чтобы при переходе под суперпользователя сменился так же и домашний каталог необходимо выполнить

sudo -s -H

Для выхода обратно в режим обычного пользователя наберите exit или просто нажмите Ctrl+D в консоли.
« Последнее редактирование: 14 Июнь 2011, 11:27:07 от admin » Записан

Страниц: [1]   Вверх
Печать
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines

Страница сгенерирована за 0.082 секунд. Запросов: 20.