MarioDebian, mi devlog

Bitácora de un desarrollador newbie.

Comentarios desafortunados

Hay un gracioso suelto.

  1. Se hace pasar por quien no es (sorry Jorge).
  2. Me insulta o al menos falta a la verdad
  3. Usa Mac OSX AppleWebKit/419 (KHTML, like Gecko) Safari/419.3
  4. Es cliente de Jazztel con IP: 87.223.205.XX
  5. El domingo no tuvo mejor cosa que hacer que escribir esta perla:

Se que no debería alimentar al Troll pero para la próxima lo tendré en cuenta.

De todos modos los que tienen que tomar acciones ya están avisados. 





Novedades en TcosMonitor

Entre charlas, cursos y demás hacía tiempo que no me sentaba y me pegaba un buen empacho a programar.

Ayer tocaba (después de recibir varias sugerencias) y estuve añadiendo nuevas funcionalidades a TcosMonitor.

La primera es el soporte para una lista estática de equipos. Si tenemos varios ordenadores en una red y sólo queremos administrar unos pocos, o si usamos TcosMonitor con equipos instalados (modo standalone) no podíamos decir que equipos controlar.

 

Se ha añadido una nueva opción al método para descubrir equipos llamada static que lo que hace es abrirnos una lista para poder añadir a mano o importar desde la lista de equipos conectados las IP's y MAC:

La segunda funcionalidad es la opción de sólo mostrar los que sean administrables, es decir, en los que se ejecuta tcosxmlrpc (puerto 8080 abierto)

Se ha cambiado la forma de lanzar y administrar las sesiones VNC y aunque todavía hay que modificar alguna cosa más la mejora se nota bastante... 

Ando lidiando con la gente de debian-edu, para primero, presentarles el proyecto y segundo mostrar las diferencias contra LTSP que es lo que realmente les interesa. Espero haber sido claro en mi primer correo a la lista. Tampoco espero que TCOS sea un sustituto de LTSP pero que al menos exista una segunda alternativa abierta, completa y usable.

Voy a ver si preparo mi charla para las jornadas técnicas de Rediris, para el día 23 de Noviembre a las 10:30.





I Xornadas de Software Libre no ensino

Llevo unos días bastante liadillo (charla con los operadores UVa, Cursos de Introducción a GNU/Linux en un cole...) y no he tenido tiempo de escribir unas simples palabras de agradecimiento a los compañeros de OUSLI.

La pasada semana estuve desde el jueves al domingo en Ourense y hay que reconocer y creo que es el sentimiento de todos los ponentes, que fuimos tratados como reyes, muy buena organización, acogida, trato familiar...

El jueves según fuimos llegando nos organizamos para visitar y probar las termas. Nunca había estado en una, incluso desconocía que en Ourense tuvieran termas y es algo de lo que me arrepiento no haber conocido antes, después de varios cambios bestiales de temperatura (de 41 a 20 ºC) esa noche todos cargamos las pilas y dormimos como bebes. No olvidaré el ratito que estuvimos en el "sudario" (una especie de sauna) discutiendo de Software Libre y universidad hasta que nos echaron.

Viernes primeras charlas (la primera la mía) y aunque tuve algunos problemas con el cañón (¡para qué me habré comprado un portátil panorámico!) y con los terminales, no salió demasiado mal. Gracias a Ismail (MaX) pude repetir el sábado en su charla sin fallos.

Interesantes las charlas de lucuslms, accesibilidad, CGA, mesa redonda bastante participativa, magasi cd, web dinámicas, Galipedia, JClic, forja de rediris, Cenatic...

Me hubiera gustado acudir a la charla de Cenatic pero me pilló comiendo... en cuanto a la charla de la forja de rediris y director de CICA tuve una pequeña conversación durante la comida quejándome de la última actualización y del mal funcionamiento de la forja... se que debería hacer la queja formal y no personalmente pero lo prepararé en breve.

Gracias a estas jornadas he podido conocer a Franscesc Busquets, responsable de varios proyectos en la comunidad de Cataluña, como son JClic o LinKat.

De paso y lo dejo para el final porque es de los temas de menos trascendencia de las jornadas (aunque no personal), Ismail Alí, responsable de MaX, anunció oficialmente mi fichaje para el desarrollo de la nueva versión de MaX, así como implantación de terminales ligeros en la Comunidad de Madrid, así que preparaos porque a partir de ahora hay nueva categoría en el blog y os daré bastante la brasa con novedades y desarrollo de la distro madrileña.

No quería olvidarme (y casi lo hago) de toda la gente que he conocido y no he mencionado, tuvimos incluso un ratillo para salir de fiesta el sábado por las empinadas calles del centro de Ourense. Besos y abrazos para todas/os.

Hay varias fotos mías en mi cuenta de picasaweb, y muchas más en la página de las jornadas.





Arranque de GNU/Linux no local a través de la historia

Hace unos días en la lista debian-live se publicó una de las últimas mejoras que es poder descargar el archivo squashfs (un sistema raiz comprimido del órden de 3:1) mediante http.

Bien, desde el principio de los tiempos (que se usa GNU/Linux) siempre hemos tenido multitud de opciones distintas para cargar el sistema operativo desde los dispositivos/medios más extraños:

LIVECDS

El primer livecd (sin demasiado éxito) fue creado allá por 1995, aunque hasta el año 2003 con la aparición de los primeros Knoppix no fue demasiado usado.

La técnica consistía en generar un archivo comprimido (cloop) que más tarde se montaría como sólo lectura y al que por determinados trucos podíamos simular que se podía escribir (solapando la memoria RAM con el cloop)

La técnica fue mejorando y saliendo nuevos drivers como unionfs, squashfs y hace poco aufs.

El proyecto Metadistros siempre fue un punto de referencia para crear livecds ya que las distribuciones españolas más importantes de aquella época (Linex y Guadalinex) se basaban en sus scripts para arrancar.

UPDATE: Metadistros nació (después de/a partir de) Linex para unificar a todas. (gracias José L. Redrejo)

Con la llegada de Ubuntu nació casper, que tomó prestado y también programó de cero muchas partes de su «arranque». En Debian se adoptó casper pero no duró mucho naciendo un fork llamado live-initramfs que lo mejoró en bastantes casos.

Nunca me acabó de convencer casper ya que los scripts que siempre he usado para mis pruebas (initramfs-tools-metadistros basados en el calzador de Guadalinex) eran bastante más rápidos y hacían todo lo que necesitaba.

Un subderivado que últimamente ha tenido bastante éxito son los LIVEUSB que vienen a ser lo mismo que un cd pero con las ventajas de velocidad y escritura de las memorias USB (cada vez más baratas).

Ya hace un tiempo estuve jugando con ellas en el proyecto conocido como USeBix, pero aquello quedó en standby, aunque todavía sigue salvando de desgracias, ¿verdad Rober?

RED

Bastante antes del nacimiento de los livecds existe la posibilidad de arranque por red. Fué en 1999 cuando comenzó el proyecto más popular: LTSP. Casi 10 años después, es el proyecto más usado para «resucitar equipos obsoletos», pero en la versión 5 (la última que ha salido no hace mucho) parece no haber seguido su habitual facilidad y sencillez y mucha gente no puede usarlo o no le funciona.

LTSP crea en un directorio una microdistribución que comparte por NFS para que cada terminal que arranca lo monte como su sistema «/». Esto en equipos con muy poca memoria es la única solución pero cuando tenemos más de 40 Mb genera demasiado tráfico por red (tráfico innecesario si el equipo pudiera usar más su RAM y menos la red)

PXES nace a partir de la idea de LTSP pero exportando un sistema de archivos «/» dentro de un squashfs que se generaba con un completo asistente. El problema de PXES fue que estaba anclado a programas y librerías antiguas y no era posible avanzar o añadir nuevas características de una manera sencilla. Dejaremos a parte la empresa 2x....

Tanto el uno como el otro han usado siempre un servidor TFTP (Trivial File Transfer Protocol) un pseudo-servidor FTP en el que no hace falta autenticación.

El año pasado nace TCOS, pero no voy a hablar demasiado de él porque ya hablo lo suficiente en el resto de lo que escribo por aquí.

Desde el proyecto LTSP han venido investigando métodos para evitar el servidor NFS y uno de ellos es NBD (Network Block Device) que está compuesto por un módulo del kernel, un cliente y un servidor. Con NBD es posible exportar un archivo como si fuese un dipositivo y montarlo como un dispositivo loopback en una máquina remota. Ellos lo han usado para SWAP por red pero en mis pruebas yo lo he usado para exportar el squashfs de TCOS, y así evitar la descarga.

 

Con todo esto lo único que quiero dejar claro es que la gente de debian-live está haciendo un gran trabajo pero para nada han descubierto algo espectacular. Descargar un archivo de 500-600 Mb con wget y usarlo como sistema «/» puede estar bien si nuestra máquina tiene 1-2 Gb de RAM y una tarjeta de red de 1Gbit... aún así se sigue necesitando un CDROM o memoria USB para cargar tanto el vmlinuz como el initramfs (lejos quedaron los tiempos en el que los dos cabían en un disquete)

Hasta que no se mejore el soporte de arranque desde los dispositivos hardware, HTTP no puede ser un método primario de arranque, TFTP, por ejemplo sí lo es.

 

Mientras y para no tener que escribir un nuevo artículo, en TCOS se ha añadido soporte para escuchar CDAUDIO desde terminales (usando el módulo cdfs) y estoy haciendo pruebas con un nuevo juguete que encontré el otro día por casualidad: USB/IP.

USB/IP consiste en varios módulos para el kernel y algunas utilidades, y lo que hace es apropiarse del dispositivo USB que le digamos y servirlo por red a otro equipo.... Los usos casi los limita la imaginación:

  • Usar webcams en terminales ligeros
  • Scanner o impresoras
  • VOIP
  • .....
El proyecto aún es demasiado experimental y no he conseguido hacerlo funcionar al 100%, pero por si a alguien le interesa puede encontrarlo convertido en paquetes deb en el repos de tcos.



Migrando desde la forja

La forja de rediris no pasa por sus mejores momentos.

Hace unos días hicieron una migración de un servidor a otro y por el camino tuvieron algunos problemillas para recuperar el SVN y las listas de correos (no se si alguna cosa más porque son las dos únicas cosas que usaba)

Por eso aprovechando que tenía replicado el SVN (con el programa svk) en tcosproject.org (trac necesita un SVN local) he activado el nuevo SVN en https://www.tcosproject.org/svn/tcos/ para poder encargarme de las copias de seguridad y este tipo de cosas tan aburridas personalmente.

El problema lo tenía con la lista de correo porque si bien no podía contactar con la gente que usa y sigue el proyecto tampoco funcionaba el interfaz de administración para ver quiénes y cuántos eran. Una vez ha vuelto a funcionar he dado de alta un par de grupos de google para usarlos como lista de correo, importanto los contactos de la anterior lista.

¿Por qué no lo he hecho en www.tcosproject.org?

La web, repositorio, wiki, trac y svn de tcosproject está alojado en una máquina de la Universidad de Valladolid, concretamente en la Escuela Universitaria Politécnica con los permisos y papeleos en regla... la cosa se complica cuando intentas instalar un servidor de correo porque todo el tráfico de la UVa usa una pasarela llamada cartero.uva.es y por defecto el puerto 25 está filtrado. Se puede pedir, pero esto revierte en más papeleos y pedir permisos que en un tiempo se revocarían ya que desde administración están centralizando todo a sus máquinas.





TCOS Server LIVE 1.8 liberado

Estamos trabajando conjuntamente con la Universidad de León en terminales ligeros, y uno de los proyectos más interesantes que hemos finalizado ha sido una demostración de funcionamiento de TCOS portable, es decir, en soporte livecd (incluso en USB). Con el motivo de que ha sido presentado en la Universidad de México hace unos días, he podido liberarlo con su consentimiento y publicar aquí un poco más de información.

El sistema consiste en Debian Sid (paquetes de agosto), con tres kernel 2.6.22-1, calzador basado en metadistros, escritorio Gnome 2.18, todos los paquetes de TCOS configurados y preparados para funcionar como servidor de terminales y algunas aplicaciones de desarrollo, ofimática, diseño, etc...

El funcionamiento es de lo más sencillo, se arranca un equipo con el cd y el resto del aula por red desde ese equipo. En menos de 5 minutos tendremos un aula TCOS totalmente funcional.

He elaborado un informe en pdf en el que se explican con más detenimiento todos los detalles, así como claves de acceso o configuración por defecto del servidor (bastante conservativa) y algunas capturas de pantalla como esta:

Informe en PDF 

Imágen ISO (678 Mb)

MD5: c8812108c5bac7339999ddb95db4ee42 

Aprovechando el artículo...

* Las listas de correo de TCOS en la forja no funcionan (de momento) por lo que la única forma de recibir ayuda es en el canal IRC de TCOS: #tcos en freenode.net

* El SVN lo he migrado al servidor de TCOS project para evitar en el futuro posibles sustos como el de esta semana.

* El proyecto TCOS ya aparece en el Concurso Internacional de Software Libre bajo la categoría Administración y comunidades. Esperemos que haya suerte.