Cron jobs linux

Generador de Crontab

cron es el programador de trabajos basado en el tiempo de los sistemas operativos de tipo Unix. cron permite a los usuarios programar trabajos (comandos o scripts de shell) para que se ejecuten periódicamente a determinadas horas, fechas o intervalos. Se suele utilizar para automatizar el mantenimiento o la administración del sistema.

cron registra la salida de stdout y stderr e intenta enviarla como correo electrónico a los spools del usuario mediante el comando sendmail. Cronie desactiva la salida de correo si no se encuentra /usr/bin/sendmail. Para que el correo se escriba en el spool de un usuario, debe haber un demonio smtp ejecutándose en el sistema, por ejemplo opensmtpd. De lo contrario, puede instalar un paquete que proporcione el comando sendmail, y configurarlo para enviar el correo a un intercambiador de correo remoto. También puede registrar los mensajes utilizando la opción -m y escribiendo un script personalizado.

sSMTP es un emulador de sendmail que envía correo electrónico desde un ordenador local a un servidor smtp. Aunque actualmente no hay mantenedores activos, sigue siendo de lejos la forma más sencilla de transferir correo a un mailhub configurado. No hay demonios que ejecutar, y la configuración puede ser tan simple como editar 3 líneas en un único archivo de configuración (si su host es de confianza para retransmitir correo electrónico no autenticado a través de su mailhub). sSMTP no recibe correo, ni expande alias, ni gestiona una cola.

Ejemplo de Crontab

Los trabajos cron le permiten programar tareas y procesos en Linux. A veces es necesario listar todas las tareas cron para todos los usuarios. En este artículo, veremos cómo mostrar las tareas cron para todos los usuarios, así como para usuarios específicos.

Encontrará una lista de todas las tareas cron aplicables a todo el sistema en el archivo /etc/crontab. Sólo los usuarios con privilegios pueden escribir en este archivo. Abra el terminal y ejecute el siguiente comando para mostrar todas las tareas cron.

Eso es todo. Como puede ver, los cronjobs están dispersos en las carpetas /etc/crontab, /etc/cron.d y /var/spool/cron/crontabs, y pueden requerir varios comandos para obtener una lista completa de todos los cronjobs para todos los usuarios. Además, necesitarás privilegios de root para poder ver los cronjobs de otros usuarios. De lo contrario, sólo podrá ver sus propios cronjobs.

Linux cronjobs anzeigen

Uno de los retos (entre las muchas ventajas) de ser un administrador de sistemas es ejecutar tareas cuando uno preferiría estar durmiendo. Por ejemplo, algunas tareas (incluidas las que se repiten con regularidad) deben ejecutarse durante la noche o los fines de semana, cuando no se espera que nadie esté utilizando los recursos informáticos. No tengo tiempo de sobra por las noches para ejecutar comandos y scripts que tienen que funcionar durante las horas de descanso. Y no quiero tener que levantarme a las cien de la noche para iniciar una copia de seguridad o una actualización importante.

En su lugar, utilizo dos utilidades de servicio que me permiten ejecutar comandos, programas y tareas a horas predeterminadas. Los servicios cron y at permiten a los administradores de sistemas programar tareas para que se ejecuten en un momento específico en el futuro. El servicio at especifica una tarea única que se ejecuta a una hora determinada. El servicio cron puede programar tareas de forma repetitiva, como diaria, semanal o mensualmente.

El servicio cron busca archivos en los directorios /var/spool/cron y /etc/cron.d y en el archivo /etc/anacrontab. El contenido de estos archivos define las tareas cron que deben ejecutarse en distintos intervalos. Los archivos cron de los usuarios individuales se encuentran en /var/spool/cron, y los servicios y aplicaciones del sistema suelen añadir archivos de trabajos cron en el directorio /etc/cron.d. El /etc/anacrontab es un caso especial que se tratará más adelante en este artículo.

Registro de Crontab

Este artículo necesita citas adicionales para su verificación. Por favor, ayude a mejorar este artículo añadiendo citas de fuentes fiables. El material sin fuente puede ser cuestionado y eliminado.Buscar fuentes:  “Cron” – noticias – periódicos – libros – scholar – JSTOR (noviembre de 2011) (Aprende cómo y cuándo eliminar este mensaje de la plantilla)

La utilidad de línea de comandos cron, también conocida como cron job[1][2] es un programador de trabajos en sistemas operativos tipo Unix. Los usuarios que configuran y mantienen entornos de software utilizan cron para programar trabajos[3] (comandos o scripts de shell) que se ejecutan periódicamente a horas, fechas o intervalos fijos[4]. Normalmente automatiza el mantenimiento o la administración del sistema, aunque su naturaleza de propósito general lo hace útil para cosas como la descarga de archivos de Internet y la descarga de correo electrónico a intervalos regulares[5].

Las acciones de cron están dirigidas por un archivo crontab (tabla cron), un archivo de configuración que especifica los comandos del shell que se ejecutarán 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 (normalmente en /etc o en un subdirectorio de /etc, por ejemplo, /etc/cron.d) que sólo pueden editar los administradores del sistema[nota 1].