03 marzo 2007

Virtualizacion con qemu

Por fin me decidí a probar qemu, antes usaba vmware, pero me rayaba el hecho de tener que renovar una clave para el vmware workstation, asi que recurri a qemu. A simple vista parece duro, pero es mucho mas simple de lo que pensaba, tiene muchas posiblidades y funciona muy bien, os voy a contar los pasos que he realizado para instalar una copia del windows xp.

INSTALACIÓN

Primero nos descargamos qemu, yo me he bajao la version 0.9 de linuxpackages.net dejo el link abajo.

qemu-0.9.0-i486-1gds.tgz

lo instalamos con

$ installpkg qemu-0.9.0-i486-1gds.tgz

y despues nos descargamos el modulo kqemu-1.3.0pre11.tar.gz con la que vamos a aumentar la velocidad de la virtualizacion, hasta ahora es la ultima version estable que ha salido en su web oficial está, de todas formas dejo el link abajo.

kqemu-1.3.0pre11.tar.gz

descomprimimos kqemu-1.3.0pre11.tar.gz, despues vamos a la carpeta y lo instalamos

$ ./configure
$ make
$ make install


no os deberia dar problema alguno, al menos ami no me los dio, una vez hecho esto debemos cargar el modulo kqemu de esta menera.

$ modprobe kqemu

Ahora debemos dar permisos al dispositivo kqemu para que todos los usuarios puedan acceder a él:

# chmod 666 /dev/kqemu

Para no tener que cargarlo cada vez que inicies slackware incluir esa linea en /etc/rc.d/rc.local

y la parte de la instalacion concluye aqui.

CONFIGURACIÓN

Ahora voy a comentaros como crear una imagen, instalar el windows xp en este caso, esto seria aplicable a cualquier sistema operativo que soporte qemu, para mas info visitad su web oficial.

Para crear una imagen e instalar windows xp el comando a introducir seria algo parecido

$ qemu-img create -f qcow winxp.qcow 10G


De esta menera creariamos una imagen para qemu en formato qcow de 10 gigas

$ qemu -boot d -m 256 -cdrom /dev/cdrom -hda winxp.qcow

De esta manera empezariamos anstalar xp en la imagen creada anteriormente, indicandole a qemu que debe arrancar desde cd usando una memoria de 256 megas y que lo tiene que instalar en la imagen creada.

Si en vez de instalar un sistema operativo solamente quieres probar uno cdlive el comando seria algo parecido

$ qemu -boot d -m 256 -kernel-kqemu -cdrom ubuntu.iso

Asi arrancariamos el cd live con un uso de meoria de 256 usando el modulo kqemu y usando una imagen iso como cdrom

$ qemu -boot d -m 256 -kernel-kqemu -cdrom /dev/cdrom

Asi hariamos lo mismo pero usando un disco dentro de la unidad cdrom

ATIENDE: la opcion -kernel-kqemu no funciona para todos los sistemas operativos, sí para la mayoría de los recientes, como GNU/Linux y Windows 2000/XP, aunque estos últimos no durante la instalación lo cual se hace un poco pesada, y de momento sólo de 32 bits.

Ahora para arrancar la makina virtual instalada deberias usar un comando parecido a este:

$ qemu -hda winxp.qcow -boot c -kernel-kqemu -cdrom /dev/cdrom -m 256 -localtime

De esta forma te arranca la imagen del xp que instalaste con la opcion de la aceleracion que proporciona el -kernel-kqemu con soporte para cdrom, con 256 megas de uso y cogiendo la hora del sistema.

Para añadirle soporte usb lo puedes hacer de varias formas.

La primera o por lo menos la que yo te recomiendo que hagas las primeras veces es esta:

Arrancas la maquina virtual con el comando anterior, cuando el sistema esté cargado, pinchas el pendrive, logicamente no te va a montar nada en el xp, asi que haces lo siguiente:

Pulsas en el qemu esta combinacion de teclas

Ctrl+Alt+2

Y te aparecerá una pantalla en negro parecido a tty de linux, una vez alli tecleas info usbhost y te saldra algo parecido a esto:

Device 1.2, speed 480 Mb/s
Class 00: USB device 1254:5698, USB DISK

Una vez que sabemos los nuemros de tu dispositivo usb ponemos la siguietne linea en esa pantalla negra del qemu en la que estas:

add_usb host:numero:numero

En este ejemplo seria esto:

add_usb host:1254:5698


Si todo va bien no te saldra ningun mensaje de error ni nada y podras volver al escritorio de xp pulsando

Ctrl+Alt+1

y veras que ya está trabajando para detectarte el pendrive.

La siguiente forma de hacerlo es en el arranque de qemu.

Pinchas el pendrive y arrancas qemu de esta menera

$ qemu -hda winxp.qcow -boot c -kernel-kqemu -cdrom /dev/cdrom -m 256 -localtime -usbdevice host:1254:5698

Y asi tambien te lo detecta, pero claro tienes que saber previamente que numeros tienes que reyenar en el campo host y tenerlo pinchado en el arranque.

Otra cosa que a mi personalmente me llamaba la atención, era montar una partcion de datos que tengo en mi pc que es totalmente accesible en linux y quiero que se accesible tambien para mi maquina virtual, pues esto es muy sencillo, simplemente es añadir otro disco duro en el arranque, dejo la line abajo:


$ qemu -hda winxp.qcow -boot c -kernel-kqemu -cdrom /dev/cdrom -m 256 -localtime -usbdevice host:1254:5698 -hdb /dev/hda2

De esta forma arracariamos windows xp con aceleracion de kqemu, con soporte cd, con 256 megas de uso reservados para qemu, con horario del sistema linux, con soporte usb y pudiendo acceder a la particion de datos en este caso, o cualquiera que pongais.

Y con esto es suficiente para poder empezar a usar qemu.

Hay entornos graficos que hacen la vida mucho mas facil, aunque personalmente creo que no tienen tantas posibilidades como por linea de comandos, pero que viene bien tenerlos en cuenta, dejo unos links abajo:

Blog que habla de entornos graficos para qemu

Tambien dejo el link de la guia de usuario oficial de qemu donde se pueden mirar mas comandos y combinaciones para aplicar, recordad que en la man del qemu tambien está disponible.

Guia usuario qemu (ingles)

1 comentario:

star_light dijo...

GRACIAS! MUY UTIL!:)