Opciones de virtualización

Los ejemplos siguientes usan aptosid; simplemente sustituya aptosid por la distribución que haya elegido.

Instalación de otras distribuciones en una imagen VM

Nota: Cuando desee instalar una imagen en una máquina virtual, la mayoría de distribuciones Linux probablemente sólo necesitarán un espacio de unos 12G. Sin embargo, si lo que desea es tener MS Windows en una máquina virtual, necesitará un espacio de 30G o más para la imagen. Todos los tamaños de asignación de la imagen dependerán en última instancia de sus necesidades.

Por lo general, un tamaño de imagen no necesitará más espacio en su disco duro hasta que no escriba datos. Incluso entonces sólo ocupará espacio en el diso duro dinámicamente, según la cantidad real de datos que se expanden o disminuyen en la imagen. Esto es debido a los ratios de compresión de qcow2.

Habilitación de una máquina virtual KVM

KVM es una solución de virtualización completa para Linux en máquinas x86 que tengan extensiones de virtualización (Intel VT o AMD-V).

Requisitos previos

Para estar seguro de si su hardware soporta KVM, compruebe que KVM está habilitado en el BIOS (en algunos casos puede no ser evidente en sistemas Intel VT o AMD-V si lo está o no, y por lo tanto supondremos que lo está). Para comprobarlo, escriba en una consola:

cat /proc/cpuinfo | egrep --color=always 'vmx|svm'

Si puede ver svm o vmx en la respuesta, su sistema soporta KVM. (En caso contrario, vaya al BIOS si cree que debe estarlo y compruébelo otra vez o, si no, busque en internet acerca de cómo el menú KVM del BIOS puede estar escondido).

En caso de que su BIOS no soporte KVM vaya a Virtualbox o QEMU

Para instalar y lanzar KVM, en primer lugar asegúrese de que los módulos Virtualbox no están cargados, (la mejor opción es borrarlos con --purge) y, a continuación:

apt-get install qemu-system-x86 qemu-utils

Cuando arranque su sistema los escripts de inicio de qemu-system-x86 se ocuparán de cargar los módulos.

Usar KVM para arrancar un aptosid-*.iso

Para 64 bit haga como usuario:

$ QEMU_AUDIO_DRV=alsa qemu-system-x86_64 -machine accel=kvm:tcg -net nic,model=virtio -net user -soundhw hda -m 1024 -monitor stdio -cdrom <aptosid.iso>

Para 32 bit reemplace qemu-system-x86_64 con qemu-system-i386.

Instalación de un aptosid-*.iso a una imagen KVM

Primero cree una imagen de disco duro, (esta imagen será mínima con el tamaño necesario para los ratios de compresión qcow2):

$ qemu-img create -f qcow2 aptosid-2010-*-.img 12G

Arranque el aptosid-*.iso con los siguientes parámetros para que KVM pueda reconocer que hay una imagen disponible QEMU de disco duro:

$ QEMU_AUDIO_DRV=alsa qemu-system-x86_64 -machine accel=kvm:tcg -net nic,model=virtio -net user -soundhw hda -m 1024 -monitor stdio -cdrom </path/to/aptosid-*.iso> -boot d </path/to/aptosid-VM.img>

Para 32 bit reemplace qemu-system-x86_64 con qemu-system-i386.

Cuando el cdrom haya arrancado, haga click en el icono del instalador de aptosid para comenzar la instalación (o use el menu), otro click en la pestaña de hacer particiones y lance el programa de particiones que prefiera. Para hacerlas puede seguir las instruciones de Hacer particiones del disco duro al modo tradicional, GPT y LVM (no olvide añadir una partición swap si su sistema no tiene una memoria interna amplia). Tenga en cuenta que formatear puede ser un proceso largo, así que tenga paciencia.

gparted kvm hard disk naming

Ahora tiene una máquina virtual lista para ser usada:

$ QEMU_AUDIO_DRV=alsa qemu-system-x86_64 -machine accel=kvm:tcg -net nic,model=virtio -net user -soundhw hda -m 1024 -monitor stdio -drive if=virtio,boot=on,file=<ruta/a/aptosid-VM.img> 

Algunas máquinas virtuales no soportan virtio, por lo que necesita usar otras opciones para lanzar KVM, por ejemplo:

$ QEMU_AUDIO_DRV=alsa qemu-system-x86_64 -machine accel=kvm:tcg -net nic, -net user -soundhw hda -m 1024 -monitor stdio -hda </ruta/a/su_sistema_anfitrion.img > -cdrom otro.iso -boot d 

o

$ QEMU_AUDIO_DRV=alsa qemu-system-x86_64 -machine accel=kvm:tcg -net nic, -net user -soundhw hda -m 1024 -monitor stdio -hda </ruta/a/su_sistema_anfitrion.img> 

Vea también: la documentación de KVM.

Gestión de instalaciones de su máquina virtual KVM
apt-get install aqemu

Cuando use AQEMU asegúrese de escoger el modo KVM en la caja que aparece en 'Emulator Type' en la pestaña 'General'. (Básicamente no existe documentación para AQEMU, por lo que serán necesarios algunos "ensayos y errores" para conseguir un uso fácil del GUI, aunque un buen comienzo es usar primeramente el menú 'VM' y a continuación la pestaña 'General').

Arranque e instalación de una máquina virtual VirtualBox

Los Pasos:

Requerimientos

RAM recomendado: 1 giga : Idealmente, 512 MB para el "invitado" y 512 MB para el "anfitrión" (puede funcionar con menos, pero no espere un buen rendimiento).

Espacio en el disco duro: Aunque el VirtualBox en sí mismo es bastante liviano (una instalación tipica solamente requiere unos 30 MB en el disco duro), las maquinas virtuales usan archivos enormes en el disco para representar su propio almacenamiento de disco duro. Entonces, para instalar MS Windows XP (TM), por ejemplo, necesitará un archivo que puede alcanzar varios GB de tamaño. Para correr aptosid en VirtualBox necesitará asignar una imagen de 5 gigas más una partición o archivo de intercambio.

Instalación:

apt-get update
apt-get install virtualbox-ose-qt virtualbox-source dmakms module-assistant

Ahora prepare el módulo:

m-a prepare
m-a a-i virtualbox-source

A continuación active Dynamic Module-Assistant Kernel Module Support para virtualbox, de esta maner el kernel de Linux queda actualizado y también un módulo virtualbox queda preparado, sin intervención manual. Para hacerlo, añada virtualbox-source al fichero de configuración /etc/default/dmakms .

mcedit /etc/default/dmakms
virtualbox-source

Vuelva a arrancar el ordenador.

Es muy importante que lea dmakms

Instalar aptosid en la maquina virtual

Use el asistente de virtualbox para crear una nueva maquina virtual para aptosid, entonces siga las instrucciones para una instalación normal de aptosid.

VirtualBox tiene un archivo de ayuda que puede bajar desde aquí

Arranque e instalación de una máquina virtual QEMU

  1. Crear un imagen del disco duro para qemu
  2. Arrancar el ISO con qemu
  3. Instalar en la imagen

Está disponible una herramienta gráfica QT GUI para ayudarle a configurar QEMU:

apt-get install qtemu

Creando la imagen del disco duro

Para ejecutar qemu probablemente necesitará una imagen del disco duro. Ésta es un archivo que almacena los contenidos del disco duro emulado.

Use el comando:

qemu-img create -f qcow aptosid.qcow 3G

para crear el archivo imagen, "aptosid.qcow". El parámetro "3G" especifica el tamaño del disco emulado -en este caso, 3 GB. Puede usar el sufijo M para indicar megabytes (por ejemplo, "256M"). No preocupe demasiado acerca del tamaño del disco -el formato qcow comprime la imagen para que el espacio vacio no aumente el tamaño del archivo.

Instalando el sistema operativo

Esta es la primera vez que necesitará iniciar el emulador. Una cosa a recordar: cuando pinche dentro de la ventana qemu, el puntero del ratón queda bloqueado. Para soltarlo, oprima Ctrl+Alt.

Si necesita hacer un floppy de arranque, ejecute Qemu con:

qemu -floppy aptosid.iso -net nic -net user -m 512 \
-boot d aptosid.qcow

Si el CD-ROM es arrancable, ejecute Qemu con:

qemu -cdrom aptosid.iso -net nic -net user -m 512 \
-boot d aptosid.qcow

Ahora puede instalar aptosid como lo haría al instalarlo en un disco duro verdadero.

Correr el sistema

Para poner en funcionamiento el sistema, sólo escriba:

qemu [hd_image]

Es una buena idea utilizar imágenes sobrepuestas (overlay). Así, puede crear un imagen del disco duro una vez y decir a Qemu que almacene los cambios en un archivo externo. Evita así la inestabilidad, porque es fácil regresar a un estado previo más estable.

Para crear una imagen sobrepuesta (overlay), escriba:

qemu-img create -b [[base''image]]  \
-f qcow [[overlay''image]]

Sustituye la imagen del disco duro por la imagen_base (en nuestro caso, aptosid.qcow). Después, ya puede ejecutar qemu con:

qemu [overlay_image]

La imagen original será dejada sin tocar. El único problema es que la imagen base no puede ser renombrada ni cambiada. El overlay busca la imagen base con su ruta completa.

Usando cualquier partición verdadera como la partición primaria de una imagen de disco duro.

A veces, puede desear utilizar una de las otras particiones dentro de qemu (por ejemplo, si desea arrancar tanto la máquina actual como qemu utilizando otra partición como root). Puede hacer esto con un software RAID en modo líneal (necesitará el interprete del kernel, linear.ko) y un dispositivo loopback: el truco es anteponer dinámicamente un registro maestro de arranque (MBR) en la partición verdadera que desea incrustar en la imagen raw del disco qemu.

Suponga que tiene una partición sencilla, no montada /dev/sdaN con algunos sistemas de archivos que desea hacerlos parte de una imagen de disco qemu. Primero, cree un pequeño archivo para guardar el MBR:

dd if=/dev/zero of=/ruta/al/mbr count=32

Aquí se crea un archivo de 16 KB (32 * 512 bytes). Es importante no hacerlo demasiado pequeño (aunque el MBR solamente necesita un sólo bloque de 512 bytes), porque contra más pequeño sea, menor tendrá que ser el tamaño del "chunk" del software RAID, lo que puede tener consecuencias negativas en el rendimiento. Ahora configure un dispositivo loopback en el archivo MBR:

losetup -f /ruta/al/mbr

Asumimos que el dispositivo es /dev/loop0, porque no estuvimos usando otros loopbacks. A continuación cree una imagen del disco unido ("merged") MBR + /dev/sdaN utilizando software RAID:

 modprobe linear
 mdadm --build --verbose /dev/md0 --chunk=16  \
 --level=linear --raid-devices=2 /dev/loop0 /dev/sdaN

El resultado /dev/md0 es lo que va a usar como la imagen de disco raw del qemu (no olvide corregir los permisos para que el emulador pueda acceder). El último (y algo delicado) paso es la configuración (geometría del disco y la tabla de particiones) de forma que el punto de inicialización de la partición primaria en el MBR sea igual que el de /dev/sdaN dentro de /dev/md0 (un "offset" de exactamente, 16 * 512 = 16384 bytes en este ejemplo). Haga esto con el fdisk en la máquina de hospedaje, y no en el emulador: la rutina de detección del disco raw de qemu resulta frecuentemente en "offsets" no redondeables en kilobytes (tales como, 31.5 KB, como en la sección previa) que no puede ser manejada por el código del software RAID. Entonces, desde el hospedaje haga:

 fdisk /dev/md0

Cree allí una sola partición primaria que corresponda a /dev/sdaN, y juegue con el comando "s"ector del menú e"x"pert hasta que el primer cilindro (donde empieza la primera partición), sea igual al tamaño del MBR. Finalmente, "w"rite (escriba) el resultado en el archivo cuando esté listo. Ahora tiene una partición que puede montar directamente desde el hospedaje, como parte de la imagen de disco qemu:

 qemu -hdc /dev/md0 [...]

Puede, por supuesto, establecer con seguridad cualquier gestor de arranque en esta imagen del disco utilizando el qemu, con la condición de que la partición original /boot/sdaN contenga las herramientas necesarias.

Documentación oficial del proyecto QEMU

Se accedió a algunos contenidos sobre QEMU para el Manual de aptosid desde este sitio web bajo el GNU FDL 1.2 (Free Documentation License) y fueron modificados para el manual de aptosid.

Page last revised 04/10/2013 1320 UTC