Archive for the ‘Linux’ Category

Post-Infociencias UCLA 2008 - Parte I

October 21st, 2008

Bueno hoy escribo con la finalidad de dar a conocer un poco la experiencia vivida en estas Jornadas que son organizadas por lo chicos del último semestre de la carrera de Ing. de Informática de la Universidad Centroccidental Lisandro Alvarado (UCLA).
En primer lugar vaya mis FELICITACIONES a los chicos que organizaron este evento, mis impresiones han sido que desde el punto de vista organizacional son EXCELENTE creo que hay muchos eventos a nivel nacional que deberían aprender de ustedes.

Read the rest of this entry »

Posted in Linux, Software Libre, Universidad | Comments (2)

Simplificando el uso de Aptitude

May 29th, 2008

Hace un tiempo me llamo mucho la atención que un compañero de trabajo instalaba paquetes con “aptx” :S no pude contener la intriga y le pregunte, Con que distribución trabajabas? esto a pesar que en determinados momentos de muchas de las conversaciones que tenemos sobre el tema de software libre el me había comentado que utilizaba Debian Lenny pero la duda viene por el simple hecho de utilizar “aptx”, me vacilo un rato, etc…

Después fue que me comento que había hecho un script en bash donde “simplificaba el teclear” sin duda optimiza los recursos empezando por el mismo, el publico lo que hizo en la wiki del trabajo y la comparto con ustedes para quienes deseen optimizar sus propios recursos.

A diario trabajamos en consola y hacemos uso de la herramienta aptitude, y es totalmente seguro que en determinadas ocasiones sea necesario usarlo muchas veces.

He aquí un aporte que podría ahorrar unas cuantas pulsaciones del teclado y implicar la instalación y eliminación de paquetes. Se trata de un script en bash que puedes utilizar en cualquier disto de Linux cuya manera de gestionar paquetes sea con aptitude.

Copiar estas lineas y guardarlo con el nombre aptx

#!/bin/sh -e
### BEGIN INIT INFO
# Provides:    manejo de paquete via Aptitude
# Required:    opciones:  install remove purge update search show
### END INIT INFO
PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin"
[ -x /bin/aptx ] || exit 0
. /lib/lsb/init-functions
case "$1" in
  -i)
     log_action_begin_msg ">>> Instala el \"$2\" <<<"
     aptitude install $2
     ;;
  -r)
     log_action_begin_msg ">>> Eliminando el paquete del sistema <<<"
     aptitude remove $2
     ;;
  -p)
    log_action_begin_msg ">>> depurando archivo de config del paquete $2 <<<"
    aptitude purge $2
    ;;
  -u)
    log_action_begin_msg ">>>  Actualizando lista de paquetes <<<"
    aptitude update
    ;;
  -s)
    log_action_begin_msg ">>> buscar paquete <<<"
    aptitude search $2
    ;;
  -m)
    log_action_begin_msg ">>> Informacion del paquete <<<"
    aptitude show $2
    ;;
  -x)
    log_action_begin_msg ">>> Informacion del paquete <<<"
    aptitude install -f
    ;;
   *)
     echo "Uso: /bin/aptx { -i | -r | -p | -u | -s | -m | -x }"
     echo " Opciones:"
     echo "	-i  * Instalar un paquete."
     echo "	-r  * Remover un paquete del sistema."
     echo " 	-p  * Eliminar por completo los archivos de conf del paquete."
     echo " 	-u  * Actualiza BD de paquetes segun \"/etc/apt/source.list\"."
     echo " 	-s  * Buscar un paquete y conocer su status."
     echo " 	-m  * Mostrar informacion del paquete."
     echo "	-x  * Instala/Desinstala lo paquete que esten pendiente."
     exit 1
     ;;
esac
exit 0

Luego de tipear todo este cogido (a menos que hagas Copy Paste) debemos cambiarnos al modo de superusuario para copiarlo en otra ruta y asignarle los permisos necesario.

# chmod aptx /bin

#chmod 774 aptx

Ahora ejecuta…

#aptx

Listo, espero lo disfruten…

@utor; Williams Patino

Posted in Debian, Linux, Planeta Linux | Comments (3)

Arranca el 4to Congreso Nacional de Software Libre.

April 18th, 2008

logo_cnsl4.png

A partir de hoy comienza el evento itinerante que sin duda alguna es el mas grande de Venezuela en cuanto a apoyo, difusión e impulso al software libre en el país, así que se invita al publico en general a visitar las sedes donde se llevara este evento mas cercana a su localidad para que sientan el espíritu comunitario que se respira en la comunidad de software libre, aparte que podrán presenciar las charlas que se dictaran.

Posted in Interes, Linux | Comments (0)

Instalando Xdebug en Debian Lenny.

April 8th, 2008

Saludos siguiendo en la tónica de las buenas prácticas de desarrollo esta vez les traigo un How To sobre Xdebug, esta es una herramienta que desde la encontré me ha sido de gran ayuda al momento de detectar cuellos de botellas y profiling en la aplicaciones que suelo desarrollar sean pequeñas o grandes (En PHP), como valor agregado que en lo personal encontrado en esta extensión es la posibilidad de entender estructura de algunos framework interesante (Tomates, Kumbia, Symfoni, otros), si alguna vez haz trabajado con FireBug sabras de lo que hablo.

Para la instalación de esta extensión lo haremos sencillo con PEAR/PECL entremos a una consola.

# pecl install xdebug

Una vez instalado este paquete vemos el infophp para verificar que la extensión se halla cargada correctamente.

screenshot.png

Si esto se muestra todo anda bien, ahora falta configurar xdebug para que nos genere los archivos con la información del debugging y profiling, esta información que muestro fue tomada del blog de Jesus Lara donde aparte de hablar de la configuración de este archivo explica la herramienta.

NOTA: donde realizo un cambio es en donde se muestra la ruta donde se instalo xdebug.so.

Configurando xdebug

Para la activación de xdebug he creado un archivo (dentro del directorio conf.d de php5) llamado xdebug.ini que contendrá las instrucciones para activar la extensión y activar de una vez el profiling.

como root:

>touch /etc/php5/conf.d/xdebug.ini

luego, agregamos:

>vim /etc/php5/conf.d/xdebug.ini

zend_extension_ts=”/usr/lib/php5/20060613+lfs/xdebug.so”

[xdebug]
xdebug.profiler_enable=1
xdebug.profiler_output_dir=/tmp/php5/profiler

donde fijense que la ruta es donde phpize envía mis extensiones (en este caso, xdebug.so)

Agrego adicionalmente una sección xdebug (se agradece mantener ordenado los archivos ini) y activar “profiler_enable” (1 lo activa, 0 lo desactiva) e indicar la ruta (especificada por profiler_output_dir) donde se ha de crear el archivo de profiling.

guardamos:

:wq!

y reiniciamos nuestro apache:

>/etc/init.d/apache2 restart

Ya con esto todo lo que ejecutemos de manera local nos genera un archivo con el debugging solo nos queda visualizar los estos archivos, pero antes debemos instalar Kcachegrinf, para hacer esto como es Debian :) ejecutamos.

#aptitude install kcachegrind

Listo ahora si buscamos los archivos en la ruta indicada en /tmp/php5/profiler

Falta instalar un paquete para que imágenes como esta se generen.

screenshot-1.png

Este es el paquete particularmente en mis repositorios no estaban si quieren pueden hacer la prueba.

#aptitude search graphviz

Si encuentran algo excelente si no les dejo el enlace donde lo puede descargar y posterior instalar con:

#dpkg -i ruta_donde_guardo/graphviz_2.16.1-3_i386.deb

Con esto ya podemos comenzar visualizar las imágenes que se muestra arriba.

Posted in Configuracion, Debian, Linux | Comments (1)

Mi CLI con Colores.

February 17th, 2008

No hay nada mas aburrido que ver siempre nuestro CLI (Consola) siempre Blanco & Negro, mas aun si eres una de las personas que le gusta trabajar bajo este ambiente de linux (como es mi caso) desde hace tiempo estaba buscando información sobre este tema y bueno aquí les traje una opcion para configurar su CLI con colores.

Editamos nuestro archivo $HOME/.bashrc como el usuario que se encuentre logueado en ese momento, pero antes hacemos un respaldo de ese archivo por si nos equivocamos:

$cp $HOME/.bashrc $HOME/.bashrc-respaldo
$vi $HOME/.bashrc

Ahora le agregamos estas linea junto con que contiene algunos colores para la consola esta lista puede crecer a medida que nuestra imaginacion se ponga exoterica.

RS="\[\033[0m\]"    # reset
HC="\[\033[1m\]"    # hicolor
UL="\[\033[4m\]"    # underline
INV="\[\033[7m\]"   # inverse background and foreground
FBLK="\[\033[30m\]" # foreground black
FRED="\[\033[31m\]" # foreground red
FGRN="\[\033[32m\]" # foreground green
FYEL="\[\033[33m\]" # foreground yellow
FBLE="\[\033[34m\]" # foreground blue
FMAG="\[\033[35m\]" # foreground magenta
FCYN="\[\033[36m\]" # foreground cyan
FWHT="\[\033[37m\]" # foreground white
BBLK="\[\033[40m\]" # background black
BRED="\[\033[41m\]" # background red
BGRN="\[\033[42m\]" # background green
BYEL="\[\033[43m\]" # background yellow
BBLE="\[\033[44m\]" # background blue
BMAG="\[\033[45m\]" # background magenta
BCYN="\[\033[46m\]" # background cyan
BWHT="\[\033[47m\]" # background white

#aqui indicamos los colores
export PS1="$FGRN\u@$RS$FYEL\h$RS$FBLE\w\$ "

Guardamos el archivo, cerramos la consola, volvemos abrirla y deberíamos tener un aspecto mas llamativo, tal y como lo muestra la img.

cli.png

Ahora vamos hacer el mismo procedimiento para el usuario root pero hacemos unos cambio para diferencialo con respecto a los demas nos autenticamos como root en mi caso es Debian.

#vi $HOME/.bashrc

Y en diferencia con el archivo de arriba solo vamos a cambiar la variable PS1.

export PS1="$FGRN\u@$RS$FYEL\h$RS$FBLE\w# "

Del Promt bash se puede obtener información interesante respecto al sistema operativo.

\a     El carácter ASCII de campanita(07)
\d     la fecha en formato "DiaSemana Mes Fecha"
p.ej: Tue May26
\D{formato}
El formato de fecha de acuerdo con strftime(3)  y el
resultdo es mostrado en el prompt.
\e     El carácter ASCII de escape (033)
\h     El hostname antes del primer '.'
\H     El Hostname
\j     El numero de tareas que está ejecutando el shell
\l     El nombre del dispositivo usado por el shell
\n     Nueva línea
\r     Retorno de Carro
\s     El nombre del shell, el $0 (a partir de la útima /)
\t     Hora actual 24-horas formato HH:MM:SS
\T     Hora actual 12-horas formato HH:MM:SS
\@     Hora actual 12-horas formato  am/pm
\A     Hora actual 24-horas formato HH:MM
\u     El nombre de usuario actual
\v     Version del bash
\V     Version del bash completa
\w     Directorio actual
\W     Nombre completo del directorio actual
\!     Numero en el hisórico del actual comando
\#     Numero de comando del actual comando
\$      Si el UID es 0, un #, de lo contrario un $
\nnn   El caracter correspondiente al número octal nnn
\\     Una retrobarra
\[     Inicio de secuencia de caracteres que no se muestran,
se puede usar para incluir caracteres de control
\]     fin de caracteres que no se muestran

Espero que disfruten ahora de una consola mucho mas atractiva.

MiCovan.

Posted in Debian, Linux | Comments (1)