GNU/Linux >> Tutoriales Linux >  >> Linux

¿Por qué no se ejecuta mi trabajo cron.d por minuto?

Al agregar una configuración de cron en /etc/cron.d/ o en /etc/crontab debe agregar el nombre de usuario en qué contexto debe ejecutarse el comando, en su ejemplo

* * * * * root /bin/touch /home/me/ding_dong

Y solo una pista mía:no tienes que empezar a ejecutar ls -ltr una y otra vez, solo usa watch -n 5 "ls -ltr" y ejecutará el comando cada 5 segundos (o cualquier otro valor reemplazando 5 con lo que quieras).


Para crear un nuevo cron trabajo, debe ejecutar crontab -e como el usuario que desea ejecutar el trabajo. Luego agregue la línea relevante en la ventana del editor que aparece:

* * * * * /bin/touch /home/me/ding_dong

La forma en que lo está haciendo requiere un formato diferente y, de todos modos, no es una buena idea. Crontabs en /etc/cron.d tienen un formato ligeramente diferente, requieren un nombre de usuario para ejecutarse. Por ejemplo:

* * * * * USERNAME /bin/touch /home/me/ding_dong

Un buen truco (como lo sugiere @VogonPoetLaureate) es capturar el error estándar de sus trabajos cron que pueden ayudar a depurarlos. Por ejemplo:

* * * * * /bin/touch /home/me/ding_dong 2>/tmp/error

Un posible error aquí es cómo un archivo de una sola línea es creado. De la documentación de Ubuntu:

...la línea tiene cinco campos de fecha y hora, seguidos de un comando, seguido de un carácter de nueva línea .

Por ejemplo, esta forma de creación no funciona:

printf "* * * * * /bin/touch /home/me/ding_dong" > /etc/cron.d/ding_dong

Linux
  1. /usr/bin Vs /usr/local/bin ¿En Linux?

  2. Linux:Ejecutar trabajo cron en primer plano

  3. unix:///var/run/supervisor.sock no hay tal archivo

  4. ¿Cuándo debo usar #!/bin/bash y cuándo #!/bin/sh?

  5. Diferencia entre /bin y /usr/bin

Cómo ejecutar un trabajo cron dentro de un contenedor docker

¿Cuándo debo usar /dev/shm/ y cuándo debo usar /tmp/?

trabajo cron para ejecutar en el entorno virtual conda

El trabajo cron de recolección de basura de Ubuntu para sesiones de PHP tarda 25 minutos en ejecutarse, ¿por qué?

¿Por qué mi logrotate de CentOS se ejecuta en momentos aleatorios?

#!/bin/sh vs #!/bin/bash para máxima portabilidad