2014-07-10

Arrancando las Maquinas Virtuales de VirtualBox Automaticamente

Debido a mi trabajo era necesario instalar un servidor de maquinas virtuales y por facilidad instale con VirtualBox sobre Debian7, pero se me presento el problema que cuando se reiniciaba el servidor no subían las maquinas automáticamente.

Como siempre toco investigar y encontré que existe un administrador por consola que te permite gestionar completamente el sistema de VirtualBox, como siempre la consola salva el día. Bueno el trabajo lo base en estas dos URLs http://cjenkins.wordpress.com/2010/08/21/iniciar-maquinas-virtuales-de-virtualbox-al-inicio/ https://www.virtualbox.org/manual/ch08.html#vboxmanage-startvm pero como siempre con mis modificaciones.

Bueno lo primero es aprender como arrancar las maquinas virtuales desde la consola y con que parámetros los podemos arrancar así no este activo el entorno gráfico. Eso se hace con el siguiente comando siendo root:

root@localhost:~# su - user -c "VBoxManage --nologo startvm "Maquina 1" --type headless"

Toca enviarlo así para que no arranquen como root sino con los parámetros del usuario y así proteger la seguridad del servidor. Los parámetros del comando VBoxManage son para lo siguiente:

- nologo: Suprime la información del logo de instalación, se debe usar para los scripts.
- type headless: Este indica el tipo de arranque de la maquina, con el headless aseguramos que no suba el entorno gráfico y así podemos hacer que la maquina suba sin problemas en el arranque.

Entonces aprovechando el script de arranque que según la versión de virtualbox que este instalada esta en el script /etc/init.d/virtualbox o /etc/init.d/vboxdrv y creo un nuevo segmento para arrancar las maquinas el cual llamo start_vms para seguir con el orden del script original, se ve en la siguiente imagen:


Como ven uso las variables que se crean en /etc/default/virtualbox, para poder indicarle con que usuario realizar la acción de ejecutarlo. Ahora para que suba cuando se suba el servicio se debe colocar la ejecución en otro segmento del mismo archivo y queda así



Así cuando el sistema arranque suben las maquinas virtuales sin importar si ha subido el entorno grafico. espero les sirva