Я не буду вдаваться в то, насколько это плохая идея; проще говоря, запуск sudo
в crontab требуется, чтобы ваш пароль был сохранен где-то в виде открытого текста.
Это плохая идея.
Ниже приведен предпочтительный метод выполнения административных задач через cron. Поскольку вам на самом деле не нужно писать sudo
в crontab, если вы изменяете crontab root.
Используйте crontab root
Выполните следующую команду:
sudo crontab -e
Это открывает root
это кронтаб. sudo
нет необходимости запускать вашу команду в этом контексте, так как она будет вызвана как root
в любом случае.
Поэтому вы просто добавите следующее в crontab root.
@hourly rm somefile
Теперь, если вы абсолютно хотите быть небезопасным и рисковать своим паролем, выполните следующую команду из вашей собственной crontab и автоматически введите свой пароль по запросу sudo
.
Снова, это не рекомендуется.
В вашей собственной crontab напишите свою команду следующим образом:
@hourly echo "password" | sudo -S rm somefile
Очевидным недостатком здесь является то, что, если кто-либо когда-либо получит доступ к вашей crontab, ваш пароль будет доступен для чтения в виде открытого текста.
Ты не должен этого делать.