Una de las mejores y más
recomendables técnicas para probar nuevas configuraciones, aplicación de parches
o simplemente por trastear un poco, es la de tener un 'laboratorio' de máquinas
virtuales, esto nos permite testear de manera segura sin necesidad de usar
nuestras máquinas reales. Pero no todo pueden ser ventajas al usar máquinas
virtuales ya que en mayor o menor medida consumen nuestros recursos de espacio
en disco. Una solución podría ser la de borrar las máquinas virtuales que no
usemos en ese momento, pero casi siempre volveremos a necesitar en alguna situación
precisamente la que hemos borrado (gracias Murphy).
Una de las posibilidades que
nos proporcionan la mayoría de las aplicaciones de virtualización para paliar este
problema es la posibilidad de crear discos de diferenciación. El concepto
básico que reside detrás de un disco de diferenciación es simple, y a grandes
rasgos sería: se crea un disco base o maestro, el cual contiene el sistema
operativo y las aplicaciones comunes que deseemos (cuidado con lo que se
instala o se deja de instalar ya que una vez convertido en maestro no se puede
modificar), y a partir de este disco se crean otros que solo contienen los
datos nuevos.
Con este procedimiento
podremos tener un ahorro de espacio en disco considerable, ya que por ejemplo,
tenemos un disco maestro con el sistema operativo instalado que puede ocupar
unos 10Gb, y a partir de ese disco se han creado varias máquinas virtuales con
discos de diferenciación, estos solo guardan la diferencia con el maestro, por
lo que podemos tener discos de 1Kb, 50Mb, 10Gb, etc... y todos ellos comportándose
como si tuvieran el sistema operativo instalado.
Para realizar esta guía (video-tutorial aquí)
usaremos como software de virtualización Oracle VM VirtualBox, que podemos
descargar desde este enlace: https://www.virtualbox.org/wiki/Downloads.
Partiremos de una máquina virtual ya creada y con Linux Mint 12 Lisa instalado y
actualizado, aunque puede usarse cualquier máquina virtual que tengáis.
Lo primero que hay que hacer
es 'liberar' el disco que nos va a servir de maestro, es decir quitarle la
asociación que tiene con la máquina virtual que sea, en nuestro caso vamos a
usar el disco de una máquina que se llama MintBase. Para liberar el disco
tenemos que ir al Administrador de medios virtuales que se encuentra en el menú
Archivo de la pantalla principal.
Dentro del Administrador de
medios virtuales nos aparece un listado con los discos que tenemos creados,
seleccionamos el que queremos usar como maestro y pulsamos sobre el botón
Liberar y en el mensaje de aviso que nos lanza volvemos a pulsar Liberar.
El siguiente paso es hacer
Inmutable el disco que acabamos de liberar, con esto conseguimos que no guarde
cambios que podrían afectar a los discos que dependan de él.
Para conseguir
esto, con el disco seleccionado pulsamos sobre Modificar y en el menú de
selección que nos sale escogemos Inmutable y pulsamos en Aceptar.
Con esto ya tenemos el disco
maestro creado. Para usarlo como referencia simplemente creamos una nueva
máquina virtual, en nuestro caso la llamamos MintDiferenciado (tan creativos
como los guionistas de Lost!), las opciones de memoria las dejamos a vuestro criterio,
pero en cuanto el asistente nos pide escoger un disco duro virtual
seleccionaremos la opción de Disco duro
virtual existente y en el despegable seleccionamos el disco maestro que
acabamos de crear.
Terminamos el proceso de
creación de la nueva máquina virtual y ya tenemos nuestra máquina con disco
diferencial. Solo nos queda el último paso que es hacer que el disco
diferenciado guarde los cambios, ya que por defecto el VirtualBox genera el
disco diferenciado con una propiedad que se llama autoreset establecida en
'on'. Esto provoca que cada vez que apaguemos la máquina virtual, los cambios
que hayamos realizado se borrarán.
Para solucionarlo abrimos
una consola (cmd.exe) en modo administrador, nos dirigimos al directorio de
instalación del VirtualBox, por defecto en windows 7, "C:\Program
Files\Oracle\VirtualBox". Una vez en el directorio ejecutamos el
siguiente comando "VBoxManage showvminfo ruta_máquinaVirtual_nueva\máquinaVirtual_nueva.vbox",
con lo que obtendremos toda la información correspondiente a la máquina
virtual. Esto lo hacemos para averiguar el UUID del disco de diferenciación, ya
que lo necesitaremos en el siguiente paso.
*Nota: Por
defecto en windows 7, si no se toca nada, VirtualBox crea las máquinas
virtuales en "C:\Users\nombre_usuario\VirtualBox VMs\máquina_virtual".
Ahora que tenemos el UUID
del disco de diferenciación ejecutamos el siguiente comando " VBoxManage
modifyhd UUID --autoreset off". Si todo va bien no saldrá ningún mensaje.
Para comprobar si ha salido
bien nos dirigimos de nuevo al Administrador de medios virtuales y veremos como
del disco que hemos creado como maestro 'cuelga' el disco de la nueva máquina
virtual.
Como se puede apreciar en la
imagen, tenemos una nueva máquina virtual totalmente operativa pero solo ocupa
223Mb ahorrándonos en este caso algo más de 5Gb.
Lo has visto primero en CeroWarnings. Recuerda que puedes dejarnos tus peticiones en nuestro Buzón de Sugerencias.
4 Comentarios
Muy interesante el tuto y de gran utilidad, pero no he conseguido que funcione, con showhdinfo verifico que Auto reset esta off, pero sin embargo no me guarda los cambios en la máquina diferencial.
ResponderEliminarTambien me ocurre con otras máquinas que hago cambios en una maquina diferencial con auto reset en off y al arrancar la maquina al dia siguiente comprueba que autoreset ha pasado a on sin haber tocado nada.
Es posible que se me este pasando algo pero he seguido el tuto fielmente.
Cercionate que el usuario con el que realizas el proceso tiene los permisos adecuados para trabajar sobre el disco en concreto (sobre todo en linux). En todo caso te dejo el enlace al vídeo justo en momento donde realizamos este paso.
EliminarUn saludo y gracias por comentar.
Many thanks for this tutorial.
ResponderEliminarYo también he seguido paso a paso y al reiniciar no se me guardan los cambios...mi usuario es administrador y en linux no realizamos nada,?'?????
ResponderEliminar