Básicamente, las principales diferencias entre cron y anacron son las siguientes:
- Cron es estricto al 100% a la hora de ejecutar tareas configuradas, todo lo contrario que anacron. Si hay un cron que se tiene que ejecutar todos los días a las 03:00 y el sistema está apagado, cron no lo ejecutará. En cambio, anacron sí, lo ejecutará una vez que el sistema vuelva a encenderse si el trabajo tenía que haberse realizado cuando el equipo estaba apagado. Es decir, en servidores y sistemas con disponibilidad 24 x 7 x 365 es mejor usar cron, pero en equipos de escritorio o aquellos que puedan estar apagados es mejor anacron.
- Cron permite programar tareas con exactitud de minutos, mientras que en anacron el mínimo es la ejecución diaria de la tarea, pudiendo únicamente especificar un rango horario en el que se ejecutará.
- Cualquier usuario puede tener sus propios cron configurados, mientras que para usar anacron hay que ser superusuario. (cron es versatil y se puede restringir si fuera necesario).
- Cron corre como demonio todo el tiempo mientras que anacron se ejecuta a través de scripts en el arranque de sistema o con llamadas propias desde cron.
Normalmente en la mayoría de sistemas de producción, por no decir en todos encontraréis que se usa cron, anacron se suele dejar para equipos de escritorio, portátiles y demás equipos de uso personal.