En este tutorial, le mostraremos cómo usar Ubuntu crontab . En unos simples pasos, explicaremos cómo automatizar las tareas de su sistema en Ubuntu, usando el crontab en Ubuntu. La utilidad de software cron es un programador de trabajos basado en el tiempo en sistemas operativos similares a Unix. Cron está controlado por un archivo crontab (tabla cron), un archivo de configuración que especifica que los comandos de shell se ejecuten periódicamente en un horario determinado. Los archivos crontab se almacenan donde se guardan las listas de trabajos y otras instrucciones para el demonio cron. Los usuarios pueden tener sus propios archivos crontab individuales y, a menudo, hay un archivo crontab para todo el sistema (generalmente en /etc o un subdirectorio de /etc) que solo los administradores del sistema pueden editar.
Puedes usar cron en Ubuntu para ejecutar scripts automáticamente dentro de un período de tiempo específico, crear una copia de seguridad de sus bases de datos u otros archivos importantes, monitorear los servicios que se ejecutan en su servidor y muchas otras cosas. Siga los pasos a continuación para configurar Ubuntu crontab.
1. Conéctese a su servidor y actualice su sistema
Antes de comenzar con la configuración de crontab en su servidor Ubuntu, conectémonos a su VPS a través de SSH y actualicemos el software de su sistema a la última versión disponible.
Podemos hacer esto ejecutando el siguiente comando:
apt-get update && apt-get upgrade
2. Compruebe si el paquete cron está instalado
Para usar la utilidad cron, debemos asegurarnos de que el paquete cron esté instalado en su servidor.
Para verificar si cron está instalado, podemos ejecutar el siguiente comando:
dpkg -l cron
3. Instale el paquete cron en Ubuntu
Si el paquete cron no está instalado en su servidor, puede instalarlo con el administrador de paquetes:
apt-get install cron
4.Verificar si el servicio cron se está ejecutando
Para verificar si el servicio cron se está ejecutando en su sistema, podemos usar el siguiente comando:
systemctl status cron
5. Configurar trabajos cron en Ubuntu
Para configurar trabajos cron, debe modificar el archivo /etc/crontab. Tenga en cuenta que este archivo solo puede ser modificado por el usuario root.
Puede editar el archivo crontab con su editor de texto favorito, por ejemplo:
nano /etc/crontab
El contenido de este archivo generalmente se ve así:
SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed 37 * * * * root run-parts /etc/cron.hourly 23 5 * * * root run-parts /etc/cron.daily 19 3 * * 0 root run-parts /etc/cron.weekly 23 0 6 * * root run-parts /etc/cron.monthly
Como puede ver, el archivo crontab ya contiene una explicación sobre cómo definir sus propios trabajos cron. La sintaxis es la siguiente:
minute hour day month day_of_week username command
Se puede usar un asterisco (*) en el crontab para especificar todos los valores válidos, por lo que si necesita ejecutar un comando todos los días a la medianoche, puede agregar el siguiente trabajo cron:
0 0 * * * root /sample_command >/dev/null 2>&1
Los usuarios específicos también pueden crear trabajos cron. Los trabajos cron específicos del usuario se encuentran en /var/spool/cron/username.
Cuando crea trabajos cron para usuarios específicos, no necesita especificar el nombre de usuario en el trabajo cron. La sintaxis de los cronjobs específicos del usuario debería verse así:
minute hour day month day_of_week command
6. Ejemplos de crontab de Ubuntu
Echemos un vistazo a algunos ejemplos crontab más útiles.
Digamos que queremos programar un script de copia de seguridad para que se ejecute todos los días a las 4:30 a. m. Luego podemos configurar el siguiente trabajo cron:
30 4 * * * /path/to/script/backup-script.sh
O, por ejemplo, si queremos programar la copia de seguridad el primer día de cada mes a las 8:00 p. m., podemos configurar el siguiente trabajo cron en su lugar:
0 18 1 * * /path/to/script/backup-script.sh
También podemos usar algunas de las siguientes marcas de tiempo:
@hourly path/to/script/script.sh @daily path/to/script/script.sh @weekly path/to/script/script.sh @monthly path/to/script/script.sh @reboot path/to/script/script.sh
Esto programará la ejecución del trabajo cron al comienzo de cada hora/día/semana/mes o al reiniciar el servidor.
Si los scripts generan algún tipo de salida, incluidos errores, podemos configurar el trabajo cron para registrar esta salida en un archivo separado. Por ejemplo, el siguiente cron se ejecutará tres veces al día a las 4:00, 10:00 y 16:00 todos los miércoles y sábados y cualquier resultado (estándar y error) se registrará en el archivo backup.log:
0 4,10,16 * * wed,sat path/to/script/script.sh > /path/to/logs/backup.log 2>&1
Si no queremos que se genere ninguna salida, podemos redirigir tanto el error estándar como la salida estándar a /dev/null, que descartará toda la información escrita en él:
0 4,10,16 * * wed,sat path/to/script/script.sh > /dev/null 2>&1
7. Reinicie el servicio cron
Después de realizar los cambios en crontab, deberá reiniciar el servicio cron con el siguiente comando:
systemctl restart cron
8. Manual de crontab de Linux
Para obtener más información sobre el cron de Linux, también puede consultar las páginas man con:
man cron
y
man crontab
Si le resulta difícil configurar los trabajos cron correctos al principio, puede usar alguna calculadora de trabajos cron para generar la expresión del trabajo cron. Hay varias buenas calculadoras de trabajos cron disponibles en Internet.
Ver también:Automatizar tareas de sistemas con Crontab en CentOS 7
Por supuesto, no tienes que usar Ubuntu crontab si usa uno de nuestros alojamientos de Ubuntu totalmente administrados, en cuyo caso simplemente puede pedirle a nuestros administradores expertos de Linux que lo ayuden con crontab en Ubuntu para automatizar las tareas del sistema. Están disponibles las 24 horas del día, los 7 días de la semana y programarán cualquier tarea del sistema utilizando crontab en su servidor Ubuntu, ¡inmediatamente!
PD. Si te gustó esta publicación sobre Ubuntu crontab y cómo automatizar tareas del sistema , por favor compártalo con sus amigos en las redes sociales usando los botones a la izquierda o simplemente deje una respuesta a continuación. Gracias