Generalidades sobre Crontab

Generalidades

El comando crontab que se encuentra en los sistemas operativos Unix y similares a Unix, se usa para programar comandos que se ejecutarán periódicamente.

Generalmente crontab usa un daemon, crond, que se ejecuta constantemente en segundo plano y comprueba una vez por minuto para ver si es necesario ejecutar alguno de los trabajos programados. Estos trabajos generalmente se denominan cron jobs. Los cron jobs se ejecutan como el usuario que los crea, como si ese usuario escribiera el comando en tu shell.

Cuando se crea un cron job en el panel, puedes asignarlo a un usuario SFTP o shell.

Sin embargo, solo los usuarios shell pueden crear y editar manualmente cron jobs en el servidor.

Crontab contenido del archivo en el servidor

Debido a la naturaleza compleja de traducir el contenido proporcionado por el usuario del panel al servidor, lo que ingresas al panel no es lo que ves en el archivo crontab. Por ejemplo:

es-panel-create-a-cronjob.png

El archivo crontab en el servidor aparece de la siguiente manera:

###--- BEGIN DREAMHOST BLOCK
###--- Changes made to this part of the file WILL be destroyed!
# Cron Example
MAILTO="admin@example.com"
@hourly /usr/local/bin/setlock -n /tmp/cronlock.3788814087.215158 sh -c $'/usr/local/php82/bin/php /home/usuario/example.com/script.php'
###--- You can make changes below the next line and they will be preserved!
###--- END DREAMHOST BLOCK

Cuando se selecciona la opción 'Use locking', los comandos que deseas ejecutar se filtran a través de una invocación única del comando setlock.

Visita la página de manual de setlock para más información. El uso de setlock genera mensajes de error si se invoca tu cron jobs antes de que la última iteración del trabajo libere tu archivo de bloqueo único. Esto puede suceder si tu script tarda más en ejecutarse que el tiempo entre ejecuciones de trabajo.

Ver también

¿Este artículo ha respondido sus preguntas?

Última actualización el PST.

¿Aún no encuentra lo que busca?