PDF de programación - Principales características de QEMU

Imágen de pdf Principales características de QEMU

Principales características de QEMUgráfica de visualizaciones

Publicado el 22 de Marzo del 2020
853 visualizaciones desde el 22 de Marzo del 2020
835,0 KB
9 paginas
Creado hace 15a (12/05/2008)
Si te acabas de incorporar al mundo de la virtualización de
sistemas operativos, seguramente te suenen nombres como
vmware o virtual box, pero hay hay muchos más programas,
entre ellos qemu, que suele quedar olvidado aunque parte del
código de software de virtualización como Xen, VirtualBox o
KVM (Kernel-based Virtual Machine) para Linux procede de este proyecto. Quizá sea porque tiene fama de
“complicado” por ser una aplicación que se maneja básicamente mediante la consola, pero yo no estoy de
acuerdo con que sea tan difícil (es más, con las versiones actuales si todo lo que queremos hacer es un uso
básico, me parece el MÁS sencillo (repito, es mi opinión)). Este artículo pretende demostrar que puede ser
una buena opción a tener en cuenta.

Qemu es un programa gratuito y multiplataforma (disponible para Windows, Solaris, Linux, FreeBSD,
NetBSD, OpenBSD, Mac OS X, ZETA y BeOS, así que no tienes excusa para no usarlo :-P ) que nos
permite tener un ordenador virtual ejecutándose en una ventana dentro de nuestro sistema operativo (entre
otras cosas, pues también puede ejecutar programas compilados para un tipo de CPU en otro tipo de CPU –
por ejemplo: ejecutar binarios para PowerPC en nuestro PC x86). Es muy bueno para hacer pruebas, pues
podemos salvar el estado de la máquina virtual sin dificultad, y restaurarlo en cuanto queramos.

Sistema Linux ejecutándose en un PC virtual (que a su vez se ejecuta en otra instalación de Linux)

Comenzando a usar Qemu

Si tienes un sistema típico, es difícil que tengas problemas con la instalación. Aún así, ni siquiera tienes que
"complicarte" con ello: puedes usar Qemu sin siquiera haberlo instalado. Hay muchas páginas que ofrecen
paquetes comprimidos en los que se incluye una versión portátil de qemu + un sistema operativo listo para
usar. Voy a destacar 2 de ellas: Qemu-Puppy (http://www.erikveen.dds.nl/qemupuppy) de unos 86 MB y
Damn Small Linux, de 50 (http://www.damnsmalllinux.org), cuya versión Embedded se distribuye con qemu.
Ambos se pueden descargar mediante bittorrent gracias a http://www.linuxtracker.org, o por medios más
tradicionales (como FTP o HTTP), desde distintos mirrors que pueden consultarse en las páginas de los
respectivos proyectos. Para comenzar, recomiendo Qemu-Puppy. Una vez descargado el paquete (ej:

qemu-puppy-2.17-1.tar.gz), lo desempaquetamos donde vayamos a usarlo (un buen lugar es un pendrive
USB, para poder transportar fácilmente nuestro PC Virtual a cualquier parte) y ejecutamos el archivo
puppy.exe o puppy.sh y obtendremos una ventana con una distribución ligera de Linux funcionando dentro.

Si queremos tener el sistema en modo de pantalla completa, lo tendremos al pulsar la combinación de
teclas Ctrl + Alt + f (vuelve a pulsarlas y estarás de nuevo en modo ventana). Otra combinación que
debemos tener siempre presente es Ctrl + Alt, pues al pulsar con el ratón en la ventana del sistema
emulado, el puntero queda “atrapado” dentro. Esta combinación permite devolver el control del puntero al
sistema operativo anfitrión.

Pulsando Ctrl+Alt+f se alterna entre el modo de ventana y el modo a pantalla completa

En el caso de usar Damn Small Linux, no lo tendremos tan fácil, pero casi. Sólo se incluye la versión de
qemu para Windows, y el nombre del lanzador (un archivo BAT) varía bastante de una versión a otra, por lo

que habrá que leer el readme.txt para saber cuál ejecutar. Por supuesto, el uso de estos lanzadores no es
obligatorio; son sólo una ayuda para quien empiece, pero en cuanto veamos un poco más de este
programa, sabrás cómo usar en su lugar nuestra propia instalación de qemu.

Ejecución de Damn Small Linux en un PC virtual sobre Windows

Instalación y uso

La instalación no tiene mucho misterio; en mi caso, desde Ubuntu Dapper, sólo tengo que hacer:

# apt­get install qemu

(claro, esto es una instalacion básica; veremos que hay complementos que pueden requerir más
complicaciones). La instalación de este paquete y otros 3 más que se añaden como dependencias, requiere
descargar unos 4 MB (una vez instalado, ocupa el triple), así que incluso quienes tengáis una conexión por
modem podreis instalarlo sin agotar vuestra paciencia, y quienes tengais un equipo con poco espacio
disponible, no supone un gran sacrificio tener instalado este programa. Me parece recomendable tenerlo
siempre a mano, pues es muy útil para comprobar rápidamente si cierto disco que tengamos por ahí es
capaz de arrancar y cómo lo hace (si alguna vez tratas de elaborar tu propio disco arrancable, verás lo
maravilloso que es este programa para evitar tener que andar arrancando una y otra vez para probar el
dichoso disco).

Por supuesto, no es necesario hacer uso de apt, puedes usar el programa de instalación que prefieras o que
necesite tu sistema: synaptic, yum, urpmi... Si por alguna razón te fallan los repositorios o quieres estar a la
última, o conseguir las fuentes, puedes encontrar el paquete adecuado en la página de su autor:
http://fabrice.bellard.free.fr/qemu/ desde donde también podemos bajar complementos y algunas
imágenes de disco (mira en las secciones Donloads y Links).

Hay interfaces gráficas para manejar qemu, pero de momento voy a mostrar el manejo desde la línea de
órdenes y más adelante mencionaré algunas interfaces que pueden usarse para quien prefiera manejar el
programa con el ratón. Para ejecutar qemu, debemos pasarle una serie de parámetros; como mínimo el
“dispositivo” desde el que ha de arrancar la máquina virtual. Lo he puesto entre comillas porque puede ser
un dispositivo real, pero también puede ser una imagen de disco (como una imagen ISO de un CD-ROM o
una imagen de un disquete).

Por ejemplo, me acabo de bajar la distribución Austrumi y quiero ver qué tal es sin tener que grabarla a CD,

reiniciar el PC, etc. Con qemu es bien sencillo; sólo tengo que ejecutar:

$ qemu ­cdrom austrumi­1.6.5.iso

y al momento aparece una ventana conteniendo la máquina virtual:



Si en vez de tratarse de una imagen, quisiera arrancar un CD/DVD real, bastaría con cambiar el archivo
hacia el dispositivo que simboliza el lector de discos ópticos:

$ qemu ­cdrom /dev/hdc

Por defecto, el programa reserva 128 MB de memoria para la máquina virtual; esto puede ser excesivo o
demasiado poco, según nuestras necesidades, así que podemos asignar la cifra que queramos detrás de la
opción -m.

$ qemu ­cdrom /dev/hdc ­m 96

Para que nuestro PC virtual tenga disqueteras, usaremos las opciones -fda y -fdb. Por ejemplo, arrancaré
una imagen de disquete de FreeDOS (bajada de la página de qemu) y le doy acceso físico a la disquetera
con:

$ qemu ­fda odin1440.img ­fdb /dev/fd0

Si queremos usar discos duros o lector(es) de CDs usaremos las opciones -hda, -hdb, -hdc y -hdd para
indicarle los distintos dispositivos IDE con los que contará el PC virtual. Nota: no se pueden usar las
opciones -cdrom y -hdc al mismo tiempo (la opción -cdrom crea un lector virtual como maestro del canal
secundario, con lo que entra en conflicto con -hdc).

$ qemu ­hda imagen_de_disco_duro.img ­hdb /dev/cdrom ­hdc imagen_de_cd.iso ­hdd 
otra_imagen.bin

Opción de arranque
En los primeros ejemplos no se incluyó esta opción porque si sólo incluímos un dispositivo, arrancará con él.
Sin embargo, al incluir varios, quizá necesitemos indicarle específicamente con cuál arrancar; para ello
usaremos la opción -boot X, siendo X:

a para disquete,
d para CD-ROM y
c para el disco duro.

Si no usamos la opción -boot, por defecto el PC usará el disco duro para arrancar. Podemos incluir esta
opción varias veces para que trate de iniciar desde otro dispositivo si falla el primero (empieza a probar por
el último boot añadido):

$  qemu ­fda odin1440.img ­cdrom ../LiveCDs/AUSTRUMI­1.6.5/austrumi­1.6.5.iso 
­m 32 ­hda imagen_disco.dsk ­boot d ­boot a

En todos los casos, si hay varios dispositivos del mismo tipo, tratará de arrancar desde el principal (ej: disco
primario maestro, disquetera primaria, etc.).

Como puede verse, la longitud de la línea a ejecutar va aumentando rápidamente según añadimos
dispositivos (¡y estamos viendo sólo las opciones más básicas!). Si no quieres estar tecleando todo esto
cada vez, puedes crear un simple shell script; copia la línea en un archivo de texto (ej: archivo.sh) con
permisos de ejecución (chmod +x archivo.sh) que comience con la siguiente línea:

#!/bin/sh
(debajo pega la orden a ejecutar)

Luego, cada vez que quieras ejecutar el sistema virtualizado no tendrás que hacer nada más que llamar al
script:

$ ./archivo.sh
Imágenes de discos
Las imágenes de discos que usamos para arrancar el PC virtual o para contener el sistema pueden haber
sido creadas por nosotros o haberlas conseguido de otro sitio (de la web, redes de intercambio entre pares,
etc). Hay muchas páginas que recopilan máquinas virtuales y una de las más recomendables es el proyecto
FreeOsZoo (http://www.oszoo.org/), donde se pueden encontrar bastantes imágenes de sistemas operativos
libres listos para ser ejecutados con qemu. Algunas de ellas incluso pueden ejecutarse en línea (aunque
este es un servicio bastante experimental y poco seguro), mediante un navegador con el plugin de Java o el
appletviewer.

A la hora de crear nuestras propias imágenes de disco, tenemos unas cuantas opciones. Una posibilidad es
hacer uso de la orden dd, la cual nos permite sacar una copia de un disco físico o crear una imagen a
nuestro gusto “copiando” el dispositivo /dev/zero. Por ejemplo:

$ dd if=/dev/zero of=imagen_disco count=2048 bs=512

Crea una imagen de 2048 bloques de 512 KB cada uno (o sea, un “disco” de 1 MB). En esa imagen
podremos crear un sistema de ficheros por medio de las órdenes mkfs* o se lo pasamos a la máquina virtual
directamente, para formatearlo des
  • Links de descarga
http://lwp-l.com/pdf17427

Comentarios de: Principales características de QEMU (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad