blog-bidela_virtualbox-iniciando-maquina-virtual-sistema-operacional

Virtualbox – Iniciando VM com o Sistema Operacional

Iniciando as máquinas virtuais junto ao Sistema Operativo.

Índice

Introdução e Instalação do Virtualbox
Instalando o Extension Pack do Virtualbox
Instalando Virtualbox Guest Additions
Instalando o PHPVirtualbox – Ferramenta de Gerenciamento WEB do Virtualbox
Utilizando Disco Físico no VirtualBox
Iniciando VM’s com o Sistema Operativo

Entrada

Trabalhando com Virtualbox, cada dia implementando e descobrindo mais recursos. Aqueles que vêm acompanhando o blog sabem que a cada postagem estamos evoluindo e deixando nosso ambiente mais flexível com Virtualbox.

A maravilha do sistema Linux baseado em Debian e a versatilidade que nos permite pensar, analisar, criar e acima de tudo, tentar! É aqui que quero chegar. O Linux chegou onde chegou porque teve um sonhador, esse sonhador conquistou outros adeptos e formaram uma comunidade de sonhadores. Essa comunidade acreditou no sonho, tentaram, criaram e hoje podemos embarcar nesse sonho. Bem, chegando ao fim de meu devaneio… Vamos lá!

A Solução

Depois de vários procedimentos de configurações para deixar nosso serviço de VM mais autônomo e versátil, uma outra necessidade ocorreu, que as máquinas virtuais iniciassem junto com o sistema depois de uma falta de energia ou de um simples reboot. Toda vez que isso ocorria eu era obrigado a logar via SSH ou XRDP para inicializar as VM’s, porém, as vezes não era possível realizar a inicialização das VM’s por nem sempre conseguir o acesso remoto. Devido a isso a necessidade de criar esse post.

Pesquisando em vários fóruns e na documentação do sistema de virtualização tentei criar uma solução bem simples, entretanto, eficaz, que visa iniciar as máquinas virtuais ou determinadas máquinas virtuais na inicialização sem a interface Gráfica do VirtualBox.

Colocando em prática

Vamos criar os exemplos com as três máquinas virtuais de serviço que tenho configuradas:

  • srvweb;
  • issabel;
  • srvim;

Antes de prosseguir, vamos certificar se as maquinas virtuais estão registradas no Virtualbox. Execute o seguinte comando.

VBoxManage list –s vms

A saída tem que ser parecida como abaixo, porém, com as informações de suas VM’s.

"issabel" {37a65486-2e2b-47fe-a09c-5039b77825fd}
"srvim" {d5d3e3a6-e185-4829-aaba-fe47ac4fa71e}
"srvweb" {ac7419b1-5559-4121-8c26-ab4b30f6da34}

Caso nada seja exibido vamos ter que registrar as VM’s. Para isso usaremos do seguinte comando.

VBoxManage registervm /svm_conf/srvweb/srvweb.vbox

Repita o comando para todas as VMS que deseje registrar.

Caso não tenha alterado as configurações padrão da instalação do Virtualbox no Debian, é bem provável que os arquivos de configurações da máquina virtual esteja em /home/user/VirtualBox/VMs/suavm/suavm.vbox e nesse caso o comando ficaria assim:

VBoxManage registervm /home/user/VirtualBox/VMs/suavm/suavm.vbox

A criação do nosso script vai ter essas três máquinas para inicialização.

vim /etc/init.d/vboxstart

Esse foi o script que criei para o meu propósito, use-o como exemplo. Para menos complicações é só alterar os nomes das minhas VM’s para as suas.

#!/bin/bash
### BEGIN INIT INFO
# Provides: vboxstart
# Required-Start:  $local_fs $remote_fs $syslog
# Required-Stop:   $local_fs $remote_fs $syslog
# Default-Start:   2 3 4 5
# Default-Stop:    0 1 6
# X-Interative:    true
# Description:     Vbox Iniciar Máquina Virtuais Clientes
# Short-Description: Start Maquinas Virtuais
### END INIT INFO
#
PATH=$PATH:/bin:/sbin:/usr/bin/usr/sbin
DESC="Iniciar Máquinas Virtuais"
NAME=VBoxStart
startVM()
{
        VBoxHeadless -s srvweb -vrde on -e "TCP/Ports=3390" & sleep 3
        VBoxHeadless -s issabel -vrde on -e "TCP/Ports=3391" & sleep 3
        VBoxHeadless -s srvim -vrde on -e "TCP/Ports=3392" & sleep 3
}
stopVM()
{
        VBoxManage controlvm srvweb poweroff
        VBoxManage controlvm issabel poweroff
        VBoxManage controlvm srvim poweroff
}
case "$1" in
        start)
                startVM;;
        stop)
                stopVM;;

Como é notório configuramos as portas RDP para 3390, 3391 e 3392, já que a porta padrão é 3389, ficaria mais fácil de lembrar a sequência das portas. Lembre-se, se seguirem essa sequência, a porta 3396 é padrão do serviço Novell NDPS Printer Agent, então, caso sua quantidade de VM’s ultrapassem 6 máquinas, se atente a essa porta. “Isso é para efeito de informação“.

Agora iremos alterar as permissões para que o mesmo seja executado:

chmod 755 /etc/init.d/vboxstart.sh

Incluir na inicialização do Sistema:

update-rc.d vboxstart.sh defaults

Antes no Debian 9 já bastava executar as duas linhas de comando acima que o script era executado no início do S.O. Todavia, no Debian 10 o script só executou de forma automática após os comandos abaixo.

systemctl daemon-reload
systemctl enable vboxstart

Após esses procedimentos reinicie a máquina hospedeiro e veja se as máquinas virtuais que configurou iniciaram junto ao Sistema Operacional.

Se está gostando das postagens, se inscreva em nosso site para receber mais materiais de nosso blog, é grátis, você vai ser notificado quando novas postagens forem publicadas, recebendo assim mais conteúdos de qualidades e ainda vai dar aquela força pra nossa comunidade. E não esquece de compartilhar em suas redes sociais os botões estão no final desse página.

No final dessa página temos um campo onde você é bem vindo para deixar seus comentários. Pode ser uma opinião, elogios, críticas ou correções. Pode ficar a vontade para tirar suas dúvidas ou colaborar acrescentando algo que tenhamos deixado passar desapercebido.

Sua visita e feedback é muito importante para o nosso espaço.

Deixe uma resposta