Está en la página 1de 4

29/10/12

Usemos Linux: Cron & crontab, explicados

Usemos Linux
INICIO DISTRIBUCIONES PROGRAMAS TUTORIALES COMUNIDADES

Buscar...

ACERCA DE...

PARTICIPAR

N U EST ROS FAN S

Cron & crontab, explicados


Lucain public hace ya un tiempo un excelente tutorial sobre cron y crontab que me parece vale la pena compartir. Cron es una suerte de equivalente a Tareas Programadas en Windows, slo que se maneja desde el terminal. Aquellos que prefieran una interfaz visual para lograr el mismo objetivo, pueden ver este otro artculo.

lectores RSS feed | E-mail

7,191 seguidores
Seguinos en Twitter

5,652 seguidores
Seguinos en Facebook

seguidores
Seguinos en Google+

Qu es cron?
El nombre cron viene del griego chronos que significa tiempo. En el sistema operativo Unix, cron es un administrador regular de procesos en segundo plano (demonio) que ejecuta procesos o guiones a intervalos regulares (por ejemplo, cada minuto, da, semana o mes). Los procesos que deben ejecutarse y la hora en la que deben hacerlo se especifican en el fichero crontab.
T E G U ST A EL BLOG ? AY U DAN OS

Cmo funciona cron


El demonio cron inicia de /etc/rc.d/ o /etc/init.d dependiendo de la distribucion. Cron se ejecuta en el background, revisa cada minuto la tabla de tareas crontab /etc/crontab o en /var/spool/cron en bsqueda de tareas que se deban cumplir. Como usuario podemos agregar comandos o scripts con tareas a cron para automatizar algunos procesos. Esto es util por ejemplo para automatizar la actualizacion de un sistema o un buen sistema de respaldos.

EN T RADAS P OP U LARES

Qu es Crontab?
Crontab es un simple archivo de texto que guarda una lista de comandos a ejecutar en un tiempo especificado por el usuario. Crontab verificar la fecha y hora en que se debe ejecutar el script o el comando, los permisos de ejecucin y lo realizar en el background. Cada usuario puede tener su propio archivo crontab, de hecho el /etc/crontab se asume que es el archivo crontab del usuario root, cuando los usuarios normales (e incluso root) desean generar su propio archivo de crontab, entonces utilizaremos el comando crontab. Crontab es la manera mas sencilla de administrar tareas de cron en sistemas multiusuario, ya sea como simple usuario de sistema o usuario root.

Qu hacer despus de instalar Ubuntu 12.04 Precise Pangolin Qu hacer despus de instalar Ubuntu 12.10 Quantal Quetzal Que hacer despus de instalar Linux Mint 13 Maya Cmo instalar Linux desde un pendrive USB Programando en Bash parte 1

Utilizando crontab
Vamos empezando con un ejemplo simple. Vamos a automatizar la actualizacin de un sistema, para eliminar la molesta de siempre tengo que andar actualizando y eso no me gusta!. Primero que nada haremos un script. Este script ser llamado por cron y contendr todas las instrucciones que queremos que haga, por lo tanto es necesario probarlo en varios casos y de varias formas antes de incluirlo a cron, un sencillo script de actualizacion como este: #/i/ah !bnbs #citeepod ataiain srp jml e culzco #lj s dsrbco eia u itiuin #einuut dba-bnu #p-e udt &a-e - ugae atgt pae pgt y prd #eoa fdr #u - udt ym y pae #rh Ac #amn-ncnim-y pca -oofr Su Quitale el # a la lnea de tu distro. En caso de que sea Ubuntu/Debian, a la que empieza con apt-get. Guardamos el script como actualizacion.sh (ej. directorio scripts tu home). Cambiamos los permisos de ejecucion del dichoso script con: usemoslinux.blogspot.com/2010/11/cron-crontab-explicados.html

ART CU LOS RELACION ADOS

Cmo recibir actualizaciones del sistema en forma automtica en Arch Comandos tiles para Linux El chat de Gmail ya tiene soporte para voz y video en Linux Giver: una forma fcil de compartir archivos 16 cosas que [probablemente] te 1/4

29/10/12

Usemos Linux: Cron & crontab, explicados cmdax~srpsataiains ho + /cit/culzco.h Ejecutamos el script un par de veces para verificar que todo ejecute sin problemas, modificamos lo necesario (no debe contener errores, si no cron solo repetira un error una y otra vez). Ahora a agregar la tarea a nuestro crontab. molestarn en Ubuntu 10.04 Lucid Lynx

ARCHIV O

Agregar tareas a crontab


Ejecutamos la edicin del crontab con crontab -e, en algunas distros (como ubuntu) nos da la opcion de elegir el editor de textos que deseemos, los dems nos quedamos con vi. El archivo crontab lucir algo asi. #mhdmmndwue cmad o o o sr omn donde: m corresponde al minuto en que se va a ejecutar el script, el valor va de 0 a 59 h la hora exacta, se maneja el formato de 24 horas, los valores van de 0 a 23, siendo 0 las 12:00 de la medianoche. dom hace referencia al da del mes, por ejemplo se puede especificar 15 si se quiere ejecutar cada dia 15 dow significa el da de la semana, puede ser numrico (0 a 7, donde 0 y 7 son domingo) o las 3 primeras letras del da en ingls: mon, tue, wed, thu, fri, sat, sun. user define el usuario que va a ejecutar el comando, puede ser root, u otro usuario diferente siempre y cuando tenga permisos de ejecucin del script. command refiere al comando o a la ruta absoluta del script a ejecutar, ejemplo: /home/usuario/scripts/actualizar.sh, si acaso llama a un script este debe ser ejecutable Para que quedara claro unos cuantos ejemplos de tareas de cron explicados: 1 1 ***uuro/oeuurosrpsataia.h 5 0 sai hm/sai/cit/culzrs Ejecutar el script actualizar.sh a las 10:15 a.m. todos los das 1 2 ***uuro/oeuurosrpsataia.h 5 2 sai hm/sai/cit/culzrs Ejecutar el script actualizar.sh a las 10:15 p.m. todos los das 0 1 **0ro atgt- udt Uuroro 0 0 ot p-e y pae sai ot Ejecutar una actualizacin todos los domingos a las 10:00 a.m 4 1 **snro atgt- udt 5 0 u ot p-e y pae Usuario root ejecutar una actualizacin todos los domingos (sun) a las 10:45 a.m 3 72 1 *uuro/oeuurosrpsataia.h 0 0 1 sai hm/sai/cit/culzrs El da 20 de noviembre a las 7:30 el usuario correra el script 3 71 1 snuuro/oeuurosrpspse_o_eia.h 0 1 1 u sai hm/sai/cit/atlcnvltss El da 11 de noviembre a las 7:30 a.m. y que sea domingo, el usuario festejar su sysadmin (o sea a m) 0 ****uuro/oeuurosrpsmlsoeodtros 1 sai hm/sai/cit/oetrcraoi.h Un molesto recordatorio cada minuto de cada hora todos los das (NO recomendable). Igual se pueden manejar rangos especiales: 3 1 **12345 0 7 ,,,, A las 5:30 de la tarde todos los das de lunes a viernes. usemoslinux.blogspot.com/2010/11/cron-crontab-explicados.html

2012 (393) 2011 (459) 2010 (622) diciembre (42) noviembre (44) octubre (64) septiembre (67) agosto (61) julio (30) junio (45) mayo (62) abril (68) marzo (72) febrero (67)

2/4

29/10/12

Usemos Linux: Cron & crontab, explicados

0 1 11,8** 0 2 ,52 A las 12 del da todos los das primero, quince y 28 de cada mes (ideal para nminas) Si esto resulta confuso, crontab maneja cadenas especiales para definir estos rangos. @reboot Ejecuta una vez, al inicio @yearly ejecuta slo una vez al ao: 0 0 1 1 * @annually igual que @yearly @monthly ejecuta una vez al mes, el da primero: 0 0 1 * * @weekly Semanal el primer minuto de la primer hora de la semana. 0 0 * * 0. @daily diario, a las 12:00A.M. 0 0 * * * @midnight igual que @daily @hourly al primer minuto de cada hora: 0 * * * * Su uso es muy sencillo. @oryuuro/oeuurosrpsmlsoeodtros hul sai hm/sai/cit/oetrcraoi.h @otl uuro/oeuurosrpsrsad.h mnhy sai hm/sai/cit/eplos @al ro atgtudt & atgt- ugae diy ot p-e pae & p-e y prd Por ltimo y no menos importante: Administracion de trabajos en cron cotbacio rna rhv Remplaza el existente archivo crontab con un archivo definido por el usuario cotbrna e Editar el archivo crontab del usuario, cada linea nueva sera una nueva tarea de crontab. cotbrna l Lista todas las tareas de crontab del usuario cotbrna d Borra el crontab del usuario cotb- dr rna c i Define el directoriod e crontab del usuario (este debe tener permisos de escritura y ejecucion del usuario) cotb- uuro rna u sai prefijo para manejar el crontab de otro usuario, ejemplos: $sd cotb- - ro uo rna l u ot $sd cotb- uuro uo rna e sai2 #rna - - uuro cotb d u sai Esta herramienta, como muchas otras se pueden ver a mas profundidad y con mas detalle en: Manual cron Manual crontab Crontab en la wiki de ubuntu

Gracias Lucain!

usemoslinux.blogspot.com/2010/11/cron-crontab-explicados.html

3/4

29/10/12
8 DE NOVIEMBRE DE 2010

Usemos Linux: Cron & crontab, explicados


CRON | CRONTAB | TUTOS

4 comments

3 reactions

1 Star

Leave a message...

Discussion

Com m unity

C a za d o r
0

2 years ago Reply Share

Excelente, gracias por aclararme como funciona cron.. vamos a meter un poco de mano :)

Al va ro Orti z
0

2 years ago Share

Uf... un poco lioso.


Reply

Sl a ck

2 years ago

Hola super util la informacin par aclarar como funciona cron. Bytes
0

Reply

Share

Sl a ck

2 years ago parent Reply Share

para *
0

ALSO ON USEMOS LINUX

What's this?

Usemos Linux: Juegos para perderle el miedo al terminal


12 comments 4 days ago

Usemos Linux: Compart tus conocimientos sobre Linux


29 comments 6 days ago

Usemos Linux Claro que los hay. Un montn.Si te interesa el tema, te recomiendo leer este viejo artculo: http://

Saito Mordraug Maravillosa propuesta, se entiende que la labor que realizas no es sencilla y de corazn todos te lo

Usemos Linux: Xrandr: poderosa herramienta para configurar tu monitor


2 comments a day ago

Usemos Linux: Pequeo script para verificar cuentas de gmail


6 comments 2 days ago

Fredy Pedazo de documento.. Mancantado!!!!!

Tete Plaza El problema de estas cosas es que la contrasea queda almacenada en texto plano :S

SOBRE N OSOT ROS

FACEBOOK

T WIT T ER

Somos uno de los blogs ms populares de habla hispana sobre Linux y Software Libre. En nuestras pginas vas a encontrar tutoriales, reseas y artculos de calidad sin anuncios molestos. Si quers participar o sugerirnos tu idea, enterate cmo hacerlo.
SEG U IN OS P OR CORREO

Correo electrnico...

Enviar

Licencia (cc) BY-NC-SA Usemos Linux Diseo por Pablo Castagnino

usemoslinux.blogspot.com/2010/11/cron-crontab-explicados.html

4/4

También podría gustarte