04.19.06

Mendoza

Posted in Viajes at 7:53 am by Rodrigo

En estos momentos voy en el bus a Mendoza, Argentina, de vacaciones con mi novia. Voy a aprovechar de probar qué tan buena es la conectividad desde allá, utilizando el roaming GPRS de Entel y PuTTY/S60 a mi servidor.

Publicado via Picoblogger/S60

04.04.06

Linux RAID

Posted in Linux at 9:36 pm by Rodrigo

Finalmente, me decidí a botar el viejo soft RAID que utilizaba (el típico BIOS Assisted RAID que las placas madres actuales traen) y utilizar en vez de eso md, el RAID por software que hace Linux.

El soft RAID de las placas madres consiste en un RAID por software (un driver en el sistema operativo es el encargado de manejar todo) posible de bootear desde la BIOS (pues el formato de los metadatos del RAID es conocido por ella). Esto tiene una ventaja: el RAID es utilizable desde cualquier sistema operativo que tenga el driver apropiado (Windows y Linux son los únicos que conozco). El problema es que el performance no es muy bueno (después de todo es un RAID por software, no demasiado optimizado) y que si se cambia la placa madre el arreglo muere (probablemente no en Linux, pero si en Windows). Mi placa solo soporta RAID 0 y 1, aunque las más nuevas soportan 0+1, 1+0 y 5. Además, en Linux no está muy soportado, pues el desarrollo es relativamente reciente. Implica utilizar el device mapper del kernel y una herramienta en userspace (dmraid), lo que a su vez implica usar initrd, cosa que yo no hago.. de ahí la razón del cambio.

md es el driver que provee Linux para hacer RAID por software. Obviamente solo funciona en Linux, pero el performance es excelente (está extremadamente optimizado, aunque no llega al nivel de un RAID por hardware). Adicionalmente, es muy flexible y todo el tema del failover (recuperación ante fallas en algún disco) está muy bien soportado.

Así que me cambié.. de un RAID 0 por BIOS a un RAID 5 por md. Utilicé los dos discos gemelos SATA de 80 GB que tengo, más un pedacito de 80 GB de otro disco. Con eso armé un RAID 5 de tres discos, perdiendo ochenta GB en el cambio y ganando mucha confiabilidad (espero). Con mdadm(8) es extremadamente fácil manipular el arreglo, y la gracia de esto es que está muy bien integrado en Debian, mi distribución por elección. De hecho, casi toda la configuración del arreglo la hice via ssh en forma remota :).

OpenWRT

Posted in Linux at 9:29 pm by Rodrigo

WRT54GHace algunos meses compré un Linksys WRT54G. Es un router inalámbrico 802.11g con cuatro puertos Ethernet. La gracia del router viene por el lado del software: usa Linux.

Por motivos económicos, Linksys (ahora una división de Cisco) decidió utilizar Linux como sistema operativo en su linea de routers hogareños WRT54G. No contaron con la presión de la FSF, que tras meses de comunicación logró que Linksys liberara el código fuente del router, obligandolos así a cumplir con la licencia GPL asociada a Linux y las aplicaciones utilizadas (netfilter y otros).

Esto inició un gran número de proyectos de modificación del firmware del router. Algunos proyectos tomaron el código de Linksys y le agregaron funcionalidades como VoIP o IPv6. Otro tomó el código fuente de Linux y lo modificó hasta hacerlo funcionar en el router.. este proyecto es OpenWRT, y en mi opinión es el firmware más sólido que hay para el WRT54G.

OpenWRT es prácticamente una distribución normal de Linux, con un sistema de instalación de paquetes muy similar a Debian. Requiere cierto conocimiento de Linux y la línea de comando, pero la recompensa es un sistema extremadamente flexible y potente. La documentación también es excelente.

La configuración via web no es extensiva, lo que obliga a que uno meta las manos en los archivos de configuración (via ssh). Eso es bueno, pues es prácticamente la única forma de llegar a utilizar todo el potencial del router, pero claramente hace que no sea el firmware apropiado para un newbie en el tema.

Aquí hay una lista de los paquetes disponibles en la distribución oficial actual, OpenWRT White Russian RC5 (obtenida con ipkg list) y aquí hay una lista de los paquetes que yo he instalado en el router (obtenida con ipkg list_installed). Éste tiene 4 MB de memoria flash (hay otros modelos con más, algo más caros), de los cuales casi 2 MB son ocupados por el sistema base (que incluye el servidor web, dhcp, dns, ssh, iptables y pppoe). Adicionalmente instalé paquetes para IPv6, QoS y algunos más. Incluso instalé lua, un lenguaje de programación con un footprint bien pequeño, ideal para hacer scripts en sistemas embebidos (en este caso, un servicio para actualizar mi DNS dinámico cuando cambia la IP asignada por mi ISP).El router en sí es excelente. Buena señal, incluso a través de un par de muros gruesos. Soporta WPA2, la opción menos insegura entre los sistemas de comunicación inalámbricos. Buen performance, a diferencia de un par de routers D-Link que he usado (y que se caen dos o tres veces al día).

La historia sin embargo no tiene un final feliz. El router es tan bueno (con el firmware apropiado), que mucha gente ha preferido utilizarlo en soluciones empresariales no demasiado críticas, en lugar de utilizar routers de nivel comercial ofrecidos por Cisco (que cuestan diez veces más). Es por eso que la última versión del router (WRT54G ver.5) ya no utiliza Linux, sino VxWorks (un sistema operativo propietario desarrollado específicamente para reducir costos en dispositivos embebidos). El problema es que adicionalmente Linksys disminuyó la cantidad de memoria RAM (de 16 MB a 8 MB) y flash (de 4 MB a 2 MB), lo que hace muy difícil poder instalarle Linux en el futuro. Los otros routers Linksys con Linux (como el WRT54GS) están sufriendo el mismo destino.

Hay alternativas: Asus, Netgear y algunas otras compañías ofrecen routers muy similares al WRT54G, con capacidades adicionales como puertos USB o más memoria. Linksys renombró el antiguo WRT54G con Linux como el nuevo WRT54GL, aunque le subió el precio casi en un 50%. Como sea, el router es excelente (de la versión 4 hacia abajo o el nuevo WRT54GL), y la posibilidad de usar Linux con toda la flexibilidad que esto conlleva lo hace realmente atractivo para cualquier geek computín.