Ubuntu как запустить программу с root правами


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

Как вы знаете, 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 без параметров, но для начала создадим переменную окружения, чтобы проверить как с ними обходится эта команда:

export VAR=1

Теперь выполняем:

su

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

whoami $ pwd $ echo $VAR $ echo $PATH

$ exit

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

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

su -

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

whoami $ pwd $ echo $VAR $ echo $PATH

$ exit

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

su -p

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

su - test

Получение прав суперпользователя таким способом используется во многих дистрибутивах, например, 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 ls

Или:

sudo -u test ls

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

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

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

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

kdesu dolphin

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

gksu nautilus

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

Выводы

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

losst.ru

Пароль root в Ubuntu

Инструкции Сентябрь 8, 2017 admin

Как вы знаете, разработчики Ubuntu имеют свой взгляд на безопасность работы с дистрибутивом. Довольно много дистрибутивов, в том числе Debian, на котором основана Ubuntu, предлагают использовать аккаунт суперпользователя для выполнения различных задач по администрированию системы. Но сейчас такой подход считается небезопасным, поскольку вы можете забыть что работаете от имени суперпользователя и удалить какие-либо важные вещи.

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

  • Суперпользователь в Ubuntu
  • Пароль root Ubuntu
  • Выводы

Суперпользователь в Ubuntu

Начнем с того, что суперпользователя в Ubuntu никто не отключал, пользователь root существует и от его имени работают процессы, как в других системах. Просто для этого пользователя не задан пароль. Поэтому вы и не можете войти. Но есть несколько способов авторизоваться от имени root без пароля. Во-первых, это sudo. Команда su запрашивает пароль только в том случае, если вы выполняете ее от имени обычного пользователя. Если команда будет запущена от имени суперпользователя, то пароль спрашиваться не будет, а вы сразу перейдете в терминал root. Первая комбинация, которая приходит на ум:

sudo su

Но есть и более простой и правильный вариант, вы можете использовать опцию -i утилиты sudo чтобы перейти в терминал суперпользователя:

sudo -i

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

Пароль root Ubuntu

Несмотря на приведенные выше способы решения проблемы, вы все еще не можете авторизоваться от имени суперпользователя в TTY или использовать утилиту su без sudo. Если это для вас важно дальше мы рассмотрим как установить пароль root Ubuntu и вернуть полноценного root пользователя. Только это все нужно делать когда у вас есть обычный пользователь и доступ к нему. Сначала смотрим /etc/shadow и убеждаемся, что пароля действительно нет:

sudo cat /etc/shadow | grep root

Для установки пароля для root наберите:

sudo passwd root

Теперь нужно ввести два раза пароль и готово. Проверяем снова:

sudo cat /etc/shadow | grep root

Если же вы потеряли пароль своего пользователя и вам нужна смена пароля root ubuntu, то вам понадобиться войти в режим восстановления и выполнять все действия там. Подробнее об этом читайте в статье сброс пароля Gentoo.

Дальше вы можете использовать команду su для авторизации, авторизоваться от root по ssh и многое другое. Например:

su

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

Выводы

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

(10 оценок, среднее: 5,00 из 5) Загрузка...

losst.ru

Как запустить приложение автозапуска с правами root? Ubuntu Linux

В этом случае вам может понадобиться избегать использования sudo , поскольку он может запрашивать у вас только пароль с терминала, который, как представляется, не используется. Вместо этого вы должны использовать gksudo или gksu . Для обоих потребуется ввести пароль по умолчанию, но это можно изменить (см. Ниже). Или вы можете использовать policykit для запуска программы как root, используя pkexec airvpn . Для этого тоже требуется пароль.

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

УИП

Если исполняемый файл airvpn является двоичным файлом (в отличие от текстового файла), вы должны иметь возможность использовать команду chmod для изменения прав доступа к файлам для активации режима setuid, то есть он всегда будет работать как пользователь, который владеет им (который должен быть root). Это не потребует пароля и не потребует от вас каких-либо действий ниже. Тем не менее, вам потребуется перейти к пути, в котором airvpn исполняемый файл airvpn , и запустить chmod u+s airvpn как root. Однако этот трюк не работает с текстовыми файлами (программами python, сценариями оболочки и т. Д.). Кроме того, если вы когда-либо обновляете этот файл, вам нужно сделать это снова. И снова в следующий раз, когда вы его обновите. И опять…

Создайте файл конфигурации sudo

BTW, sudo (и расширения gksudo и gksu , которые используют одинаковые конфигурации как sudo ), и policykit (который может выполнять программу как root с помощью pkexec ) могут быть запрограммированы для запуска программы без необходимости вводить пароль. IDK, как это сделать с помощью policykit, но я могу научить вас, как добиться этого с помощью sudo . Прежде чем продолжить, вы должны запустить корневую оболочку, если что-то пойдет не так (вы можете потерять способность использовать sudo вообще, см. Ниже). Создайте текстовый файл в каталоге /etc/sudoers.d . Вы можете называть это так, как хотите, если у него нет . символ, и не заканчивается символом ~ .

Прежде чем продолжить, я должен предупредить вас, что вам нужно знать путь к исполняемому файлу airvpn . Если вы вводите type airvpn в свой терминал, он должен сообщить вам, где находится этот файл. Предполагая, что это /usr/bin/airvpn , вы можете ввести:

%admin ALL = NOPASSWD:/usr/bin/airvpn

и сохраните его в каталоге /etc/sudoers.d . Вероятно, рекомендуется использовать команду chmod для установки разрешений на файл до 0440. Вы можете сделать это, запустив (как root) chmod 0440 file , заменив «файл» на имя вновь созданного файла.

Теперь откройте новый терминал и протестируйте эту новую конфигурацию, запустив gksudo airvpn . (Причина, по которой слово «новый» выделено жирным шрифтом, заключается в том, что sudo / gksudo может не запрашивать пароль, если вы уже выполнили команду sudo / gksudo в существующем терминале, даже если вы на самом деле не настроили sudo чтобы избежать запрашивая у вас пароль.) Если бы вы смогли сделать это в новом терминале, вы успешно выполнили бы airvpn без пароля. Теперь все, что вам нужно сделать, это изменить свой элемент запуска для запуска gksu airvpn или gksudo airvpn , и вам будет хорошо идти. Это будет работать независимо от того, является ли исполняемый файл двоичным файлом или текстовым файлом. Кроме того, вам нужно сделать это только один раз, независимо от того, как часто вы обновляете эту программу.

о нет! Это не сработало, и теперь sudo дает мне ошибки!

Если что-то пойдет не так, и вы потеряете возможность использовать sudo / gksudo / gksu для выполнения чего-либо как root, вы можете удалить вновь созданный файл, и sudo должен вести себя так, как раньше. (Помните, когда я посоветовал вам работать с корневой оболочкой? Возможно, вам понадобится удалить этот файл. Конечно, вы можете выполнить корневую оболочку, запустив pkexec su , а затем используйте это, чтобы удалить файл.)

ubuntu.fliplinux.com

Root Права — Как Дать Пользователю Права Root — Linux

Из этой статьи вы узнаете, как создать пользователя в Linux с правами root и как дать привилегии root уже существующему пользователю.

Это можно легко сделать, изменив UID (id пользователя) и GID (id группы) в файле /etc/passwd.

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

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

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

Проверьте Настройки SSH Сервера: Если вы запретили пользователю root подключаться по SSH, установив PermitRootLogin no в /etc/ssh/sshd_config — вы не сможете зайти на сервер, если у вашего пользователя будет UID 0.

Дать Root Права Новому Пользователю

Допустим вам необходимо создать нового пользователя и дать ему доступ на сервер с root правами.

Чтобы создать пользователя с абсолютно теми же правами что и пользователь root, мы должны назначить ему тот же ID пользователя, что у root (UID 0) и тот же ID группы ( GID 0).

Используйте следующие команды, чтобы создать нового пользователя john, дать ему root права и установить пароль:

$ sudo useradd -ou 0 -g 0 john $ sudo passwd john

Дать Root Права Существующему Пользователю

Дельный Совет: Расставьте все точки над «i» в вопросах о правах доступа к файлам и папкам в Linux! Читать далее →

Допустим у вас уже есть какой-то пользователь john, которому вы хотите дать root права:

$ grep john /etc/passwd john:x:1001:1001::/home/alice:/bin/sh

Для этого необходимо открыть файл /etc/passwd, найти этого пользователя и изменить его UID и GID на 0:

$ grep john /etc/passwd john:x:0:0::/home/john:/bin/sh

Добавить Пользователя в Группу Root

Если вы только хотите добавить пользователя john в группу root, без предоставления ему всех привилегий пользователя root, выполните следующую команду:

$ sudo usermod -a -G root john

Удалить Пользователя С Root Правами

Дельный Совет: Подключайтесь на удаленный Linux сервер без ввода пароля! Читать далее →

У вас не получится просто взять и удалить второй root аккаунт с еще одним UID 0 с помощью команды userdel:

$ sudo userdel john userdel: user john is currently used by process 1

Перед тем как удалять такого пользователя, необходимо в файле /etc/passwd изменить его UID 0.

Например, измените:

john:x:0:0::/home/john:/bin/sh

на что-то вроде:

john:x:1111:0::/home/john:/bin/sh

Теперь вы сможете удалить пользователя john командой userdel:

$ sudo userdel john

www.shellhacks.com

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

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

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

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

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

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

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

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

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

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

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

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

cd /home/projects/myprog

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

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

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

Дальше запускаем инсталляцию готового к установке пакета при помощи команды make install.

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

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

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

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

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

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

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

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

gksudo jackd

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

gksu jackd

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

kdesu jackd

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

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

gksudo(или kdesuдля Kubuntu)

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

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

sudo

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

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

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

sudo -K

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

Есть случаи, когда 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 в обоих частях, что не совсем удобно. Либо временно перейти основательно под суперпользователя при помощи команды

sudo -s

Параметр -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. Всё по другому, но очень удобно! Пакеты Ubuntu! 2. Установка виртуальной машины (часть 1)! 3. Что такое DropBox или нужные файлы всегда под рукой!

ckc-ok.ru

root, sudo и # | Русскоязычная документация по Ubuntu

Для начала определимся в терминах:

  • root - суперпользователь системы. А если более точно, то это пользователь с идентификатором 0. Имя здесь не особо важно. Хотя по умолчанию это общее имя пользователя с нулевым идентификатором пользователя для всех unix-like операционных систем. Это пользователь обладает наивысшими привилегиями в ОС.
  • sudo - консольная команда выполняющая команду переданную ей как аргумент с правами суперпользователя (root). Графический аналог - gksu, kdesu.

  • # - символ подсказки в консоли, который явно указывает, что команда будет выполнена под учетной записью root (в отличии от символа $, который говорит что команда будет выполнена от имени обычного пользователя).

Ответ - прост: НИКОГДА. Более того, в дистрибутивах на основе Debain (к коим относится и Ubuntu) работа под пользователем root заблокирована - интерактивно залогиниться в консоль или GUI под ним нельзя.

Все это однако не означает что никаких административных действий выполнить в такой системе нельзя. Для исполнения административных команд используется команда sudo (или её графический аналог gksu).

Несмотря на то, что sudo исполняет только одну команду, использовать эту команду удобно и просто. Первый раз, при выполнении команды через sudo будет запрошен пароль текущего пользователя. Это выглядит несколько странно на первый взгляд, ведь пользователь уже залогинился и ввел свой пароль (или логин был автоматическим). Однако дополнительный запрос пароля служит привлечением внимания пользователя, что он запрашивает исполнение команды с повышенными привилегиями. Вводить пароль на каждую команду sudo - не потребуется - единожды введенным пароль для sudo действует в течении определенного времени и только если между командами с sudo будет большой интервал во времени, пароль будет запрошен вновь. Доступ к команде sudo не бесконтролен: пользоваться ей могут только пользователи, включенные в группу admin.

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

  • sudo -i : переводит пользователя в сессию под root-ом. Это аналог команды su1), за тем исключением, что пароль требуется пользователя, а не root-а. Выход из сессии - exit.
  • sudo -s : переводит пользователя в сессию под root-ом, но при этом текущий каталог не меняется /root 2) а остается тем же что был до вызова команды. Выход из сессии - exit.

Важные замечания:

  • Будьте внимательны выполняя команды с sudo или работая в сессии root-а (и не забывайте выйти из сессии root-а по окончанию действий требующих расширенных прав).
  • Не пользуйтесь sudo там, где это не нужно.

help.ubuntu.ru


Смотрите также