Muy a menudo en sistemas similares a LinuxEs necesario automatizar algunos procesos de rutina. Los planificadores especiales se usan para esto. Uno de los más famosos es Cron, que se discutirá en este artículo.

¿Qué es Cron?

El nombre del programa se deriva del griego"Chronos", que significa tiempo. Lo cual, de hecho, es lógico. La tarea del daemon es ejecutar los comandos escritos en él en ciertos momentos. El proceso de implementación real se basa en verificar las tablas de coronas y compararlas con la fecha y hora actuales.

Archivo Crontab

El elemento más importante de la configuración de Cron esarchivo de configuración crontab. Contiene los comandos de ejecución y las rutas a los scripts. Todos ellos se ejecutan como root. Como están ubicados en el directorio /etc/cron.d, estos archivos deben configurarse allí.

configuración cron

Para cada usuario individual del sistema, utiliza su propio archivo crontab.

Diferentes distribuciones de Linux usan sus directorios para almacenar las preferencias del usuario. Para RedHat, esto es var/spool / cron. En Debian y Ubuntu, esto será var / spool / cron / crontabs. Y var / spool / cron / tabs en SUSE.

Lista de comandos para administrar crontab

Cron tiene un conjunto de directivas especiales, con las cuales puedes administrar el programador. Aplícalos junto con crontab. Aquí hay una lista corta:

  • -u nombre de usuario. Establece el usuario cuyas tareas y configuraciones tomarán medidas adicionales. Si omite esta clave, se especificará el usuario predeterminado.
  • -l. Muestra la lista de tareas actual.
  • -e. Ejecuta el editor para el programador de tareas.
  • -r. Elimina todas las tareas disponibles de la lista.

Formato de tarea

Como se mencionó anteriormente, la configuración de Cron es establecer los comandos en un archivo especial. Parece un registro simple que consta de seis columnas:

  • el primero indica la cantidad de minutos. El rango disponible es de 0 a 59. Puede usar múltiples valores, rango y caracteres especiales;
  • la segunda columna es el reloj. Se pueden usar valores de 0 a 23;
  • más - día. Aquí puede especificar un número del 1 al 31;
  • el cuarto es el mes. El valor mínimo es 1, el valor máximo es 12;
  • la quinta semana. 0 o 7 corresponde al domingo;
  • El último comando es el comando mismo.

Como se mencionó, puede especificar en el archivocaracteres especiales, "*" o "/". Por ejemplo, un registro de 23 * / 2 *** echo "Ejecutar" significa que cada hora par y 23 minutos mostrarán "Ejecutar".

configuración cron

Características del archivo crontab

Al configurar Cron, recuerde que tiene propiedades específicas que deben tenerse en cuenta al configurar:

  • cada archivo debe necesariamente terminar con una cadena vacía; de lo contrario, se puede ignorar el último elemento y, a veces, el archivo completo;
  • los archivos colocados en directorios que tienen un punto en el nombre también serán ignorados por el planificador;
  • En los archivos de configuración, puede usar los símbolos de cuadrícula "#". Se utilizan para marcar líneas con comentarios. Esto es muy útil para describir tareas y comandos programados.

Variables adicionales

Al configurar Cron, puede usar valores especiales y abreviaturas en los comandos. Por ejemplo, para especificar el día de la semana, puede usar la siguiente lista:

  • sol - domingo;
  • lunes - lunes;
  • martes - martes;
  • wed - medio ambiente;
  • jueves - jueves;
  • viernes - viernes;
  • Sábado - Sábado.

Durante meses también hay valores literales separados: enero, febrero, marzo, abril, mayo, junio, julio, agosto, septiembre, octubre, noviembre, diciembre.

sintonizando cron centos

Además, para configurar Cron, existen variables separadas que pueden reemplazar líneas de comando completas:

  • @ reiniciar. El comando comenzará cada vez que inicie la computadora;
  • @ anual. Esta tarea se lanzará una vez al año. Equivalente a esto, el registro en forma numérica puede ser tal: 0 0 1 1 *. Su sinónimo aún se puede escribir como @anualmente;
  • @monthly. Como puede adivinar por el nombre, esta variable ejecuta el comando una vez al mes. Su contraparte numérica es 0 0 1 * *;
  • @ semanal. Esta variable se iniciará todas las semanas;
  • @dayly. Una vez al día;
  • @midnight. El lanzamiento se realizará a la medianoche;
  • @hourly Cada hora

Configurando Cron en Centos 7

El proceso de instalación y configuración en sí es pequeñodifiere de otras distribuciones Linux similares. Antes de configurar Cron en Centos, debe instalar el paquete cronie en el sistema. Puede hacer esto con el comando yum install cronie. Para crear el archivo de instrucciones, debe ejecutar crontab -e en la terminal. Todas las configuraciones del sistema de Cron se almacenarán en / var / spool / cron / username.

configuración centos 7 cron

Algunos ejemplos útiles para crear tareas repetitivas

Puede configurar Cron de forma que cubra casi todas las necesidades de cualquier usuario.

  • 00 09-17 * * 1 - 5 / camino / al equipo / corona. Este comando ejecutará automáticamente la acción programada cada día laborable de 9 a 5 horas cada primer minuto;
  • 00 9.17 * * * / ruta / al equipo / corona. En este ejemplo, el comando se ejecuta dos veces al día. El primero en 9, el segundo a las 5 en punto. El signo "*" indica que el comando se ejecutará todos los días, meses y años;
  • Además, no te olvides de las variables de símbolos. Por ejemplo, @monthly realizará la tarea todos los meses en el primer minuto de la primera hora del primer día. Y @daily se lanzará todos los días.

Opiniones de usuarios sobre Cron Scheduler

Como regla, para ordinario y poco sofisticadoLos usuarios de Cron son solo un conjunto de caracteres. Pero para los administradores del sistema y los usuarios inveterados de Linux, esta utilidad es un asistente indispensable. Muchos notan la flexibilidad y el rendimiento de un sistema bien ajustado.

configuración cron d

Con Cron, puede automatizar procesos de rutina, que son demasiado difíciles de realizar manualmente en ciertos intervalos. Ya sea crear un sistema de respaldo o actualizarlo.

Sin embargo, hay algunos pequeños matices. Por ejemplo, algunos administradores de sistemas observan que sería bueno tener la capacidad de implementar comandos cada segundo en el programador. Pero los desarrolladores del programa han dejado en claro que esta opción no se implementará.

Los principiantes generalmente se pierden en un grannúmero de configuraciones y dificultades al iniciar el daemon del planificador. Para ellos hay conchas más comprensibles. Por ejemplo, para distribuciones basadas en Debian, puede convertirse en un cronograma de gnome. La versión de KDE se llama kcron.

Conclusiones

En general, Cron es una excelente herramienta paraautomatización de muchos procesos rutinarios y facilitar el trabajo con el sistema. Para aquellos que no les gusta la línea de comandos y las sutilezas de configurar manualmente los archivos de configuración, hay varias variedades de Cron en el shell gráfico que simplifican la interacción.

Otros sistemas operativos también tienen su propioversión de los planificadores, por ejemplo, en un entorno de Windows esto es NnCron. Otro análogo es el Programador de tareas. También está disponible en la línea de sistemas de Microsoft. Y su versión de consola es schtasks.exe.

</ p>