Datos personales

jueves, 27 de noviembre de 2008

VirtualBox. Clonar máquinas virtuales

Si queremos hacer una copia de una máquina virtual ya creada y con el/los sistema/s operativo/s ya instalado/s, hay que utilizar el comando que proporciona VirtualBox para clonar discos duros. En realidad, lo que se clona es el disco duro y no la máquina completa. El nuevo disco duro se podrá agregar a una nueva máquina al ser creada o a una máquina ya existente.

Cuando se crea una máquina virtual, VirtualBox asigna un identificador al disco duro agregado a la máquina. Si este disco duro se copia, el nuevo disco duro mantiene el mismo identificador que el original, por lo que, al intentar agregarlo a otra máquina desde VirtualBox, se genera un error porque el identificador de disco ya existe. Este es el motivo por el que hay que clonar, y no copiar, el disco duro con la utilidad que proporciona VirtualBox.

Al clonar un disco duro, VirtualBox asigna al disco clonado un nuevo identificador y una nueva dirección MAC.

Cuando se instala VirtualBox se crea un directorio oculto, llamado .VirtualBox, en el directorio home del usuario, que contiene las carpetas Machines, donde se crea una carpeta para cada máquina existente con sus ficheros logs y sus características, y VDI, que contiene los discos duros creados desde VirtualBox. A no ser que se indique lo contrario, este directorio oculto es el que emplea VirtualBox para realizar todas sus operaciones.

Para clonar un disco duro se utiliza la orden VBoxManage clonevdi, que recibe como argumentos el nombre del disco duro a clonar y el nombre del nuevo disco duro. Si ejecutamos la orden VBoxManage desde un terminal, se mostrarán todas sus opciones. En la ayuda de VirtualBox podemos consultar las acciones que se pueden realizar con VBoxManage.

A modo de ejemplo, vamos a clonar un disco duro, llamado Proyecto.vdi, en un nuevo disco duro, llamado Proyecto1.vdi.

La siguiente orden visualiza el disco duro original y su ubicación:

coralio@elnuevo:~$ ls .VirtualBox/VDI
Proyecto.vdi

Para clonar este disco duro se utiliza la siguiente orden:

coralio@elnuevo:~$ VBoxManage clonevdi Proyecto.vdi Proyecto1.vdi
VirtualBox Command Line Management Interface Version 1.6.0
(C) 2005-2008 Sun Microsystems, Inc.
All rights reserved.

0%...10%...20%...30%...40%...50%...60%.....70%...80%...90%...100%

La siguiente orden muestra el nuevo disco duro y su ubicación:

coralio@elnuevo:~$ ls .VirtualBox/VDI
Proyecto1.vdi Proyecto.vdi

En este ejemplo vemos que todas las acciones se han realizado en el directorio que VirtualBox utiliza de forma predeterminada. Si queremos utilizar otro directorio, hay que indicar la ruta completa en el nombre del disco duro original y en el nombre del disco duro clonado.

A partir de este momento, el disco duro clonado se puede agregar a una nueva máquina sin generarse ningún error y podremos utilizar todas nuestras máquinas virtuales simulando una red, junto con el equipo anfitrión. Ver el artículo, en este mismo blog, para configurar la red de VirtualBox en Linux.

martes, 25 de noviembre de 2008

VirtualBox. Mensaje de error: spawning session.

Cuando vamos a iniciar una máquina virtual desde VirtualBox, se puede generar el mensaje de error spawning session, quedando bloqueada la máquina virtual, sin posibilidad de ejecutarse.

Este problema es debido a que el módulo del kernel de VirtualBox no está compilado bajo el kernel del sistema operativo anfitrión. El errror puede surgir cuando instalamos VirtualBox por primera vez o cuando actualizamos el kernel del equipo anfitrión.

Para solucionar el problema hay que ejecutar, desde un terminal, la siguiente orden:

sudo /etc/init.d/vboxdrv setup

Este comando recompila el módulo de VirtualBox en el kernel del sistema anfitrión.

Las máquinas virtuales que ya estaban creadas se pueden seguir utilizando.