Inicio > Gestión de paquetes y sistema > anacron

anacron: Ejecución de tareas periódicas después del arranque del sistema

anacron es una utilidad diseñada para ejecutar tareas periódicas en entornos donde el sistema no está siempre encendido (por ejemplo, portátiles, escritorios). Evita la pérdida de tareas ejecutándolas cuando el sistema se reinicia o se activa, si se perdieron mientras el sistema estaba apagado. Es similar a `cron`, pero ofrece una flexibilidad que no depende del tiempo de actividad del sistema.

Descripción general

anacron ejecuta las tareas definidas en el archivo `/etc/anacrontab` en intervalos diarios, semanales o mensuales. Si el sistema se apaga y se pierden las ejecuciones de tareas, anacron las ejecutará cuando el sistema se reinicie, evitando así la pérdida de tareas. Esto lo diferencia de `cron`, que es más adecuado para sistemas que funcionan las 24 horas del día, como los servidores.

Características principales

  • Evita la pérdida de tareas durante la inactividad del sistema
  • Ejecuta tareas en intervalos definidos (diario/semanal/mensual)
  • Rastrea la última hora de ejecución basándose en archivos de registro
  • Útil principalmente en entornos de escritorio y portátiles

Opciones principales

Estas son las opciones principales que se utilizan con el comando anacron.

Control de ejecución

Configuración/Información

Comando generado:

Combina los comandos.

Descripción:

`anacron` Ejecutando el comando.

Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.

Ejemplos de uso

Aquí tienes algunos ejemplos comunes de uso de anacron.

Ejecución manual de anacron

sudo anacron -s

Ejecuta manualmente todas las tareas definidas en anacrontab. Se ejecuta automáticamente al arrancar el sistema, pero se puede activar manualmente si es necesario.

Ver el archivo anacrontab

cat /etc/anacrontab

Verifica el archivo de configuración donde se definen las tareas de anacron.

Ejecutar en modo de depuración

sudo anacron -d

Ejecuta en modo de depuración para ver información detallada sobre qué tareas está ejecutando anacron.

Actualizar solo la marca de tiempo sin ejecutar tareas

sudo anacron -u

Actualiza la hora de la última ejecución de anacron a la hora actual sin ejecutar realmente las tareas. Esto es útil si desea omitir ciertas tareas.

Instalación

anacron suele estar preinstalado como parte de los paquetes `cronie` o `vixie-cron` en la mayoría de las distribuciones de Linux. Si no está instalado, puede instalarlo con los siguientes comandos.

Basado en Debian/Ubuntu

sudo apt update && sudo apt install cronie

Instala el paquete `cronie` usando el gestor de paquetes apt.

Basado en RHEL/CentOS/Fedora

sudo dnf install cronie
# o
sudo yum install cronie

Instala el paquete `cronie` usando el gestor de paquetes dnf o yum.

Consejos y precauciones

Aquí tienes algunos consejos útiles y precauciones al usar anacron.

Archivos y directorios de configuración principales

Estos son los archivos y directorios clave que controlan el comportamiento de anacron.

  • /etc/anacrontab: El archivo de configuración principal donde se definen el período, el retraso, el identificador de la tarea y el comando a ejecutar para las tareas de anacron.
  • /var/spool/anacron/: El directorio donde se almacenan los archivos de marca de tiempo que registran la última hora de ejecución de cada tarea. anacron utiliza estos archivos para determinar si se han perdido tareas.

Diferencia con cron

`cron` ejecuta tareas a horas específicas cuando el sistema está siempre encendido, mientras que `anacron` las ejecuta después de un retraso (delay) al arrancar el sistema si se perdieron mientras estaba apagado. Por lo tanto, es más adecuado para entornos como portátiles o escritorios donde el sistema no está siempre operativo. `anacron` se puede usar junto con `cron`, y `cron` se puede configurar para ejecutar `anacron` periódicamente y verificar las tareas perdidas.

Estructura del archivo anacrontab

Cada línea en el archivo `anacrontab` tiene el formato `period delay job-identifier command`.

  • period: El período de ejecución de la tarea (por ejemplo, 1 para diario, 7 para semanal, @monthly para mensual).
  • delay: El tiempo de espera (en minutos) después del arranque del sistema antes de ejecutar la tarea. Ayuda a reducir la carga del sistema.
  • job-identifier: Una cadena única que identifica la tarea. Se crea un archivo de marca de tiempo en `/var/spool/anacron/` con este nombre.
  • command: El comando de shell que se ejecutará realmente.

Comandos de la misma categoría