Что такое Sudo в Linux?

Когда вы запускаете административные приложения в Linux, вы можете использовать команду su (switch user) для переключения на суперпользователя (root) или команду sudo (super user do).

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

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

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

Как это устроено

Хотя они работают по-разному, вы можете сравнить команду sudo с приглашением, которое вы можете увидеть в Windows или macOS. Когда вас спросят в этих операционных системах, хотите ли вы продолжить выполнение этого конкретного действия, вы получите кнопку, подтверждающую, что вы хотите запустить действие с повышенными привилегиями, и иногда вам даже может потребоваться ввести пароль администратора. ,

Как и в этих операционных системах, Linux использует команду sudo в качестве стены между обычными задачами и задачами администратора, так что вам необходимо точно подтвердить, что вы хотите выполнить все, что будет выполнять команда. Еще более похожа команда run as в Windows; Как и в Linux, команда run as работает из командной строки для запуска файла с учетными данными определенного пользователя, часто администратора.

Если вы не уверены, используете ли вы sudo или su, посмотрите на завершающий символ в командной строке. Если это знак фунта (#), вы вошли в систему как root.

О командовании Судо

В Linux sudo (произносится как «sue dough») позволяет системному администратору предоставлять определенным пользователям или группам пользователей возможность выполнять некоторые или все команды от имени пользователя root при регистрации всех команд и аргументов. Тем не менее, это не замена для оболочки.

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

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

Пример команды Sudo

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

Ошибка суперпользователя в Ubuntu

dpkg -i software.deb

Команда возвращает ошибку, потому что человеку без прав администратора не разрешено устанавливать программное обеспечение. Однако на помощь приходит команда sudo. Вместо этого правильная команда для этого пользователя:

Команда Sudo dpkg в Ubuntu

sudo dpkg -i software.deb

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

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

Ссылка на основную публикацию