В следующей статье мы рассмотрим, как мы можем запускать определенные команды без пароля sudo в Ubuntu благодаря файлу sudoers. Мне кажется логичным предупредить, что то, что будет прочитано ниже, носит исключительно образовательный характер. Важно быть очень осторожным, применяя то, что вы сможете прочитать здесь. Если по какой-либо причине вы разрешаете пользователю выполнять команду 'rm' без необходимости писать пароль sudo, вы можете случайно или злонамеренно удалить важные вещи из операционной системы.
Как я уже сказал, в следующих строках мы увидим, как выполнять определенные команды без необходимости писать пароль sudo в Unix-подобные операционные системы. Как известно всем пользователям Ubuntu, его необходимо писать, когда мы выполняем команду с помощью sudo. Но когда дело доходит до автоматизации определенных задач, написание этого может быть неудобным.
Выполнять определенные команды без пароля sudo в Ubuntu
Если по какой-либо причине, какой бы она ни была, вы хотите разрешить пользователю выполнять определенную команду без необходимости вводить пароль sudo, вам следует добавьте эту команду в файл sudoers.
Допустим, нам нужен пользователь с именем Entreunosyceros запустите команду mkdir без необходимости вводить пароль sudo. Для этого нам нужно будет отредактировать файл sudoers. В терминале (Ctrl + Alt + T) пишем:
sudo visudo
Когда файл откроется, в конце мы добавим следующую строку:
entreunosyceros ALL=NOPASSWD:/bin/mkdir
В этой строке, добавленной в предыдущем захвате, entreunosyceros - это имя пользователя. Согласно этой строке, этот пользователь сможет выполнить команду 'MkDir'без ввода пароля sudo.
Система проста. Мы сможем добавляем столько команд, сколько хотим, разделяя их запятыми, как показано ниже:
entreunosyceros ALL=NOPASSWD:/bin/mkdir,/bin/chmod
После завершения добавления линии, выйдите из системы и войдите снова или перезагрузите систему. С этого момента пользователь, на которого указывает строка, добавленная в файл свитера Вам не нужно будет вводить пароль sudo при выполнении любой из добавленных команд. Да, в самом деле, при запуске всех остальных команд вам будет предложено ввести пароль для использования sudo.
Найдите путь к команде и добавьте его в файл sudoers
В этом случае мы хотим добавить команду с другим путем, чем тот, который мы использовали до сих пор, например, путь к apt, нам нужно будет правильно прописать путь к исполняемому файлу. В случае, если в этом нет уверенности, мы можем использовать команду 'где'чтобы найти правильный путь к apt. В терминале (Ctrl + Alt + T) вам нужно будет написать:
whereis apt
Как вы можете видеть на скриншоте выше, путь для команды apt: / usr / bin / apt, поэтому это путь, который нужно добавить в файл sudoers.
В случае, если мы заинтересованы в том, чтобы не вводить пароль для sudo при выполнении команды apt, нам придется снова отредактировать файл sudoers:
sudo visudo
Внутри было бы добавьте в файл команду 'apt', как мы это делали с предыдущими командами:
entreunosyceros ALL=NOPASSWD:/bin/mkdir,/bin/chmod,/usr/bin/apt
После добавления команды сохраните и закройте файл sudoers. Затем выйдите из системы и войдите снова. Теперь можно проверить, может ли пользователь выполнить команду с префиксом sudo без использования пароля:
sudo apt update
Запрашивать пароль sudo для конкретной команды в файле sudoers
Если после этого вам нужно, чтобы пользователь снова вводил пароль, все, что вам нужно сделать, это отредактируйте файл sudoers и удалите добавленную команду. Сохраните файл, выйдите из системы и снова войдите в систему.
Альтернативой может быть добавьте директиву PASSWD: перед командой, которая, как мы хотим, должна была написать пароль sudo. Следуя примеру, мы собираемся изменить строку, добавленную в файл sudoers, как показано ниже:
entreunosyceros ALL=NOPASSWD:/bin/mkdir,/bin/chmod,PASSWD:/usr/bin/apt
В этом случае пользователь entreunosyceros может выполнять команды 'MkDir«И»CHMOD'без ввода пароля sudo. Однако вам нужно будет ввести его, когда вы захотите запустить команду 'склонный.
Привет. Я смог отредактировать файл sudoers, как вы хорошо объяснили в сообщении. Прямо сейчас начинаю пользоваться Arch. Чтобы добавить команду pacman для определенных действий ... как мне это сделать? Например, я заинтересован в том, чтобы не запрашивать пароль для обновления операционной системы, например: sudo pacman update. Но чтобы быстро попросить пропуск. Спасибо, всего наилучшего.