Такие читатели, как вы, помогают поддерживать MUO. Когда вы совершаете покупку по ссылкам на нашем сайте, мы можем получать партнерскую комиссию. Читать далее.

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

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

Зачем выполнять команды Linux от имени другого пользователя?

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

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

  • Контроль: Он позволяет администраторам или владельцам системы предоставлять определенный доступ к определенным файлам и программам. Это хорошо для стабильности системы, конфиденциальности и общей производительности.
    instagram viewer
  • Безопасность: Ограничение доступа к определенным частям системы предотвращает случайное удаление или изменение системы. И это также уменьшает поверхность атаки системы.

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

К счастью, как и в большинстве случаев в Linux, есть отличные альтернативы команде sudo, и вот некоторые из них.

1. pkexec

Команда pkexec (PolicyKit Executive) — это интерфейсная реализация инфраструктуры PolicyKit, предоставляющая набор правил для предоставления привилегий пользователям и процессам.

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

Инструмент pkexec уже установлен в Ubuntu и других основных дистрибутивах Linux. Если он не установлен, вот как его установить.

В системах на основе Debian запустите:

Судо подходит обновлять && судо способно установить комплект политик-1

В RHEL и подобных дистрибутивах запустите:

судо днф установить комплект политик

В дистрибутивах Linux на базе Arch используйте следующую команду:

sudo sudo pacman -S набор политик

Как использовать pkexec

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

Например, для установки забавная программа для линукса: cowsay в вашей системе с привилегиями суперпользователя, вы должны использовать следующее:

pkexec подходящий установить ковсей

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

pkexec --user admin apt установить cowsay

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

2. делай как

Команда doas берет свое начало в операционной системе OpenBSD. Он позволяет выполнять команду с привилегиями указанного пользователя или роли.

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

Если это не так, вот как вы можете установить doas в Linux.

Настройка doas в линуксе

в отличие от судо и pkexec команд, вы должны настроить только что установленный экземпляр doas, прежде чем начать его использовать. Файл конфигурации находится по адресу /etc/doas.conf. Если файл конфигурации не существует, создать его с помощью сенсорной команды или любую другую программу на ваш выбор.

Чтобы предоставить пользователю «mwizak» привилегии суперпользователя в вашей системе, вы можете добавить следующую строку в файл /etc/doas.conf файл:

разрешение сохраняется :mwizak как корень

Не забудьте заменить пользователя «mwizak» в вышеупомянутой команде правильным именем пользователя.

После сохранения изменений конфигурации попробуйте установить cowsay с помощью следующей команды:

подходит установить ковсей

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

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

doas -u админ подходящий установить ковсей

3. су

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

Запуск команды su без каких-либо аргументов предполагает пользователя root, поэтому для продолжения необходимо знать пароль пользователя root. Если бы вы переключились на пользователя с именем john, вы бы просто выполнили команду:

Су Джон

Введите пароль для пользователя john. Чтобы вернуться к исходному пользователю, просто запустите Выход команда.

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

4. дздо

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

Вы можете использовать флаг, чтобы указать пользователя, чьи привилегии вы хотите использовать. Например, следующая команда выполнит apt-получить обновление команда с правами суперпользователя (root):

дздо -у корень мет-получать обновлять

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

Используйте правильные пользовательские элементы управления для повышения безопасности в Linux

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

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