Какие разрешения мне нужно предоставить пользователю для запуска команды «shutdown -r 5» из cron?

Какие разрешения мне нужно предоставить пользователю для запуска команды «shutdown -r 5» из cron?

У меня есть скрипт bash, который я запускаю в /etc/crontab на Linux.

$ uname -a
Linux mymachine.com 3.4.76-65.111.amzn1.x86_64 #1 SMP Tue Jan 14 21:06:49 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Скрипт bash содержит строку

sudo shutdown -r 5

Однако, когда задание cron выполняется (как пользователь с именем «myuser»), машина не перезагружается, и вместо этого я нахожу это в журналах

[sudo] password for myuser:

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

решение1

Вам нужна строка /etc/sudoersследующего содержания:

myuser ALL = NOPASSWD:  /sbin/shutdown

В этой NOPASSWDчасти говорится sudo, что нужно myuserзапустить команду выключения, указав пароль.

Чтобы добавить такую ​​строку /etc/sudoers, выполните (как root):

sudoedit /etc/sudoers

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

Связанный контент