GNU/Linux >> Tutoriales Linux >  >> Ubuntu

¿La secuencia de comandos de Shell no se ejecuta después de agregarla como un trabajo Crontab?

He agregado el siguiente trabajo crontab:

sudo crontab -e

58 * * * * ubuntu /home/ubuntu/backup/mysqlbackup.sh >/home/ubuntu/backup/log/backup.log

He probado con usuarios root y ubuntu.

Cuando ejecuto el comando:

sudo crontab -l

Y cuando corro:

systemctl status cron

Pero mysqlbackup.sh no se ejecuta. ¿Alguna idea de cuál es el problema o cómo puedo diagnosticar lo que va mal?

Nota:solo he agregado minutos para probar el script

Respuesta aceptada:

58 * * * * ubuntu /home/ubuntu/backup/mysqlbackup.sh >/home/ubuntu/backup/log/backup.log

Este es un formato incorrecto.

El formato se describe en el archivo crontab:

  # m h  dom mon dow   command

ubuntu no es un comando. Quítelo, para que la línea diga:

  58 * * * *  /home/ubuntu/backup/mysqlbackup.sh >/home/ubuntu/backup/log/backup.log

crontab de todo el sistema, especificado en /etc/crontab tiene el campo de usuario:

These files also have username fields,
# that none of the other crontabs do.
[...]
# m h dom mon dow user  command

Ubuntu
  1. ¿Tiempo de espera agotado en un script de Shell?

  2. ¿Trabajo cron para verificar si el script Php se está ejecutando, si no, entonces ejecutar?

  3. Shell Script:¿Condición "si el archivo no se está utilizando"?

  4. ¿El sonido no funciona después de la instalación de 12.04?

  5. Cron Script no se ejecuta como se esperaba de crontab – Solución de problemas

Cómo escribir un script de Shell en Ubuntu

Problema de Crontab:el trabajo de Cron no funciona cuando se usa el porcentaje

Shell Script, lea en la misma línea después de hacer eco de un mensaje

Comando de Linux para verificar si un script de shell se está ejecutando o no

Ejecute un script de shell todos los días a una hora específica

Encuentre si el archivo existe o no en HDFS usando un script de shell