Respuestas:
Para completar, los trabajos en, por ejemplo, /etc/cron.{hourly,daily,weekly,monthly} se ejecutan secuencialmente. El script run-parts recorre todos los archivos en este directorio.
02 4 * * * root run-parts /etc/cron.daily
Por lo tanto, puede usar eso en combinación con una convención de nomenclatura (similar a la numeración, /etc/init.d/rc*.d
por ejemplo) para asegurarse de que los trabajos se ejecuten secuencialmente.
0 * * * *
que publicó anteriormente), como otras han publicado, no hay garantía sobre el orden en que se ejecutarán. Pueden ejecutarse en paralelo en un sistema de múltiples núcleos, AFAIK el orden en que se ejecutan puede ser diferente cada día. La convención de nomenclatura que mencioné en combinación con partes de ejecución o el uso de un script maestro que llama a los scripts de respaldo reales es la única forma de garantizar que los scripts se ejecuten en un orden particular.
Las tareas enumeradas en cron se ejecutarán en paralelo, tal como suelen hacer los procesos. No hay forma de estar seguro de cuál comenzará primero, y no hay forma en cron de asegurarse de que la tarea A se haya completado antes de que comience la tarea B.
Cron es un demonio (servicio) que se ejecuta continuamente; sin embargo, lee crontabs una vez por minuto.
La secuencia exacta en la que se ejecutan los trabajos dependerá de la implementación del crond de sus sistemas.
Los archivos sueltos que algunas distribuciones colocan dentro de /etc/cron.d/ se analizan en busca de su configuración de temporizador cron, ya que estos archivos siguen la sintaxis normal de crontab (5).
El orden en que se ejecutan los trabajos individuales depende del cronograma que establezca para ellos, obviamente.
Correrán en paralelo. Puede usar los siguientes métodos para ejecutar los procesos secuencialmente.
# Use a semicolon to run command2 after command1 has completed
02 4 * * * /path/to/command1 ; /path/to/command2
# Use two ampersands to run command2 after command1 has completed successfully.
02 4 * * * /path/to/command1 && /path/to/command2
# Use two vertical rules to run command2 after command1 has completed unsuccessfully.
02 4 * * * /path/to/command1 || /path/to/command2