Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Virtu@l
Automatizaci
n Tareas
Automatizacion de Tareas
Tecsup
Marzo 2010
INDICE
1.
2.
3.
4.
5.
6.
7.
Introduccin ................................................................................ 3
Objetivos ..................................................................................... 3
Ntp ............................................................................................... 3
3.1.
Descripcin ..................................................................... 3
3.2.
Servidores Ntp ................................................................. 4
3.3.
Comando (ntpdate) .......................................................... 4
Clock ........................................................................................... 4
4.1.
Comando (hwclock) ........................................................ 5
Automatizacin de tareas ............................................................ 6
5.1.
Comando at .................................................................. 7
5.2.
Comando (cron, crontab) .............................................. 10
Resumen .................................................................................... 13
BIBLIOGRAFIA ....................................................................... 13
Pgina 2
Tecsup
Automatizacion de Tareas
Marzo 2010
Automatizacin de Tareas
1. Introduccin
El tiempo es un factor de referencia que los Sistemas Operativos
lo usan para asignarlos a sus procesos en sus operaciones a
realizar donde se cronometra el tiempo de vida del proceso
tambin en la asignacin de informacin del tiempo a los archivos
y directorios para saber informacin de cuando se genero,
modifico. En este captulo detallaremos cmo funciona el clock y
herramientas de automatizacin de tares.
2. Objetivos
Describir el funcionamiento del Clock
Planificar ejecucin de tareas en el tiempo.
3. Ntp
Network Time Protocol (NTP) es un protocolo de Internet para
sincronizar los relojes de los sistemas informticos. NTP utiliza
UDP como su capa de transporte, usando el puerto 123. Con NTP
podemos usarlo de referencia para sincronizar los relojes de los
Servidores y tener un tiempo igual.
3.1.
Descripcin
NTP utiliza el Algoritmo de Marzullo con la escala de
tiempo UTC, incluyendo soporte para caractersticas como
segundos intercalares. NTPv4 puede mantenerse
sincronizado con una diferencia mxima de 10
milisegundos (1/100 segundos) a travs de Internet, y
puede llegar a acercarse hasta 200 microsegundos (1/5000
segundos) o ms en redes de rea local sobre condiciones
ideales.
NTP es uno de los protocolos de internet ms viejos que
siguen en uso (desde antes de 1985). NTP fue diseado
originalmente por Dave Mills de la Universidad de
Delaware, el cual lo sigue manteniendo, en conjunto con
un equipo de voluntarios.
El demonio NTP de Linux, es un proceso de nivel de
usuario que se ejecuta continuamente en la mquina que
soporta NTP, y la mayor parte del protocolo est
implementado en este proceso de usuario. Para obtener el
mejor rendimiento de NTP, es importante tener un reloj
NTP estndar con lazo de seguimiento de fase
implementado en el kernel del Sistema operativo, en vez
de slo usar la intervencin de un demonio NTP externo:
Pgina 3
El protocolo NTP es
soportado por todos los
Sistemas Operativos
(Linux, Windows, Mac)
Automatizacion de Tareas
Tecsup
Marzo 2010
Servidores Ntp
Diferentes organizaciones ofrecen de manera libre sus
Servidores NTP. Estos Servidores va comunicacin NTP
entregaran la informacin del tiempo y que el Cliente al
recibirla actualizare su reloj. Al usar comunicacin UDP la
transferencia de la informacin es rpida.
http://www.pool.ntp.org
3.3.
Link: Informacin de
Servidor de tiempo.
Comando (ntpdate)
ntpdate es un comando que permite sincronizar la fecha y
hora de nuestros sistemas con servidores de hora en
Internet, para ciertas tareas es crtico que la hora del
servidor sea la correcta,
CASO
Al iniciar el arranque
un Sistema Operativo
toma como referencia
al Reloj de Hardware
para actualizar su reloj
de Software
0.pool.ntp.org
4. Clock
El reloj por software de un sistema Linux no siempre es preciso.
Para mantener este reloj Linux utiliza una interrupcin peridica
generada por el hardware, llamada "timer interrupt". En caso de
que existan muchos procesos siendo ejecutados (con respecto a
los recursos disponibles) el sistema podra demorar un poco al
momento de intentar servir la interrupcin, por lo que el reloj de
software puede estar ligeramente atrasado. El reloj por hardware
trabaja independientemente del sistema operativo, as que
usualmente es ms preciso. Si re-inicia de manera frecuente la
computadora (como es el caso para la mayora de los sistemas que
no son servidores) el reloj debe encontrarse prcticamente
correcto.
Si es necesario modificar el reloj de hardware, la manera ms
simple es reiniciar el sistema, ingresar a la pantalla de
configuracin de la BIOS y realizar el cambio de fecha y hora
desde ah. Esta manera evita todos los problemas que podran
suceder si se modifica el reloj desde el sistema. Si la modificacin
desde la configuracin de la BIOS no se puede realizar, modifique
el reloj utilizando date y clock (en ese orden).
Pgina 4
Automatizacion de Tareas
Tecsup
Marzo 2010
CASO
CASO
4.1.
Comando (hwclock)
El comando hwclock permite la administracin de los
relojes de hardware de software:
Sintaxis:
# hwclock [parmetros]
Parmetro
--show
--systohc
--hctosys
Funcin
Muestra la informacin del reloj de
hardware
Obtienen la fecha y hora desde el reloj de
hardware y modifican el reloj de Software.
Obtienen la fecha y hora desde el reloj de
Software y modifican el reloj de hardware.
CASO
Comparando
# date
Pgina 5
Automatizacion de Tareas
Tecsup
Marzo 2010
CASO
Actualizando
CASO
Actualizando
EJERCICIO
0.pool.ntp.org
# hwclock --systohc
5. Automatizacin de tareas
En la administracin se tiene que realizar diversas tareas en
donde el administrador con el aprendizaje de los comandos lo
realiza en la consola, al tener varias operaciones que realizar se va
complicando porque tendr que tomar un mayor tiempo en
ejecutar los comandos lo cual generara una dependencia del
administrador con las tareas a realizar.
Al ser las tareas operaciones de comandos, mediante una
evaluacin se decidir que tareas se pueden automatizar. Con la
automatizacin conseguiremos planificar el tiempo a ejecutarse
las tareas. Linux provee de servicios que se encargan de la
automatizacin, usualmente existe 2 servicios:
at
cron
La diferencia radica en que el comando (at) realiza la ejecucin de la
tarea en un solo tiempo determinado y el comando (cron) realiza tareas
peridicas quiere decir que puede programarse para que se realice
varias veces en tiempo distintos
Pgina 6
Automatizacion de Tareas
Tecsup
5.1.
Marzo 2010
Comando at
Se utiliza el comando (at) para ejecutar un comando o
comandos una sola vez en el tiempo.
Sintaxis:
# at [hora] [fecha] [incremento] < nombre_archivo
Mes da ao
Da de la semana
Today
Tomorrow
INCREMENTOS
+n mins
+n hrs
+n days
+n weeks
+n months
+n years
Pgina 7
Automatizacion de Tareas
Tecsup
Marzo 2010
Especificacin de la fecha
Utilice uno o dos dgitos para especificar la hora
Por ejemplo:
$ at 17
Pgina 8
Ejecutar
el
Automatizacion de Tareas
Tecsup
Marzo 2010
26
27
5.1.3.
2000-07-07 13:00 a
2000-07-06 18:00 a
Cancelando trabajos
La opcin d se utiliza para retirar trabajos
enviados con el comando at. Esta opcin es un
alias del comando atrm.
# at d <Id_Trabajo>
# atrm <Id_Trabajo>
Por ejemplo:
$ at -d 24
Pgina 9
Automatizacion de Tareas
Marzo 2010
Tecsup
5.2.
El (crontab) recibe
comandos o archivos de
scripts para que se
ejecuten en un tiempo
a definir
Pgina 10
Automatizacion de Tareas
Tecsup
Marzo 2010
Archivo .cronfile
Para ejecutar el comando (crontab) se debe
especificar cul es el archivo que contiene las
tareas a ejecutar.
El archivo puede tener cualquier nombre. Pero es
una buena idea llamarlo .cronfile. Hay dos
beneficios de llamarlo as:
Est oculto a la visualizacin normal.
El nombre hace obvio cual es su funcin.
Cada lnea del archivo .cronfile especifica una
tarea que ser realizada.
Cada usuario puede someter un archivo .cronfile,
pero un archivo .cronfile puede contener varias
tareas.
Una tarea puede ser un simple comando o un
shell script conteniendo varios comandos.
La salida de un comando es enviada al correo del
usuario a menos que sea re direccionada a un
archivo o un terminal.
Especifique rutas completas para los comandos y
archivos que van a ser utilizados.
El archivo .cronfile puede ser creado con el editor
vi u otro editor cualquiera.
5.2.2.
Estructura de la programacin
El archivo .cronfile debe contener seis campos
para cada tarea. Cada campo debe estar separado
de los dems por espacios en blanco o tabs:
Pgina 11
Automatizacion de Tareas
Tecsup
Marzo 2010
HORA (0-23)
Da de la SEMANA (0-6)
0=Domingo
1=Lunes
MES (1-12)
MINUTO (0-59)
Representa el minuto de la
hora. En el ejemplo figura 3
esto indica que se realizara
al minuto 3 de la hora
indicada. No indica que se
realizar cada 3 minutos
ACCION
SCRIPT a programarse.
Debe de indicarse la ruta
completa
En el (cron) se puede
ingresar varias tareas
en diferentes tiempos,
cada lnea es una
programacin de tarea
Pgina 12
Automatizacion de Tareas
Tecsup
Marzo 2010
5.2.3.
Visualizando tareas
Para visualizar las tareas utilice la opcin l
# crontab -l
5.2.1.
Eliminar tareas
Para eliminar las tareas utilice la opcin r
# crontab -r
6. Resumen
El protocolo NTP permite sincronizar tiempo en los Sistemas
Operativos
Existe 2 tipos de Clock el de hardware y software.
Comnmente el Sistema Operativo trabaja con su reloj de
Software.
En el tiempo al no tener una alta precisin se desfasa los
relojes de hardware y software.
El comando (hwclock) gestiona el reloj de hardware y
software.
Para la programacin de tareas existe 2 utilitarios (at)
(crontab)
El (at) se programa tareas fijas a realizarse una vez.
El (crontab) se programa tareas peridicas.
7. BIBLIOGRAFIA
Libro de Administracin de Linux
http://www.redhat.com/docs/manuals/linux/
GD
Pgina 13