sábado, 13 de julio de 2013

Tutorial: Redimensionar un disco duro virtual en VirtualBox

Extraído de http://bytesymas.com/?p=36

Para aquel que no lo conozca, Oracle Virtualbox es una herramienta de virtualización. Esta herramienta permite tener máquinas virtuales con las que arrancar en el sistema operativo de tu ordenador, otro sistema operativo como si estuvieras ejecutando un programa. Esto tiene muchas utilidades, como puede ser probar una nueva distribución de linux antes de instalarla en el ordenador, o tener en una máquina virtual un entorno de desarrollo para un proyecto determinado.
Se puede dar el caso de que una vez creada la máquina virtual, te des cuenta que te has quedado corto a la hora de asignarle disco duro.
Para solucionar este problema, en versiones antiguas de VirtualBox había que crear una imagen de disco duro virtual nueva con el tamaño deseado, y clonar todo el contenido del disco antiguo al nuevo.
Desde la versión 4 de VirtualBox, aumentar el tamaño de una imagen de disco duro virtual se hace de la siguiente manera. Los pasos de este tutorial son para el caso en que el sistema operativo anfitrión sea un Windows XP, y el sistema operativo invitado un Ubuntu.
Con la máquina virtual a la que pertenece la imagen apagada, abrir la consola de Windows e ir al path donde esté instalado VirtualBox. Una vez allí hay que ejecutar el siguiente comando:
VBoxManage modifyhd <path> --resize <tamaño>
Donde <path> es la ruta completa al fichero .vdi que representa al disco duro que queremos redimensionar, y <tamaño> es el tamaño (en Mb) al que queremos redimensionar el disco.

Por ejemplo si tuviéramos una imagen de disco llamado maquina_ubuntu.vdi en C:\Discos y quisieramos redimensionarla a 10GB el comando a ejecutar sería:

VBoxManage modifyhd C:\Discos\maquina_ubuntu.vdi --resize 10000

Si todo ha ido OK, se mostrará el progreso de como va aumentando el tamaño del disco virtual.

Si se produce el siguiente error:

0%…
Progress state: VBOX_E_NOT_SUPPORTED
VBoxManage: error: Resize hard disk operation for this format is not implemented yet!

Significa que el disco duro que se está intentando redimensionar se creó con tamaño fijo y no dinámico. De momento VirtualBox solo permite redimensionar imagenes de disco que se hayan creado con tamaño dinámico. Que el mensaje diga ‘is not implemented yet!’ me hace suponer que en futuras versiones de VirtualBox se podrán redimensionar imagenes que se hayan creado con tamaño fijo de la misma forma que se hace ahora con los dinámicos.

Si queremos redimensionar una imagen de disco que se creó con tamaño fijo, primero tendremos que convertirla a dinámico. Para convertir un disco en dinámico, tendremos que clonarlo, ya que cuando VirtualBox clona un disco, el disco resultante tiene tamaño dinámico. Para esto desde la consola de windows y en el path de instalación del VirtualBox escribimos el siguiente comando:

VBoxManage clonehd <origen> <destino>

Donde origen es el path completo de la imagen de disco duro virtual que queremos clonar, y destino es el path completo a la imagen de disco duro virtual resultante.
Por ejemplo si quisieramos clonar un disco llamado maquina_ubuntu.vdi en C:\Discos y crear un disco resultante que se llame maquina_ubuntu-new.vdi el comando a ejecutar sería:

VBoxManage clonehd C:\Discos\maquina_ubuntu.vdi C:\Discos\maquina_ubuntu-new.vdi

Una vez clonada la imagen del disco duro, desde VirtualBox seleccionamos la máquina virtual a la que pertenece este disco. Pulsamos ‘Configuración’ y allí seleccionamos ‘Almacenamiento’. En controlador SATA, quitamos la imagen de disco original y añadimos la nueva imagen generada (es importante al añadir la nueva, que esta esté asignada al mismo puerto SATA que la imagen anterior).

Una vez hecho esto, ya habremos sustituido la imagen de disco duro creada con tamaño fijo por una igual, pero creada de forma dinámica.Así que ya podemos ejecutar el comando para redimensionar el la imagen de disco sin que se produzca el error.
Con la imagen del disco ya redimensionada, solo queda aumentar la partición para que el Sistema Operativo disponga de todo el nuevo espacio que le hemos asignado. Esto se puede hacer de forma muy sencilla utilizando la herramienta Gparted desde algún Live CD.

Desde VirtualBox, seleccionamos la máquina virtual a la que pertenece la imagen del disco. Pulsamos ‘Configuración’ y allí seleccionamos ‘Almacenamiento’. En el árbol de almacenamiento, en Controlador IDE pulsamos ‘Agregar dispositivo CD/DVD’ y buscamos la imagen iso del Live CD que contiene el Gparted. El propio CD de instalación de Ubuntu, trae esta herramienta. Pero si no disponemos de la imagen iso en el ordenador, recomiendo descargarse SliTaz, ya que solo ocupa 35Mb y tiene la herramienta que necesitamos.

Con la imagen de CD seleccionada, marcamos el Checkbox de ‘Live CD’ y aceptamos. Una vez hecho esto procedemos a ejecutar la máquina virtual, y asi arrancará desde el CD. Cuando haya arrancado ejecutamos GParted y redimensionamos las particiones para ocupar todo el nuevo espacio que hemos asignado al disco (esto no tiene mucho secreto, hacerlo de forma gráfica es muy intuitivo).

Y listo, ya hemos aumentado el tamaño del disco duro de la máquina virtual. Antes de ejecutarla de nuevo, desde Configuración - Almacenamiento eliminad la imagen de CD que se añadió para ejecutar el GParted, y ya podemos entrar normalmente a la máquina virtual.

No hay comentarios:

Publicar un comentario