¿Cuál es la diferencia entre cron y crond? Aprende los secretos de diferentes funciones en 1 minuto

Está usted en Linux ¿Configurar tareas programadas en el sistema, pero se siente confundido entre "cron" y "crond"?

Sí, mucha gente se preguntará:"¿Cuál es la diferencia entre los dos?" Aunque parecen gemelos, tras una inspección más cercana, existen diferencias sutiles pero cruciales entre ellos.

Este artículo le profundizará en sus características únicas y principios de funcionamiento.

¿Qué es cron?

comencemos con cron En primer lugar, este nombre debe resultarle familiar.

cron es en realidad un conjunto completo de Sistema de programación de tareas programadas., cuyo nombre proviene de la raíz griega "chronos”, es decir, tiempo.

sistema cronEs un programador de tareas programadas para sistemas Linux, que se utiliza para ejecutar automáticamente tareas específicas en momentos específicos.

Por ejemplo, puede programar scripts de respaldo para que se ejecuten temprano en la mañana, verificar el estado del sistema cada hora, etc.

¿Cuál es la diferencia entre cron y crond? Aprende los secretos de diferentes funciones en 1 minuto

funcionalidad principal de cron

La función principal de cron es automatizar la gestión y ejecución de las tareas del sistema. Estas tareas a menudo se denominan ".tareas programadas” o “Tarea programada”.

El sistema cron leerá crontab 文件(tabla cron), estos archivos contienen programas de tareas y listas de comandos, y cron ejecutará automáticamente estas tareas en horarios programados según la configuración del archivo crontab.

Puede decirse,cron es el "planificador" para la programación de tareas programadas, responsable de establecer cronogramas para todas las tareas.

Usar el comando crontab

En los sistemas Linux, el sistema cron consta de crontab mando para gestionar. aprobar crontab Comandos, puede agregar, editar y eliminar tareas programadas.

使用 crontab -e Comando para ingresar al modo de edición, puedes agregar las tareas que deseas realizar en la tabla cron, el formato es el siguiente:

* * * * * /path/to/command

Cada símbolo "*" representa una unidad de tiempo diferente, como minutos, horas, días, meses y semanas. Con estas configuraciones de tiempo, puedes controlar cuándo se ejecutan las tareas.

¿Qué es un crond?

Ahora que entendemos el concepto de cron, echemos un vistazo. corona. Este es el "héroe detrás de escena" del sistema cron.

crond es para el sistema cron demonio, es un programa que se ejecuta continuamente en segundo plano y se encarga de monitorear el tiempo del sistema y ejecutar las tareas establecidas por el sistema cron.

responsabilidades de crond

El proceso crond se iniciará automáticamente cuando se inicie el sistema y siempre se ejecutará en segundo plano. Su única tarea es ejecutar las tareas en el archivo crontab en el momento especificado.

Puede decirse,crond es el "ejecutor" del sistema cron.

Sin el proceso crond, el sistema cron perderá la capacidad de realizar tareas programadas.

En sistemas Linux, puede utilizar el siguiente comando para comprobar si el proceso crond se está ejecutando:

ps -ef | grep crond

Si el proceso crond no se está ejecutando, no se ejecutarán todas las tareas programadas. Por lo tanto, es fundamental mantener el proceso crond funcionando con normalidad.

La relación entre cron y crond: servicios y ejecutores

Para comprender mejor la relación entre cron y crond, podemos utilizar un生活ejemplo en .

Imagínate esto: tienes una persona llamada "Pequeño libro rojo”, que es un vasto sistema que permite a los usuarios ver y publicar contenido en momentos específicos;

Detrás de esta aplicación, existe un programa llamado “Xiaohong Guardian”, que se encarga de publicar contenido automáticamente en segundo plano.

cron es como "pequeño libro rojo" y crond es "pequeño guardián rojo".

Para resumir las diferencias entre cron y crond:

  • cron: Responsable de formular y gestionar cronogramas de tareas y es el "cerebro" de la programación de tareas programadas.
  • corona: Proceso demonio en segundo plano, que es el "ejecutor" de las tareas programadas y ejecuta las tareas de acuerdo con la programación en la tabla cron.

Visto de esta manera, cron es el sistema general y crond es el proceso que realiza tareas en el sistema.

archivo crontab: lista de tareas cron

La base de ejecución del sistema cron es inseparable de archivo crontab, que es donde el sistema cron almacena los cronogramas de tareas.

Cada usuario (incluido el usuario root) puede tener su propio archivo crontab independiente para gestionar sus propias tareas programadas.

nosotros podemos usar crontab -l comando para ver la lista de tareas del usuario actual, o usar crontab -e para editar la tarea.

sintaxis del archivo crontab

En el archivo crontab, cada línea representa una tarea y el formato de cada línea es el siguiente:

分钟 小时 日期 月份 星期 命令

Por ejemplo, la siguiente tarea representa la ejecución del script de respaldo a las 2 a. m. todos los días:

0 2 * * * /usr/local/bin/backup.sh

Este sencillo ejemplo ilustra las poderosas capacidades de automatización del sistema cron.

cron y crond: su colaboración detrás de escena

En el funcionamiento real del sistema, cron y crond son inseparables. cron es responsable de crear y administrar cronogramas de tareas, mientras que crond monitorea continuamente el tiempo y garantiza que las tareas se ejecuten en el momento especificado.

Siempre que el tiempo del sistema alcance el tiempo de tarea preestablecido, crond se "despertará" y ejecutará la tarea.

¿Por qué necesitamos el demonio crond?

La existencia de crond garantiza que las tareas se ejecuten a tiempo. Se iniciará automáticamente cada vez que el sistema se inicie y siga funcionando.

Si crond deja de ejecutarse, todas las tareas del sistema cron no podrán ejecutarse. Por lo tanto, el funcionamiento normal del demonio crond es crucial para la gestión automatizada del sistema.

Escenarios de aplicación en la gestión diaria del sistema.

La combinación de cron y crond se utiliza ampliamente en la gestión de sistemas, especialmente en entornos de servidores. Los siguientes son algunos escenarios de aplicación típicos:

  1. Copia de seguridad automática: A través de cron, puede programar el servidor para que realice copias de seguridad de los datos periódicamente todos los días o todas las semanas.
  2. Limpieza automática: Configure una limpieza periódica de los archivos de registro para evitar que se llene el espacio en el disco del servidor.
  3. Monitoreo y alarma: realice periódicamente comprobaciones del estado del sistema a través de cron y envíe correos electrónicos de alarma cuando se encuentren anomalías.

Malentendidos entre cron y crond: preguntas y respuestas frecuentes

¿Por qué no se ejecuta la tarea cron?

Muchas personas encontrarán que las tareas cron que configuraron no se ejecutan como se esperaba. Las razones pueden incluir las siguientes:

  1. el proceso crond no se inicia: Asegúrese de que crond esté funcionando normalmente.
  2. Error de configuración de tarea: Compruebe si la sintaxis del archivo crontab es correcta.
  3. problema de ruta: Asegúrese de que las rutas de comando y script especificadas sean correctas.

¿Cómo reiniciar el proceso crond?

Si el proceso crond es anormal, puede usar el siguiente comando para reiniciarlo:

sudo service crond restart

Este comando reiniciará el servicio crond para garantizar que todas las tareas se ejecuten normalmente.

Conclusión: La indispensabilidad de cron y crond

La perfecta cooperación entre cron y crond permite que el sistema Linux ejecute tareas automáticamente sin intervención humana, lo que mejora en gran medida las capacidades de gestión automatizada del sistema.

cron sirve como un sistema de programación de tiempo para hacer planes, y crond sirve como un proceso demonio responsable de ejecutar tareas.

Se puede decir que los dos se complementan y construyen conjuntamente un sistema automatizado de gestión de tareas potente y flexible.

En el uso diario, dominar las diferencias y aplicaciones de cron y crond puede hacer que se sienta más cómodo en la administración del servidor y lograr operaciones más eficientes.

En el futuro, podrá aprender más sobre el uso avanzado del sistema cron para optimizar y automatizar aún más el proceso de administración de su sistema.

cron y crond son definitivamente buenos socios que todo administrador de Linux debe tener.

发表 评论

Su dirección de correo electrónico no será publicada. 项 已 用 * 标注

Ir al Inicio