»
S
I
D
E
B
A
R
«
Ceibal: Reflexiones
Oct 14th, 2009 by Isma

Resulta que el proyecto ceibal está en offside. Escuché gente que critica el gasto en función de “la porquería que les dieron, una máquina de juguete que no sirve para nada etc etc”. Escuché gente diciendo que está mal pensado, mal implementado, que fue una decisión en caliente, etc. No quiero ni preguntarle a google a ver qué mas dicen los escépticos porque ando con la presión alta.

Pero tienen razón.

Meterse en esas discusiones es meterse en camisa de once varas (véase “eleven straws t-shirts in latin american societies” disponible en amazon). La gente que dice estas cosas, generalmente jamás vio una XO en su vida, son gente que no les importa tanto lo que está sucediendo con los niños y ponen por encima sus ideales políticos, o simplemente no son muy iluminados en el ámbito informático. Y si lo son, como mi profesor de taller, el problema es que son unos imbéciles.

Un aceibalado

Un aceibalado

Sin embargo aclaro, cuando digo que tienen razón me refiero a que la computadora no es una gran computadora, dificilmente corra windows, no podés jugar counter strike (que sigue siendo muy popular aquí entre la gurisada), en fin, nadie la hubiese comprado por motus propio, por ser una porquería.

La respuesta es sencilla: eso no es el plan ceibal. Para corregir esa desastroza situación, Ud. debe pedirle a su diputado de confianza que apoye los siguientes proyectos:

  • “Una laptop última generación para cada niño”
  • “Un plan recambio/actualización para cada niño”
  • “Una laptop capaz de jugar todos los demandantes y violentos jueguitos que mantienen callado al rompehuevos de mi hijo para cada niño”
  • “Una laptop que pueda hacer tantas cosas que arruine la educación y colabore con la dispersión atencional para cada niño”
Antes, si estabas sentado contra una pared, estabas muerto del pedo.

Antes, si estabas sentado contra una pared, estabas muerto del pedo.

Solo así podrá Ud acceder gratuitamente a la computadora que su hijo merece. Mientras tanto aclaremos que su hijo no se merece nada, sino que la infancia en general y una posible reforma educativa desde la ideología adaptada al tiempo en que vivimos, es a quienes está dedicado este plan.

Y cada dia que pasa, cada cosa que me entero y cada vez que los veo en la calle con las XO, lamento no estar en los zapatos de esos niños. Me perfilé por la informática cerca de mis 9 años y prontamente (a los 12) y sin educador alguno, rebasaba el temario de los cursos de informática todo el ciclo básico. Cualquiera que me conozca sabe que a mis 16 ya era referente en asuntos informáticos (si, geek) y hasta consultor en seguridad. Y no pasa un día desde la instrumentación del ceibal, que no piense la cantidad absurda, obscena de conocimiento que tendría hoy, llegando a los 27 años, si me hubieran regalado una notebook verde a los 7.

Lucky bastards, a los 7 leíamos “Lala Lalo y Solo” como unos giles.

¿Quién quiere ser DKnuto?
Aug 22nd, 2009 by Isma

Yo soy el rey y la reina de los boludos juntos. Tanto servidor gratis, tanto wordpress que se actualiza solo, tantos servicios que no estoy aprovechando por querer crear mi propia instancia del servicio. No debo pagar por poner cosas en internet, ni sufrir banners insufribles. Un sitio web no se siente propio a menos que lo pagues. O que lo tengas en tu habitación.

Por suerte no estoy solo. Antes de perder toda la BD de mi wordpress hablé hasta cansarme de por qué dknuto, por qué server en casa, por qué por qué por qué?!?! pero no tienen que escucharlo de mi, solo deben conocer los proyectos similares de otra gente. Martín por ejemplo tiene su propia versión del manifesto, mientras que el Fran no hace apología de su propio server, sino que simplemente lo usa de plataforma de desarrollo con síndrome de explotación, y ahi escribe cuando le pinta. Good for you both!

Cabezudo murió en el intento de trascender, pero supongo que fue para mejor. Lo único que realmente perdemos es la frustrante y aleccionadora experiencia de su dueño plasmada en la base de datos del blog, en un intento de rescatar otra persona hundiéndose en desgracias similares.

Hacemos lo que queremos, o lo que necesitamos para trabajar, o  para sentirnos bien. Todos los días es un desafío y, reciprocamente, todos los desafíos son un día. Un día sentado frente al teclado, haciendo gala del lenguaje soez que nos caracteriza, abriendo logs, tirando pruebas, rompiendo e inutilizando el server, sin contar los problemas de hardware o los familiares que tropiezan con los cables.

Yo quiero ser dknuto. Yo seré masoquista, pero el día que falle, lo agarro con la piqueta, como hizo el mauri, o con la amoladora de banco, como hice con el athlon XP que se me quemó. Una vida catártica es una vida sin stress.

Ubuntu LiveCD desde PXE
Feb 3rd, 2009 by Isma

PRELUDIO

Luego de lanzada una nave al espacio, lo único que realmente importa a todos quienes estan mirando, es el “timing”, la sincronización de todo lo que deba suceder.  El booteo es análogo al despegue, es cuando todo el hardware se enciende eléctricamente y empieza a funcionar como un sistema.

El inicio despliega todo el hardware disponible y en el extraño caso de que todo salga bien, lanza el cohete. Igual que en la NASA, puede pasar cualquier cosa, pero 99% de los casos son exitosos. Porque la tienen clara.

Entonces, como nos enseñaron en Sistemas Operativos, el hardware, que necesita ser rápido y preciso (por ende, escaso de espacio porque hasta hace poco, velocidad = 1/capacidad), le pasa el control a otro hardware mas versátil: el disco duro. De ahí en mas todo depende de él, incluso el hecho de tener un sistema operativo y bootearlo.

Otras formas de bootear un sistema operativo es de un medio extraíble como dispositivos de almacenamiento USB, unidades ZIP, unidades bizarras de iomega, el viejo y querido CD-ROM booteable, o el viejo y ya no querido diskette (nota: lo correcto sería “la vieja y ya no querida diskette”, porque diskette es el femenino de disk … una disca).

La última y la menos pensada ( ¡ con qué necesidá ! ) es el booteo PXE a través de la red.

Preboot eXecution Environment (PXE) es un sistema por el cual la tarjeta de red exije a una ubicación en la red a determinar, un sistema operativo interpretable para que lo levante la máquina en donde está ella colocada.

Es útil cuando no tenés un disco duro, cuando tenés muchas máquinas iguales en un mismo lugar que deberían correr las mismas cosas (atento cybercafés), o si quisieras que en tu red wifi solo usen tu sistema operativo (esto último es parte mentira porque las tarjetas wifi no hace PXE, pero me parece que se puede instrumentar y suena copado).

NECESIDAD

Tiene cara de hereje. Hace poco me regalaron a Alice, mi pc, y a Wendy (athlon xp 1.6ghz, 512mb) se la di a mi vieja. Le saqué una HP Vectra (PII 333 con 256mb) que se le arrastraba, y ahora está cumpliendo sus tareas prejubilatorias forzosas (está sirviendo dknuto).

La cosa es que si bien le puse una maquina muy superior, le deje el disco duro seagate de 4gb que estaba en la vectra, y que despues de un tiempo falló y a veces arranca y a veces no. Wendy se quedó sin disco duro.

En un futuro cercano me voy a comprar un disquito de un tera y le voy a pasar el de 80gb mio a wendy. Pero mientras eso no sucede….

INSTRUMENTACION

Necesitamos:

  • un cerebro
  • un livecd de ubuntu (preferentemente 8.04 u 8.10)
  • un servidor en linux medio pronto (yo voto por archlinux)
  • una red cableada (quizas… en un futuro … inalambrico)
  • una tarjeta de red que soporte PXE (la mayoría de las integradas lo hacen)
  • paciencia, mauri .. paciencia

Las siguientes líneas van a ser basadas en este texto, y en no comerme ni la punta.

Lo primero que debí hacer fue acercarme a NFS.. con miedo, como quien le va a sacar un cuchillo de la mano a alguien. Sabía que necesitaba una forma de almacenar y transferir en la red (luego me enteraría que necesito 2) y que samba no era lo suficientemente bueno.

Por suerte no fue para tanto,  # pacman -Sy nfs-utils resolvió mi primer problema.

Lo configuré con el webmin pero no voy a entrar en detalles. El módulo se llama “NFS exports”. La configuración implica que compartas un directorio previamente creado (ejemplo # mkdir /pxe ), y que cualquiera lo pueda escribir. Esto es asi porque en mi red lo puedo hacer. Si en tu red no está bueno, no lo hagas y mirá como se limita el servicio.

Listo el pollo, falta un servidor DHCP y TFTP. El protocolo trivial de transferencia de archivos (TFTP) es igual al ftp pero mas simple y unilateral. Consta del servidor que da y el cliente que recibe, así lo dijo Dios. Es un FTP heterosexual.

El servidor DHCP de tu casa no sirve. A menos que te las ingenies para configurarle una ruta TFTP. Que pasa: cuando DHCP asigna una IP, le envía pila de datos al cliente, 4 de ellos básicos: [tu ip], [tu servidor dhcp (o sea yo)], [tu gateway a otra red / internet] y [tu mascara de subred].

Cualquier servidor DHCP mediocre hace eso, y es por eso que necesitamos un servidor más elaborado. Uno que también pase un puntero a un servidor TFTP que puede ser el mismo o no.

Ejemplo: en este momento hay una tarjeta de red tratando de iniciar.

caso 1) agarra el dhcp request tu router inalámbrico casero común, le da una ip 10.0.0.5 , no le da un tftp, a la tarjeta le chupa un reverendo huevo y … nunca sale el cohete. ABORT

caso 2) agarra el dhcp request un demonio DNSMasq como el que voy a instalar en el proximo paso, le da una ip 10.0.0.5 y le dice que en 10.0.0.1 hay un servidor tftp. LAUNCH! la tarjeta bootea y levanta lo que hay en el tftp ===> esto quiero!

Mucha documentación habla que esto se hace con un servidor tftp como tftp-hpa y un demonio dhcp como dhcpd, pero e coisa do pasado como el beijo na boca. DNSMasq hace todo por ti. # pacman -S dnsmasq

Editando /etc/dnsmasq.conf hay poca cosa para hacer. Encontrar la línea dhcp-range=192.168.0.1,192.168.0.130,12h (mas o menos), descomentarla y ajustarla a tu red. Son las IP que va a asignar el servidor dhcp, formato [primer ip],[ultima ip],[tiempo de otorgacion (12h esta bien)].

Hay formas de limitar esto para hacerlo mas seguro y ajustado a tu caso. No me voy a inmiscuir, están detalladas en la misma configuración.

En mi red, el que routea sigue siendo el router pero dnsmasq no lo sabe. Hay que encontrar dhcp-option=3,192.168.0.1 (notese que son dos campos: [3],[ip.del.rou.ter] pero el tres es la configuración del gateway. Gracias a este foro lo pude entender). Descomentarla y cambiarlo para ajustarse a nuestra red.
Descomentar dhcp-boot=pxelinux.0 y setearlo de esa forma si no lo está (pe equis e linux punto cero).

Un par de párrafos debajo está enable-tftp que activa un servidor TFTP integrado. Descomente, por favor. Debajo, tftp-root tambien va descomentado y como en el ejemplo, el valor es /pxe

Con eso esta bien de dnsmasq. Reiniciar el servicio y ya está.

Ahora agarramos el CD de linux y le hacemos una imagen, supongamos ubuntu.iso . La llevamos al server y la montamos, pero antes debemos copiar del cd el archivo \casper\vmlinuz y \casper\initrd.gz en el servidor, en /pxe

#mkdir /mnt/imagen

#mount -o loop ubuntu.iso /mnt/imagen
Teóricamente, se puede trabajar con la imagen montada directamente en /pxe/ubuntu. Yo no lo intenté, pero en ese caso salteen los pasos siguientes. En caso de que montar en loop dé algún problema (en archlinux sucede) es probable que necesiten levantar el módulo loop # modprobe loop

#mkdir /pxe/ubuntu

#cp -a /mnt/imagen /pxe/ubuntu

#umount /mnt/imagen

Y ya pueden borrar la imagen.

pxelinux.0 es una especie de vmlinuz, un arrancador del sistema en codigo maquina que es medio general para todos los booteos pxe. Lo pueden descargar de aqui. Agréguenlo a /pxe

Luego hay que crear un directorio # mkdir /pxe/pxelinux.cfg

Dentro de ese directorio, crear un archivo llamado “default” que contenga lo siguiente:

default live-hardy-i386
SAY press return for menu
#TIMEOUT 50

LABEL live-hardy-i386
kernel /vmlinuz
append boot=casper netboot=nfs nfsroot=192.168.0.X:/pxe/ubuntu initrd=ubuntu/initrd.gz

Nótese que nfsroot tiene la ip del servidor NFS, que hay dos puntos antes de la ruta de la carpeta compartida, que la linea append es la última y no hay otra linea debajo sino a continuacion, y que tanto kernel como initrd tienen rutas relativas (nfsroot usa absoluta).

Debemos mover initrd.gz a /pxe/ubuntu

Eso debería funcionar. Cualquier duda comenten y vemos que podemos hacer.

EPILOGO

Si bien un cohete puede agarrar para cualquier lado cuando sale, debe agarrar para dos o tres lados posibles, porque sino pasan cosas feas. Todo depende de lo que se necesite hacer, porque la estación espacial donde van a poner los paneles solares está en un solo lugar… Con esto quiero llegar a que es sumamente importante la automatización exacta de los procesos para obtener un resultado óptimo.

He de decir que bootear el livecd desde una locación remota ha solucionado el tema de no poder guardar los cambios hechos en el sistema, pero ha mejorado en un 900% el rendimiento (comparado con el mismo livecd en la bandeja), siendo que yo no esperaba ver una mejora espectacular. Hay que probar mas con esto, ver que cosas se pueden hacer exactamente y usarlo de formas divertidas. Escucho ofertas.

»  Substance: WordPress   »  Style: Ahren Ahimsa
Free counter and web stats