Hola visitantes de GUTL, hoy quiero mostrarles cómo montar una imagen VDI, y mostrarles además que esto es totalmente posible.
Ante todo creo esta de mas decir que esto no lo deben hacer mientras se esta corriendo un host virtualizado usando esta imagen.
Para todo lo que vamos a hacer, necesitamos los permisos de super usuario, por lo que debemos escalar nuestros permisos de la manera que le parezca mas cómoda.
Lo primero que debemos hacer es instalar la herramienta QEMU. Para nuestros objetivos, en Ubuntu, nos basta con instalar el paquete qemu-utils, aunque cualquier paquete que contenga el binario qemu-nbd nos debería servir.
Debemos cargar el modulo nbd (network block device) del núcleo. Para esto ejecutamos el comando:
# modprobe nbd
Correr luego qemu-nbd, el cual básicamente conoce todo sobre todo sobre formatos raros de imágenes de discos, las presenta al núcleo via nbd,y finalmente al resto del sistema como si fueran un disco normal.
# qemu-nbd -c /dev/nbd0
Ese comando expone toda la imagen como un bloque de dispositivo llamado /dev/nbd0, y las particiones que contiene como subdispositivos. Por ejemplo, la primera partición de la imagen aparecerá como /dev/nbd0p1.
Ahora puedes, por ejemplo, correr cfdisk en el bloque de dispositivo, pero seguro desearías mejor montar una partición individual.
# mount /dev/nbd0p1 /mnt
Ahora pueden manipular el sistema como mejor les plazca.
Una observación interesante es que si ejecutan el comando update-grub2, grub va a reconocer el sistema operativo que tienen cargado en /dev/nbd0.
Cuando terminen, desmonten el sistema de ficheros y apaguen el servicio qemu-nbd.
# umount /mnt
# qemu-nbd -d /dev/nbd0
Tarea pendiente:
Traten de hacer que el sistema que se cargue por defecto en el próximo reinicio, sea el que tienen en la imagen VDI, se que en Windows se puede hacer, y seria interesante que también lo lográramos nosotros también en nuestros sistemas libres. Si tienen alguna idea, por favor, compártanla.
Fuente: http://bethesignal.org/blog/2011/01/05/how-to-mount-virtualbox-vdi-image/
Que en Windows se puede hacer qué???
Bootear por la imágen vdi en lugar de bootear Windows?
Ja! yo también lo hacía en linux, pero no recuerdo cómo (creo que lo busqué en humanOS) si lo encuentro lo pongo acá (y quien sabe si hasta en la wiki…)
Tal vez te refieres a este link que voy a dar, que esta muy bueno, aunque no es exactamente lo que desearia porque me parece que esa opcion levanta la maquina virtual junto al sistema.
https://humanos.uci.cu/search/vdi
Ya hice lo que decía el artículo de humanos, y resolví solo en un 5%. Todavía no logro hacer que se levante el sistema operativo que está en la imagen vdi.
mmm, no, no era eso lo que me refería, pero tampoco encontré lo que buscaba así que debo haberlo soñado 😀
La cuestión es que para hacer que un SO linux levante desde una imágen tienes que poner un kernel y un ramdisk inicial con soporte para ese formato de imágen que la monte en /dev/ y luego levante el SO dentro de la imágen… a menos que exista algun parámetro del kernel que ejecute a virtualbox antes del SO host (como haces desde GDM/KDM, que no inicias sesión alguna, sino que levantas VBox directo)