Archive for the ‘Debian’ Category

Compartiendo mi conexión…

November 3rd, 2008

Al fin Juan Carlos y yo nos sentamos hacer un trabajo que desde hace tiempo teníamos pendiente y era el hecho que compartir mi conexión a internet por razones obvia (chulear mi conex), actualmente me conecto mediante un Modem CDU 680 CMOTECH.
Explicando un poco que vamos hacer la idea es que cualquier persona tenga conexión a internet ya sea mediante mi interfaz de Red o Inalambrica, estas opciones son validas de acuerdo el caso que se presente pero focalizando el escenario que tengo y es que el modem CDU se conecta a mi PC mediante USB, es decir cuando establezco la conexión tengo interfaz PPP, la idea es que mi PC sea el gateway de las maquinas que se van a conectar.
Los intrumentos que necesitamos es un cable de red directo, NO cruzado y es por hecho que en distribuciones Linux automaticamente este cable se vuelve cruzado por software, hagamos la prueba para comprobar esto que les digo :-).
Conectemos ambas PC’s una vez que tengamos la dirección IP 169.254.xxx.xxx, asignemos direcciones IP a estos computadores:

PC-1
root# ifconfig eth0 192.168.0.2
PC-2
root# ifconfig eth0 192.168.0.3
root# route add default gw 192.168.0.2

Una vez hecho esto hacemos ping de computador a computador para comprobar que existe conectividad.
Ping desde el PC-2 hacia el PC-1
root# ping 192.168.0.2
Debemos obtener una salida como esta:
PING 192.168.0.2 (192.168.0.2) 56(84) bytes of data.
64 bytes from 192.168.0.2: icmp_seq=1 ttl=64 time=0.036 ms
64 bytes from 192.168.0.2: icmp_seq=2 ttl=64 time=0.036 ms
64 bytes from 192.168.0.2: icmp_seq=3 ttl=64 time=0.031 ms

Esto simplemente para que se vea que no necesitamos un cable cruzado :-), ahora vamos a la parte interesante en esta primera seccion lo haremos que nuestra PC-2 se conecte a internet mediante la interfaz de Red utilizando como gateway la PC-1, para esto utilizaremos brctl para crear un puente (bridge) esto lo haremos de la siguiente manera, todos estos pasos se haran en la PC-1:
root# brctl addbr br0
donde br0 es un nombre que le damos, puede ser cualquiera, una vez hecho esto levantamos este bridge, que finge como “interfaz”.
root# ifconfig br0 up
root# brctl addif br0 eth0

Le damos una dirección IP al bridge br0
root# ifconfig br0 192.168.0.2
Agregamos las siguientes reglas en el Iptables
root# iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
root# iptables -A INPUT -p TCP -m state –state RELATED -j ACCEPT
root# echo 1 > /proc/sys/net/ipv4/ip_forward

NOTA: debemos detener el network-manager de la PC-1, ya que este tumba la puerta de enlace y por ende a pesar que de se este conectado por la interfaz ppp0 la PC nunca se “entera” que esta conectada.
root# /etc/init.d/network-manager stop
La configuración de la PC-2 ya tiene la dirección IP asignada (192.168.0.3) solo debemos agregar los dns, en este caso utilice los de cantv 200.44.32.12, una vez hecho esto en la PC-2 podemos intentar navegar, ya sea abriendo un navegador o haciendo ping.
root# ping www.google.com
PING www.l.google.com (74.125.95.103) 56(84) bytes of data.
64 bytes from iw-in-f103.google.com (74.125.95.103): icmp_seq=1 ttl=241 time=269 ms
64 bytes from iw-in-f103.google.com (74.125.95.103): icmp_seq=2 ttl=241 time=279 ms
64 bytes from iw-in-f103.google.com (74.125.95.103): icmp_seq=3 ttl=241 time=261 ms

Como vemos ya tenemos conectividad hacia internet mediante la PC-1 utilizando la interfaz de red, ahora lo hacemos utilizando la tarjeta inalambrica de ambos computadores, para esto quitamos el cable de Red para evitar problemas.
En la PC-1 colocamos la tarjeta inalambrica en mode ad-hoc y añadimos la interfaz inalambrica por lo general wlan0 al brctl.
root# iwconfig wlan0 essid "CaChi" mode ad-hoc channel 11
root# brctl addif br0 wlan0

Ahora solo queda conectarse desde cualquier otra maquina hacia la PC-1 de la misma manera, es decir modo ad-hoc y por el canal (channel) 11 y por supuesto colocar los DNS correspondiente, en nuestro caso se colocó los de CANTV 200.44.32.12.
Con esto mis panas de la Universidad y demás, podrán “chulearme” la conexión :-) ahora solo faltaría un QoS.

Posted in Configuracion, Debian, Planeta Linux | Comments (0)

La Distribución GNU/Linux Canaima ya tiene logo!!!

August 12th, 2008

Canaima Logo

Bueno finalmente fue publicado el logo que identificara a Canaima, la distribución basada en Debian adaptada a las necesidades de las instituciones publicas de la República Bolivariana de Venezuela, el ganador del concurso el el Sr. Irwin Borjas, el concurso patrocinado por el Centro Nacional de Tecnologías de Información (CNTI), la empresa de Telecomunicaciones CANTV y la Electricidad del Caroni (EDELCA), la empresa Venezolana de Industria Tecnológicas (VIT), el concurso ofrecía como premio al creador de la propuesta ganadora una Computadora portátil VIT.

Felicitaciones al ganador Irwin Enrique Borjas y un reconocimiento especial a los organismos involucrados por potenciar el uso de software libre en nuestro país.

Fuente: Kuro…

Posted in Debian, GNU/linux, Interes, Planeta Linux | Comments (2)

4to Día Debian, esta cerca…!

August 7th, 2008

Tenemos el agrado de invitarlos a la celebración del décimo quinto aniversario del proyecto Debian, siendo una de las distribuciones de GNU/Linux que se caracteriza por su enorme libertad y brindar a sus usuarios y administradores estabilidad y seguridad incomparables.

Dia Debian

Ya esta confirmado que para el 16 de agosto del presente año se llevara acabo el 4to Día Debian en Caracas.

Para mayor informacion sobre las ponencias y actividades que se llevaran ese día puedes consultar el sitio principal del evento….

Posted in Debian, Noticias, Planeta Linux | Comments (0)

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)

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)