configurando Windows XP en QEMU con KQEMU

winxp-qemu-thumb.png

Para seguir con los consejos computacionales (como el del posteo sobre CUPS), hoy instalaremos y configuraremos QEMU para que corra con KQEMU, y lo dejaremos listo para instalar básicamente lo que quieran.

Primero lo primero.

¿Qué es QEMU? (y KQEMU…)

QEMU es un emulador de procesadores que permite, principalmente, tener corriendo sistemas operativos invitados (guest) que corren dentro de un sistema opartivo huésped (host). Esto le permite a uno tener varios sistemas operativos corriendo dentro de la misma máquina, y es bien posible que esta sea una de las cosas a la vez más metafísicas y más entretenidas que se pueden hacer en un computador.

KQEMU es un módulo del kernel de Linux que acelera el funcionamiento de QEMU, que sin la ayuda de este módulo adicional es bastante, bastante más lento1.

En términos bastante legos (que la verdad es que son los que mejor entiendo), lo que se hace es simular un computador virtual dentro de otro computador real. Y dentro de esta máquina virtual uno puede hacer, básicamente, todo lo que puede hacer en una máquina real.

¿Todo?

Pues bien, no. No todo.

En primer lugar, no podemos olvidar que la máquina virtual es precisamente eso: una máquina simulada. Y por lo mismo, sus capacidades máximas no podrán jamás superar las capacidades de la máquina real que le sirve de huésped. Además, como la máquina huésped está usando parte de sus recursos para, entre otras cosas, simular esta máquina, los recursos que quedan disponibles para la máquina virtual son bastante menores que los de la máquina huésped.

Todo eso sin contar, por ejemplo, que hay ciertas cosas que es más difícil hacer en este tipo de máquinas que otras cosas. Por ejemplo, la aceleración gráfica es algo que incluso en los mejores sistemas de virtualización sigue siendo de carácter experimental, y eso sólo en los casos en los que la aceleración gráfica es una posibilidad. Eso descarta de lleno el uso de aplicaciones que la requieran (como juegos con requerimientos gráficos considerables, o algunas aplicaciones gráficas más serias).

En este caso…

¿Por qué correr una máquina virtual?

Pues, razones hay muchas.

Podría ser que, en primer lugar, simplemente nos atraiga la posibilidad de hacerlo. Para toda esa gente, el hecho de que se pueda hacer es razón suficiente para probarlo, si no es para nada más que simplemente ver por sus propios ojos que se puede (y sí que se puede).

Sin embargo, existen aplicaciones muy prácticas para los sitemas de virtualización que no requieren de una especie de interés intelectual en el que se pueda o no. Por ejemplo, si existe una aplicación que corre en un sistema operativo distinto del que se está usando y se requiere para ejecutar tareas muy específicas, en vez de tener que tener dos sistemas operativos instalados y verse obligado a reiniciar cada vez que se quiere correr ese programa, se puede instalar ese programa dentro de una máquina virtual y usarlo sin problemas desde la máquina huésped. Alternativamente, puede haber versiones nuevas de sistemas operativos que queramos probar sin arriesgar la que tenemos. O versiones mas viejas de sistemas operativos que queramos probar para satisfacer nuestra curiosidad o nostalgia. O para hacer pruebas en estos diferentes sistemas. En fin, aplicaciones hay miles.

La pregunta entonces, si vamos a usar un sistema de virtualización, es…

¿Por qué usar QEMU?

Existen muchas alternativas que podemos querer usar si vamos a usar un sistema de virtualización, más allá de cuáles sean las razones que nos lleven a querer usar uno. Del mismo modo, existen muchas distintas maneras de responder la pregunta de por qué elegir uno y no el otro.

QEMU tiene la gracia de ser libre y razonablemente bueno, y eso debería ser razón suficiente para muchos. Pero ya que no los he probado todos ni mucho menos, este posteo no pretende convencer a nadie de usar QEMU, sino simplemente ayudar a los que ya hayan tomado esa decisión a hacerla del modo más fácil posible.

Bueno, bueno, suficiente preámbulo. ¡Vamos allá!

Los pasos específicos, en la siguiente página (¿No es increíble lo ordenado que está esto?).


  1. Para que se hagan una idea, si QEMU por sí sólo normalmente corre el sistema invitado a entre 10 y 20% de la velocidad del sistema huésped, con KQEMU esta velocidad llega a ser cercana a la velocidad realReferencia. [volver]

Pages: 1 2

4 Responses to “configurando Windows XP en QEMU con KQEMU”

  1. gorgonzola Says:

    1.- Echale un ojo a rdesktop y a su contraparte en qt krdesktop (o algo asi). Se supone que eso usa gnome (y kde e teoria) para lograr “virtualization integration” y correr vms como soporte a aplicaciones integradas en el desktop. onda correr iexplorer desde kmenu, sin que se “vea” que es un vm (para windows es mejor wine en todo caso…)

    2.- Yo tenia entendido que a.- la memoria minima pa windosxp era de 384 mb b.- el valor por defecto de qemu era 384 mb.

    3.- Yo habria puesto ademas una notita sobre que hacer cuando quieres usar mas ram del que esta disponible en shm (shm es la memoria compartida del kernel, armada entre ram y swap), que consiste en desmontar /dev/shm y remontarlo con un tamaño custom mas grande…

    4.- ya que estai interesado en armar launchers pa esas cosas… hay costos asociados a tener kqumu cargado por que si? no seria mejor poner el modprobe en el mismo comando, o mejor aun, apuntar el menu a un wrapper que cargara kqemu y despues lanzara qemu? notese que yo SI lo cargo desde /etc/modules, puede que esto sea onanismo puro…

    5.- lo que seria sweet seria que hicieras algo parecido, pero con xen. A mi me da un poco de lata instalar un hypervisor, pero tu tenis un computador extra :P

    5.1.- y si uno arma una vm en qemu que bootee xen?!?!? oh, lav recursividad!

    6.- hay miles de razones practicas para preferir qemu. empezando por que pasar de que se te ocurra usarlo a usarlo es tan sencillo como apt-get, modprobe, qemu. Ahora, asi mismo, hay serias limitaciones con qemu… no es asi como una herramienta “profesional”, sino mas bien un chiche de hobby.

    7.- Nunca nadie ha podido responderme esta pregunta: existe alguna aplicacion que sea capaz de cargar como vm una particion real? eso seria sweet.

    ya, mucho jugo. un abrazo.

  2. Matias Says:

    Aclaraciones varias:

    1. rdesktop no involucra virtualizacion. Es simplemente un cliente para el protocolo de acceso remote de Windows. rdesktop = “remote desktop”

    2. Yo (y aparentemente Coquin) corro un par de VMs con Windows XP y 256mb de memoria.

    3. La memoria disponible en /dev/shm no tiene relacion con la que esta disponible para la maquina virtual. Estas pensando en memoria virtual (lo “virtual” de esa memoria no tiene nada que ver con maquinas virtuales). Remontar /dev/shm con un taman~o mas grande de hecho *reduce* la memoria virtual. Para aumentar la memoria virtual sin dentrar a picar, la unica manera es agregar swap.

    6. No menosprecies a qemu! Es bastante mas que un “chiche de hobby” y tiene una historia larga. Puede que no sea todo lo pulido que es vmware, pero uno podria decir lo mismo de Linux respecto de Windows! :-)

    7. No se de qemu, pero en vmware se puede, aunque no es una buena idea, a menos que el OS en la particion “real” lo hayas instalado desde vmware y solo lo uses ahi. Si no, a tu instalacion de Windows no le va a gustar nada que derepente todo el hardware cambie. De partida, XP se va a desactivar, pero puede que ni tenga los drivers necesarios.

    Abrazos,
    M.

  3. Alberto Says:

    Bueno.

    Después de instalarle QEMU a la analfabeta tecnológica número uno que conozco (mi madre) me quedan algunas dudas.

    1) Repito la pregunta 4 de JT. Osea: ¿no sería lo ideal que kqemu se cargue de manera automática con el lanzador? ¿no es onanismo tenerlo cargado en todo momento?

    2) La guía omite un pequeño detalle al momento de explicar cómo bootear el guest OS. El problema es que no puedes señalar la dirección /media/nombre_de_disco_va_aqui (que sería lo más lógico), porque ese es simplemente el punto de montaje, sino que hay que señalar el dispositivo (yo use el symlink que sale en /dev al cdrom). Si intentas con /media… te tira un error (el cual no recuerdo) que al googlearlo me dio la solución (si sé que dice /dev de ejemplo, pero a mí no me había quedado tan claro).

    3) Para pasar a pantalla completa sirve algo el ctrl+f (es una lata tener qemu en un cuarto de pantalla.

    4) (sigo con mis comentarios intentando hacer una muy buena guía, una guía perfesta): Creo que la guía debería partir explicando que tienes que tener Ubuntu instalado (o por lo menos Debian): ya me imagino a alguien con Fedora o SuSE que ponga apt-get y le diga: “no such command” o algo así :P (aunque sí, reconozco que es menos probable que un newbie utilice Fedora o SuSE a que utilice Ubuntu).

    5) Tuve una duda que parece ser extendida: que la K en kqemu significa KDE y no, significa kernel.

    6) También se podría colocar algún link a esas utilidades cómo shrink xp o similares que te permiten usar una versión minimizada que consuma menos recursos (existe una que se llama algo así cómo shrink vista, pero sería una tontera, sería cómo esperar que algún que Don Francisco tenga anorexia).

    7) (imitando a las australianas del foro, aunque está relacionado, la única razón por la que me interesaría instalar windows) ¿alguno de los hermanitos Atria han tenido problemas con los archivos .doc creados en oo.o que se ven bien en algunas versiones de office, pero en otras no?

    8) Cómo le dije a JT (fundamentalmente por razones de RAM) de verdad al finalmente lograr cargar windows dentro de linux fue cómo lograr lo que esperaba hace musho tiempo (y fue por esta guía). Gracias Coquín.

  4. Alberto Says:

    PD: También le falta lo que sale en la wiki de Ubuntu:
    https://help.ubuntu.com/community/WindowsXPUnderQemuHowTo

    También puedes montar el disco virtual de QEMU tal y cual cómo otro disco. Las imagenes QCOW no pueden ser montadas.

    TIENES QUE ESTAR SEGURO DE NO ESTAR CORRIENDO QEMU CUANDO HAGAS ESTO.

    Para montar el disco, primero se debe crear un directorio, por ejemplo “media/qemu”. Luego correr en la consola:

    sudo mount -o loop,offset=32256 windows.img /media/qemu

    Eso sería (si tienen una imagen QCOW salen instrucciones para solucionarlo en la página que di, in ingrish solamente).

    PD2: ¿Cachaí porque mientras tengo abierto el QEMU no tengo sonido en Kubuntu?

Deja tu comentario