Вход в линукс с правами root. Администратор в Ubuntu, или Что такое sudo

Инструкция

По умолчанию в Ubuntu возможность логина под учетной записью суперпользователя отключена. Чтобы включить root, нужно знать пароль, который задается во время установки системы. Пароль всегда можно изменить командой через «Терминал» (Menu - Programs - Standart): sudo passwd root
Sudo позволяет использовать права суперпользователя для выполнения следующего запроса, а passwd изменяет пароль для выбранного пользователя, в данном случае для root. После ввода команды введите свой старый, а затем новый пароль.

Активируйте возможность локального входа привилегированного пользователя через графическую оболочку в систему. Для этого перейдите в меню «Система» - «Администрирование» - «Окно входа в систему» - «Безопасность», а затем выберите пункт «Разрешить локальный вход…». Перезагрузите компьютер. Теперь вы можете логиниться как root.

Для выполнения команд от root через «Терминал» в системах Fedora и Mandriva используется префикс su. Откройте файл gdm:
su

gedit /etc/pam.d/gdm
И закомментируйте строку "auth required pam_succeed…" при помощи знака #. После этого перезагрузитесь и попробуйте зайти в качестве суперпользователя из окна выбора учетной записи.

Если же у вас стоит рабочий стол KDE, то отредактируйте файл kdmrc, который находится в папке /usr/share/config/kdm. Найдите строчку AllowRootLogin и измените ее значение на True, после чего сохраните изменения и перезапустите сессию пользователя с помощью соответствующего пункта меню.

Полезный совет

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

Root является суперпользователем в Unix-подобных системах. Это административная учетная запись, которая имеет логин «root» по умолчанию и легко переименовывается при необходимости. Схема «суперпользователь-пользователь» была придумана для облегчения процесса администрирования и для обеспечения безопасности и стабильности системы. Все действия, производимые над системными файлами, недоступны для обычного пользователя, но возможны для рута.

Инструкция

В Ubuntu Linux по умолчанию зайти в качестве суперпользователя не получится. Чтобы включить учетную запись root, нужно знать его пароль. Обычно он задается при установке системы, но его всегда можно заменить. Откройте «Терминал» («Меню – «Программы» – «Стандартные») и введите команду: sudo passwd root. Команда «sudo» дает системе сигнал, что следующие действия должны выполняться . После этого вам нужно будет ввести свой старый пароль, а затем новый, который вы хотите задать.

Дальше нужно создать возможность локального входа root-а в систему. Для этого перейдите в пункт «Система» - «Администрирование» - «Окно входа в систему». Перейдите на вкладку «Безопасность» и выберите пункт «Разрешить локальный вход для администратора системы».

Для того, чтобы зайти под рутом в операционной системе Fedora, воспользуйтесь терминальной командой «su» и введите соответствующий пароль. После этого откройте файл gdm.

Здравствуйте, друзья! На очереди очередная очень важная статья (но только в том случае, если вы пользуетесь операционной системой Ubuntu). Разговор пойдет о правах суперпользователя. Дело в том, что Linux идет по пути, отличному от Windows. Для большей защиты здесь не сидят все время под администратором (в отличии от того, как мы привыкли делать это под виндой). А вот при выполнении задач по настройке или установке новых программ, приходится заходить под root. Дальше речь пойдет о том, как настроить пароль root ubuntu, как использовать права суперпользователя и для чего вообще это все делается.

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

Ubuntu - это, по большей части, клиенториентированная операционная система. Поэтому какие-либо серьезные изменения в ней хоть и не запрещены, но не рекомендуются, если пользователь не имеет представления о том, что именно происходит.

В частности, даже установка программного обеспечения, как стороннего, так и из Центра Приложений Ubuntu, требует ввода пароля суперпользователя - привилегированного пользователя (root), у которого есть все права над системой.

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

Однако ж, все таки бывают ситуации, когда в системе нужно выполнить определенные команды из режима администратора (суперпользователя).

Для этого можно поступить следующим образом.

Есть специально написанная под этот случай утилита, sudo, которая на время дает нам права администратора и позволяет выполнять команды уровня суперпользователя.

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

Открыть терминал консоли.


Перейти в папку с исходными кодами (предположим, путь до нее в файловой системе выглядит следующим образом /home/projects/myprog)

cd /home/projects/myprog

Попав в нужную папку, выполнить команду./configure (точка и слеш в начале команды обязательны)

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

Следующая команда make компилирует данный пакет.

В заключении нам нужно освободить систему от временных файлов командой make clean.

Ничего сложного, согласитесь. Разве что, перед вводом каждой команды надо «включать» режим администратора системы при помощи sudo, который обязательно запрашивает пароль входа в систему. Через некоторое время это начнет утомлять.

Что же такое sudo?

Это утилита, которая предоставляет все возможности администратора для выполнения задач управления операционной системой в рамках прописанных в ее настройках. В Ubuntu полные права на применение sudo передаются первому пользователю (то есть, тому, который создается при первоначальной установке системы). Таким образом, первый пользователь становится суперпользователем root. А аккаунт root по умолчанию в Ubuntu вообще отключен. И чтоб зарегистрироваться в системе под root’ом, нужно его включить.

Как использовать утилиту sudo?

1. Предположим, вам надо запустить какую-нибудь программу с правами администратора. Часто такая необходимость возникает для приложений обработки звука или видео, чтоб при первом запуске произошла настройка системы и было обнаружено периферийное оборудование.

2. Тогда, с клавиатуры, сочетанием клавиш Alt+F2, вызываем диалог запуска программ.

3. В открывшейся строчке вводим

и название программы, которую хотим запустить. В нашем случае это приложение jackd (системный музыкальный адаптер) или

Для пользователей Kubuntu утилита будет выглядеть следующим образом

после этого, вас попросят ввести пароль первого пользователя и программа запустится с правами администратора.

То есть, для запуска любой программы с графическим интерфейсом в открывшемся, через сочетание клавиш Alt+F2, окне нужно выполнить опцию:

gksudo(или kdesuдля Kubuntu)

и ввести пароль.

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

по запросу надо будет так же ввести пароль. Отметим обязательно, что вводимый пароль в целях безопасности никак не отображается (ни буквами, ни звездочками). Вы просто вводите его до конца и нажимаете Enter.

Некоторое время введенный пароль будет храниться в одном из системных буферов. И вам, возможно, не придется вводить его постоянно. Однако это тоже прописано в настройках утилиты sudo.

Чтоб отключить сессию-sudo, надо в терминале ввести команду:

это гарантированно отключит режим суперпользователя.

Есть случаи, когда sudo работает не так как надо.

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

cat test.txt | grep text > result.txt

в данной конструкции команда cat копирует содержимое файла test.txt и передает данные в управление командой grep, которая записывает все вхождения слова text в файл result.txt.

Так вот, если попытаться выполнить эту последовательность с применением утилиты sudo (к примеру оба файла системные),

sudo cat test.txt | grep text > result.txt

то может ничего не выйти. Для первой части выражения sudo сработает, а для второй нет.

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

Параметр -s позволяет вам временно перейти в режим администратора (с ограничениями, прописанными в настройках утилиты sudo) и оставаться там пока это необходимо.

Чтоб выйти из данного режима, достаточно набрать exit либо комбинацию клавиш Ctrl+D.

Как включить root-аккаунт в Ubuntu.

Еще раз оговоримся, что огромной нужды в применении root (вместо sudo) в системе нет. Более того, в режиме root часто возникают проблемы с графическим интерфейсом.

Однако, отключенный root свидетельствует лишь только о том, что у него не до конца прописаны параметры входа, а именно отсутствует пароль.

Чтоб пользователь мог работать под root, нужно прописать под него пароль при помощи команды

sudo passwd root

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

Еще одно действие, которое обязательно надо выполнить, это разблокировка входа пользователя root в систему через GDM - менеджер входа в систему. Зайдите в меню Система? Администрирование? Окно входа в систему, на вкладке «Безопасность» поставьте галочку напротив «Разрешить локальный вход администратора системы».

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

Если понадобится отключить эту возможность, достаточно просто удалить пароль для пользователя root при помощи команды

sudo passwd -l root

еще раз повторимся, что использование прав root в системе без необходимости чревато крахом платформы и в конечном счете ее переустановкой. Поэтому надо основательно взвесить все «за» и «против» прежде, чем создавать возможность работы в системе под суперпользователем root.

Спасибо за прочтение статьи. Прошу прощения за отсутствие традиционных картинок, дело в том, что у меня на ноуте стала барахлить виртуальная машина, поэтому не могу войти в свою Ubuntu и снять скриншотов. Постараюсь это дело побыстрее исправить. Вам же рекомендую подписаться на обновления блога, ведь скоро в свет выйдет статья, с которой, наверное, стоило бы начинать цикл статей про эту операционную систему. Статья будет, как вы наверное уже догадались, про установку Ubuntu. Задавайте свои вопросы в комментариях. До следующих статей!

Статьи, которые могут быть полезны:
1.
2.
3.

Сам использую Ubuntu на работе и дома в качестве основной ОС, вот уже почти два года. На домашнем сервере использую серверную убунту — работает как часы, сутками на пролёт, используется в качестве шлюза и NAS. Вот с Windows так не получается, чтобы сутками напролёт и без проблем, с ним вечно что-то происходит, даже если его не трогать.

Ответить

В Linux Mint (как и в Ubuntu) по умолчанию вход под root запрещён. С одной стороны, это правильно, дабы пользователь, работавший ранее в Windows постоянно под админом, не повторял этой ошибки в Ubuntu/Mint. Но всё же зайти под root возможно.

root в Linux Mint

Внимание! Работать под root опасно! Для выполнения административных задач рекомендуется использовать утилиту sudo. Автор не несёт ответственности за последствия неосторожной работы с повышенными привилегиями!

Получение root-полномочий в терминале или консоли

Для получения root-полномочий в командной строке достаточно ввести sudo -i , затем свой пароль. Это можно использовать, когда нужно ввести несколько команд под root ().

Назначение пароля root

Для того, чтобы можно было зайти под root, надо сначала назначить пароль для него (кстати, в Debian и openSUSE пароль для root назначается в процессе установки). Для этого нужно ввести в командной строке sudo passwd root , а затем ввести свой пароль и два раза - пароль для root. После этого Вы сможете зайти как root в командной строке. Кроме того, если ввести su и ввести пароль root, то Вы получите повышенные привилегии (как от sudo -i ).

Включение возможности входить под root в MDM

Итак, назначив пароль root, мы получили возможность входить как root в консоли, но не в графической среде. Дело в том, что по умолчанию в настройках MDM вход как root запрещён. Для того, чтобы его разрешить, нужно зайти в настройки системы, открыть Login Window Preferences , открыть секцию Options и пометить Allow root login . После этого можно будет зайти как root в графическом режиме.

Кстати, Thunar, запущенный из-под рута, показывает жёлтую строку с предупреждением, в то время как в Nemo показывается лишь красная строка с надписью «Повышенные привилегии».

Кстати, в той же Ubuntu вход под root менее ограничен: убунтувский LightDM не запрещает по умолчанию вход под root, а поставляемый с Ubuntu файловый менеджер Nautilus, запущенный с правами рута, не показывает никаких предупреждений (как и Dolphin).

Select rating Give it 1/5 Give it 2/5 Give it 3/5 Give it 4/5 Give it 5/5

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

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

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

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

Что такое sudo

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

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

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

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

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

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

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

Gksudo nautilus

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

Gksudo <имя_команды>

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

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

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

Sudo <команда>

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

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

Кроме того, часто встречаются ошибки, связанные с каналами в Linux. При исполнении команды

Sudo cat test.txt | grep text > result.txt

с правами root исполнится только cat , поэтому файл result.txt может не записаться. Нужно либо писать sudo перед каждой командой, либо временно переходить под суперпользователя.

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

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

Sudo -s sudo -i

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

Для выхода обратно в режим обычного пользователя наберите exit или просто нажмите Ctrl + D .

Использование традиционного root аккаунта и команды su

Разблокировка учетной записи root приводит неоправданным рискам (работая постоянно под рутом вы имеете 100500 способов «отстрелить себе ногу»), а также упрощает получение доступа к вашему компьютеру злоумышленником.

Ubuntu 11.04 и младше

Для входа под root достаточно задать ему пароль:

Sudo passwd root

Потом на экране входа нажмите Другой… и введите логин (root) и пароль, который вы задали.

Ubuntu 11.10 и старше

Начиная с версии 11.10 был установлен менеджер входа lightdm, и дело со входом под root обстоит немного сложнее.

1. Устанавливаем root пароль. Введите в терминал:

Sudo passwd root

2. Включаем пункт «Введите логин». Введите в терминал:

Gksu gedit /etc/lightdm/lightdm.conf

В конце файла допишите:

Greeter-show-manual-login=true

3. Перезагружаем lightdm. Введите в терминал:

Sudo service lightdm restart

Все, на экране входа появится пункт «Логин». В поле логин вводим «root», в поле пароль - пароль, который мы задали на первом этапе.

Для обратной блокировки учетной записи root вам потребуется откатить изменения в настройках lightdm, а также заблокировать учетную запись root командой в терминале:

Sudo passwd -l root

Настройка sudo и прав доступа на выполнение различных команд

sudo позволяет разрешать или запрещать пользователям выполнение конкретного набора программ. Все настройки, связанные с правами доступа, хранятся в файле /etc/sudoers . Это не совсем обычный файл. Для его редактирования необходимо (в целях безопасности) использовать команду

Sudo visudo

По умолчанию, в нём написано, что все члены группы admin имеют полный доступ к sudo , о чём говорит строчка

%admin ALL=(ALL) ALL

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

Man sudoers

Если вы допустите ошибку при редактировании этого файла, то вполне возможно полностью лишитесь доступа к административным функциям. Если такое случилось, то необходимо загрузиться в recovery mode, при этом вы автоматически получите права администратора и сможете всё исправить. Кроме того, отредактировать этот файл можно с LiveCD.

Разрешение пользователю выполнять команду без ввода пароля

Для того, что бы система не запрашивала пароль при определенных командах необходимо в sudoers после строки # Cmnd alias specification добавить строку, где через запятую перечислить желаемые команды с полным путём(путь команды можно узнать, выполнив which имя_команды :

# Cmnd alias specification Cmnd_Alias SHUTDOWN_CMDS = /sbin/shutdown, /usr/sbin/pm-hibernate, /sbin/reboot

И в конец файла дописать строку

Имя_пользователя ALL=(ALL) NOPASSWD: SHUTDOWN_CMDS

Внимание! Вышеописанные действия не отменяют необходимости ввода команды sudo перед вашей командой

Создание синонимов (alias`ов)

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

nano ~/ bashrc

и добавьте в конец файла строки

alias reboot ="sudo reboot" alias poweroff ="sudo poweroff" alias pm-hibernate="sudo pm-hibernate" alias hibernate ="sudo pm-hibernate" alias shutdown ="sudo shutdown"

Время действия введённого пароля

Возможно, вы хотите изменить промежуток времени, в течение которого sudo действует без ввода пароля. Этого легко добиться добавив в /etc/sudoers (visudo) примерно следующее:

Defaults:foo timestamp_timeout=20

Здесь sudo для пользователя foo действует без необходимости ввода пароля в течение 20 минут. Если вы хотите, чтобы sudo всегда требовал ввода пароля, сделайте timestamp_timeout равным 0.

sudo не спрашивает пароль

sudo без пароля - чудовищная дыра в безопасности, кому попало разрешено делать что угодно. Если вы разрешили это намеренно - срочно верните обратно как было.

Однако, в некоторых случаях sudo внезапно перестаёт требовать пароль само по себе. Если сделать visudo , то можно увидеть примерно такую строку, которую пользователь вроде бы не добавлял:

ALL ALL=(ALL) NOPASSWD:ALL

Скорее всего, эта катастрофичная строка была добавлена при установке программы типа Connect Manager от МТС или Мегафона. В таком случае, её нужно поменять на строку, разрешающую с правами root запускать только этот Connect Manager, примерно так:

Юзернейм ALL= NOPASSWD: /путь/к/программе

Есть и другие варианты решения проблемы, небольшое обсуждение .

Пользователь root и sudo

Пользователь root в системах GNU/Linux - это пользователь, имеющий административный доступ к вашей системе. Обычные пользователи не имеют этого доступа по соображениям безвасности. Тем не менее в Kubuntu нет пользователя root. Вместо этого, административный доступ предоставляется отдельным пользователям, которые могут использовать приложение "sudo" для выполнения административных задач. Первая учетная запись, созданная при установке системы по умолчанию будет иметь доступ к приложению sudo. Вы можете запретить доступ к sudo или предоставить его с помощью приложения Пользователи и Группы (см. «Пользователи и Группы»).

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

Чтобы использовать sudo в командной строке, просто наберите "sudo" перед командой, которую Вы хотите запустить. После этого sudo попросит ввести ваш пароль.

Sudo будет помнить ваш пароль установленное время (по умолчанию 15 минут). Эта возможность позволяет пользователям выполнять большое количество административных задач без необходимости каждый раз вводить пароль.

Внимание

Будьте осторожны при выполнении административных задач -- вы можете испортить вашу систему!

Некоторые советы по использованию sudo:

    Чтобы использовать терминал пользователя root, наберите "sudo -i" в командной строке

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

    За дальнейшей информацией по программе sudo и отсутствию пользователя root в Kubuntu обращайтесь к странице sudo на сайте Ubuntu wiki.

Запуск программ вручную с привилегиями root

Иногда необходимо выполнить программу с привилегиями root. Это легко сделать с помощью диалога Выполнить команду .

Внимание

Пожалуйста, будьте осторожны, выполняя приложения с привилегиями root, так как это может испортить вашу систему. За дополнительной информацией см. «Пользователь root и sudo» .

    Откройте диалог Выполнить команду , нажав Alt -F2

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



Понравилась статья? Поделиться с друзьями: