Pregunta:
¿Es posible ejecutar un trabajo cron que necesita el comando sudo ?
Me gusta:
sudo rm somefile
Respuesta:
No voy a entrar en cuánto es una mala idea; En pocas palabras, ejecutar sudo
en crontab requiere que su contraseña se almacene en algún lugar en texto sin formato.
Es una mala idea.
El siguiente es el método preferido para ejecutar tareas administrativas a través de cron. Dado que realmente no necesita escribir sudo
en el crontab, si está modificando el crontab de root.
Usar crontab de root
Ejecute el siguiente comando:
sudo crontab -e
Esto abre el crontab de root
. sudo
no es necesario para ejecutar su comando en este contexto, ya que será invocado como root
todos modos.
Por lo tanto, simplemente agregaría lo siguiente al crontab de root.
@hourly rm somefile
Ahora, si absolutamente quiere estar inseguro y tomar riesgos con su contraseña, lo siguiente ejecutará su comando desde su propio crontab e ingresará su contraseña automáticamente cuando sudo
solicite.
Nuevamente, esto no se recomienda .
En su propio crontab, escriba su comando así:
@hourly echo "password" | sudo -S rm somefile
La desventaja obvia aquí es que, en caso de que alguien acceda a su crontab, su contraseña será legible en texto plano.
No deberías hacer esto.