Stallman dedicando la Free Software Song
Tuesday, May 22nd, 2007La verdad es que con la de veces que les puse la cancion a los del Smartlab ya se merecen que les dedique el video. Debeis verlo hasta el final.
La verdad es que con la de veces que les puse la cancion a los del Smartlab ya se merecen que les dedique el video. Debeis verlo hasta el final.
Estaba yo preparando unas movidas y me vi en necesidad de emular un par de sistemas para hacer trapis de red y tal. El caso es que como conocia de antes qemu/kvm (son lo mismo as que a partir de ahora kvm) pense en emularlo con eso.
Bueno, a la chichilla, kvm tiene una opcion -nographic que he estado mirando, su ayuda dice lo siguiente:
-nographic disable graphical output and redirect serial I/Os to console
Ahora bien, esto hace exactamente lo que dice, ni te da una consola en el sistema ni nada por el estilo, te redirije la entrada/salida del puerto de serie a la terminal donde has ejecutado kvm.
Kvm por defecto te arranca una ventana con SDL y ahi ves el SO que estas emulando, en plan vmware pero con menos mariconeo de pantalla. De esta manera te saltas toda la parte grafica y obtienes una consola en el sistema guest gastando el minimo posible de recursos en la emulacion.
Ahora bien, como he comentado antes, no obtienes una consola magicamente, solo tienes puerto de serie redirigido a tu consola, para poder aprovecharlo debes poder acceder al sistema a traves de ese puerto de serie, y tienes que hacerlo a tres niveles.
Grub
Teniendo un /boot/grub/menu.lst no hay mas que aniadir la siguiente linea y desactivar todos los temas de splash, splashimage y demas rollos graficos de arranque. Esto permite ver una version texto de la mitica pantalla de bienvenida de grub donde puedes seleccionar el kernel con el que arrancar.
serial unit=0 –speed=9600 –word=8 –parity=no –stop=1
terminal serial
Se pone esto antes de la definicion de los kernels a arrancar y ya esta.
Kernel
Para poder ver el arranque del kernel a traves del puerto de serie hay que tener el soporte de puerto de serie activado en el kernel (suele venir por defecto, al menos en debian) y pasarle como parametro al kernel el puerto por el que queremos sacar la consola, algo como esto:
title Debian GNU/Linux, kernel 2.6.18-4-686
root (hd0,0)
kernel /boot/vmlinuz-2.6.18-4-686 root=/dev/hda1 ro console=tty0 console=ttyS0,9600n8
initrd /boot/initrd.img-2.6.18-4-686
savedefault
Las 2 ultimas opciones de la linea kernel son la clave, ahi va el puerto y la velocidad de comunicacion, a mi a 9600 me va de lujo. Con esto ya se veria todo el arranque del kernel y el sistema operativo casi hasta el final, en el momento en el que en una consola fisica tendriamos el prompt para user/password esto se para y no hay prompt.
SO
Por ultimo, la mas importante, de hecho yo creo que si no ponemos las otras, tarde o temprano, despues del timeout del grub y del arranque del kernel si tenemos esta acabariamos teniendo consola tambien.
Ahora hay que decirle al sistema operativo que tambien queremos usarlo desde el puerto de serie, que nos de una terminal ahi para que cuando nos conectemos podamos manejarlo. Esto se hace desde el fichero /etc/inittab este es el encargado de arrancar las ttys en linux, y por tanto debe arrancar tambien a la vez una tty en el puerto serie.
Esto se hace aniadiendo esta linea al final de /etc/inittab:
co:2345:respawn:/sbin/getty -L ttyS0 9600 vt100
NombreConsola:RunlevelsdeArranque:EjecutarDeNuevoSiMuere:Ejecutable+Opciones
Una vez aniadido esto y si lo hemos hecho todo bien podremos lanzar kvm con la opcion -nographic y tener un SO emulado sin necesidad de ventanas y pudiendo copiar/pegar y esas cosillas que tienen las consolas.
Para el que no se quiera rallar con todo esto he preparado una imagen de debian en formato qcow de kvm, esta virgen y se puede arrancar con -nographic, todo lo que no se sepa es “debian” (username,userpasswd,rootpaswd,hostname….), solo hay que gunzipearla y arrancarla tal que asi:
$kvm -nographic debian4.0-nographic.qcow
Esta disponible aqui: debian4.0-nographic.qcow.gz
Estaba esta maniana en el trabajo ( que no trabajando… ) escuchando Virgin Radio a traves del amarok ( que grande ) cuando han puesto una cancion cuyo estribillo me sonaba como demasiado.
Despues de echarme unas grandes mofas me he puesto a buscar cosas del tema y he encontrado una pagina que ofrece una buena demostracion, hay que escuchar las 2 canciones, aunque sale rapido la similitud.
Las canciones estan al final del post
Antes de nada decir que he escrito todo este post usando los 10 dedos de las manos y que no tiene tildes ni enies porque acabo de comprar portelo y esta el teclado en ingles.
En respuesta a la pregunta del titulo, si, se puede ser informatico y usar solo 3 dedos. Por que digo esto? Porque despues de 5 anios de Ingenieria Informatica y unos cuantos meses de master soy de los raros que aun escriben con 3 dedos de cada mano. El indice, el medio y el pulgar. Sencillamente no he necesitado nunca usar los 10, aunque la verdad es que escribo bastante rapido con mis 6 dedos.
Pero la verdad es que estoy decidido a que esta situacion cambie pero ya. No es que sea especialmente ineficiente el tema este de usar solo 6 dedos, pero ya hasta me da un poco de vergu(dieresis)enza. No, realmente se debe a que mi editor favorito, el del demonio segun RMS, espera que mi mano derecha repose sobre jkl y tenga cerca la h. De hecho, si pones los dedos en esa posicion y miras la vi quick reference veras que ahora los comandos tienen mucho mas sentido que antes.
La verdad es que no me esta costando demasiado escribir asi, pues ya me se de memoria todas las posiciones de las teclas y me salen casi automaticas, ahora solo se trata de practicar para acostumbrarme por memoria posicional. El mayor peligro, como siempre, lo tengo en los vicios. Por ejemplo, estoy muy empeniado en usar el dedo de la e para escribir la r, y a veces pulso indistintamente la y y la b con la izquierda o la derecha cuando no deberia.
En fin, me ha venido bien escribir este post para ir practicando.