2009-08-30

Programación de Tareas

Es fundamental aprender a programar labores en nuestros sistemas y servidores, esto nos permite tener control de los procesos manejar los tiempos de ejecución de procesos que necesitaos realizar periodicamente y sobre todas las cosas autómatizar lo que necesites.

Existe en Linux dos formas de mandar a ejecutar comandos en una fecha y hora indicada o que sea periodico, acá explicare los dos y después las ventajas de unos sobre el otro, los comandos son at y cron, y los trabajaremos en ese orden.

Comando at

Este comando nos permite indicarle una fecha y hora exacta en la que deseamos que se ejecute un comando, un script o un demonio especifico, la estructura es:

root@:~#at [hora][fecha]

La estructura del tiempo puede ser:

hora : HH:MM, HHMM, HH.MM, Hpm, Ham, midnight(00:00), teatime(16:00),noon(12:00)
fecha : MM-DD-AA, DD.MM.AA, MM/DD/AA, MMDDAA, tomorrow(mañana) (el mes debe ser las iniciales en ingles)

Si no se especifica la hora se toma la actual y si no se coloca la fecha se toma el día presente.

Una vez digitas el comado el te cambia el promt colocandote esto at> en este promt colocaras los comandos, script y demás que desees que se ejecute, para grabar le debes teclar Ctrl+D y listo, un ejemplo gráfico sería así:

root@localhost:~# at 21:08 Aug-29-10
at> /etc/init.d/httpd restart
at> /usr/sbin/datos.sh
at> apt-get autoremove
at>

Acuerdate para salir es teclear Ctrl+D.

Este comando te permite también administrarlo, revisarlo o eliminar entradas, con los siguientes comandos

Revisar cuales están por ejecutarse

root@:~# atq
1 Wed Sep 9 23:50:00 2009 a samuel


Para eliminar un programa

root@:~# atrm #
donde # es el número del proceso, usando la linea anterior sería el 1.


Para ejecutar un programa antes de su tiempo

root@:~# atd #
donde # es el número del proceso, usando la linea anterior sería el 1.


Comando cron

Este te permite programar la ejecución de comados, script o demonios de forma periodica, lo que permite repeticiones por horas, días o meses según comovlo programes, la forma de editarlo es usando el comado así:

root@:~# crontab -e

Este te habilita un archivo editable como si fuera un vi, que contiene los siguientes campos

Minuto : Contrala el minuto en que se ejecutara el comando, debe ser un valor entre 0 y 59
Hora : Controla la hora en la que se ejecutara el comando, debe ser un valor entre 0 y 23
Día : Controla el día del mes en el que se ejecutara el comando, debe ser un valor de 0 a 31
Mes : Controla el mes del año en que se ejecutara el comando, debe ser un valoer entre 0 y 12
Día de la Semana : Controla el día de la semana en que se ejecutara el comando, con un valor entre 0 y 6 donde 0 es domingo, 1 lunes y demás.
Usuario : Usuario que ejecutara el comado, por defecto toma el que lo programe.
Comando : Comando que se desea ejecutar

Cada uno se pueden usar formatos que nos permiten aumentar las opciones de manejo, unos ejemplos son

*/5 Se ejecute cada 5 minutos, cada 5 horas o cada 5 meses segun donde lo coloques
1,3,5 Se ejecute al los minutos 1 - 3 y 5 o meses 1 -3 y 5 según donde lo coloques
1-4 Se ejecute los 4 primeros dias de la seman o mes según donde lo coloques
* Cualquier minuto, hora, mes, día o día de la semana según donde lo coloques

una vez guardes con wq! ya quedara lista la programación para revisarla debes usar el comando crontab -l y para eliminar todo crontab -r.

Comparación de los Sistemas

  • Si lo que necesitas es algo periodico y repetitivo debes usar cron, si es solo una ejecución a una fecha especifica sinduda usa at.
  • Para usar el cron debes asegurarte de tener permiso de usarlo, esto lo verificas en /etc/cron.allow, para usar at no necesitas tener permisos especiales
  • Para usar cron debes usar rutas absolutas de los comandos, pues aunque lo puedes ejecutar con un usuario no verifica el PATH de cada usuario, el comado at se ejecuta con las características del usuario que lo programa por lo que puedes usar los comandos como los usas normalmente.
  • Debes verificar bien la estructura del archivo cron antes de guardarlo, ya que se puede ejecutar en una hora que no desees, con at el formato de la hora es el de uso común.
  • El comando at no te permite realizar programaciones periodicas.

2009-08-12

Como Instalar Detrás de un Proxy

Muchas veces estamos detrás de un proxy o controlador de navegación y este no nos permite realizar instalaciones con apt-get install ni con synaptic, esto me lo pregunto Jody y pues aunque ya yo lo habia echo me di cuenta que no estaba acá entonces pues decidi colocarlo de una vez.

Primero la configuración gráfica, o sea como usar synaptic, este sin duda es el mas fácil, una vez abierto el synaptic, le das Configuración --> Preferencias y ya en esa ventana la configuras como se ve a continuación:


Con los datos reales y pues si te filtra también ftp, entonces con esos también, bueno ahora como a mi me gusta, si ya saben por consola, en este caso se edita un archivo así

root@localhost:~#vi /etc/bash.bashrc

Al final de este le agregas estas dos lineas

export http_proxy=http://usuario:contraseña@proxy.server.net:puerto/
export http_proxy=http://usuario:contraseña@proxy.server.net:puerto/

Guardas y listo ya puedes usar el apt-get install, ahora si tu proxy no requiere usuario ni contraseñas en ambos casos los omites y listo.

2009-08-04

Manejo de Gasto de Bateria

Dando vueltas por Internet me encontré un excelente comando que te permite saber en que se gasta la batería de tu Laptop, y te da recomendaciones de como reducir el gasto con cosas que no necesites o que puedes minimizar en su uso, por ejemplo el tiempo de respuesta de los temporales, si estos se demoran 10 segundos mas no te vas a enloquecer pero si te dan unos minutos mas de batería.

Lo primero a hacer es instalar el paquete, el cual lo harás de la siguiente forma:

root@localhost:~#apt-get install powertop

Después de la instalación lo ejecutas y como todo top en Linux te muestra estadísticas en tiempo real de algún suceso, por ejemplo top te muestra el de los procesos y carga de la maquina, esta no es la excepción el muestra estadísticas de la batería, lo cual se ve así


Como puedes ver en la parte inferior de la imagen, existen sugerencias de comandos que puedes ejecutar para reducir el consumo, ojo no todos son óptimos para el desempeño pero te ayudaran


2009-08-02

Accelerar el Firefox

Dando vueltas por internet me encontré este curioso dato en Linux para Todos, donde explican como acelerar un poco las conexiones de tu navegador Firefox, esto es súper útil para personas que como yo abrimos n pestañas en al navegar.

Iniciamos abriendo una pestaña y escribimos about:config, el nos dira que cuidado por que estas ingresando en la configuración, le damos que seremos cuidadosos y al ingresar colocaremos en el buscador superior network.http, se verá la siguiente pantalla y debes modificar los valores por defecto que en la imágen aparecen en negrilla así:


deben quedar los valores así

network.http.max-connections --> 48
network.http.max-connections-per-server --> 24
network.http.max-persistent-connections-per-proxy --> 16
network.http.max-persistent-connections-per-server --> 8

Y si tienes banda ancha, modificas estos también

network.http.pipelining --> true
network.http.pipelining.maxrequests --> 8
network.http.proxy.pipelining --> true

Espero que les sirva a mi me funciono muy bien