Saltar al contenido

Cómo ejecutar un trabajo cron usando el comando sudo

Solución:

No voy a entrar en cuánto es una mala idea; en pocas palabras, corriendo sudoen 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. Ya que realmente no necesitas escribir sudo en el crontab, si está modificando el crontab de root.

Usar crontab de root

Ejecute el siguiente comando:

sudo crontab -e

Esto se abre rootcrontab. sudo no es necesario ejecutar su comando en este contexto, ya que se invocará como root de todas formas.

Por lo tanto, simplemente agregaría lo siguiente al crontab de root.

@hourly rm somefile

Ahora, si tu absolutamente quiere no estar seguro y correr riesgos con su contraseña, lo siguiente ejecutará su comando desde su propio crontab e ingresará su contraseña automáticamente cuando se lo solicite sudo.

De nuevo, esto no es recomendable.


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.

Si está colocando el script de uno de los directorios cron (/etc/cron.*) entonces no necesita usar sudo ya que se está ejecutando como root.

Si está usando crontab, entonces querrá usar crontab de root. Esto lo ejecutará como root y tampoco necesitará sudo.

sudo crontab -e

Ejecute el siguiente comando en la terminal

sudo visudo

Se agregó la siguiente línea al final del archivo:

vidyadhar  ALL= NOPASSWD: /bin/rm

En el ejemplo anterior, vidyadhar es el nombre de usuario y no le pedirá la contraseña si está ejecutando el comando rm a través de vidyadhar.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *