Debian - inicializando VMs (VirtualBox) no boot
Publicado por Cláudio Souza Jr. (última atualização em 27/10/2014)
[ Hits: 5.727 ]
Primeiro cumpre esclarecer que o foco está no VirtualBox, instalado em uma distribuição Debian 7.6.0 (32 bits), mas isso deve ser possível com qualquer outro virtualizador e/ou versão Linux, desde que feitas as devidas adaptações.
O procedimento é muito simples. Criamos um script que usa configurações estáticas. Logicamente, este programa requer VirtualBox instalado e funcionando, com o aplicativo vboxmanage devidamente configurado. O apt-get resolve isso na maioria dos casos em distribuições Debian (ou baseadas em Debian). Também requer máquinas virtuais criadas e previamente configuradas. Lembre-se de que o usuário que cria as VMS é o único que poderá controlá-las. Aqui no site tem muita dica boa sobre criação e administração de VMS (inclusive na linha de comando), e na internet tem mais uma pá de coisas muito boas (inclusive em inglês), portanto, não mencionarei esses procedimentos aqui. Pouco provável o contrário, mas os programas "su" e "update-rc.d" também devem estar instalados. O interpretador de comandos que eu usei foi o bash.
Considerações:
1. Como usuário root do sistema, grave o arquivo/script no diretório /usr/local/bin";
2. Com o arquivo/script gravado, dê permissão de execução a ele com o comando:
# chmod +x /usr/local/bin/nome_do_script
3. Crie um link simbólico desse arquivo para o diretório "/etc/init.d":
# ln -s /usr/local/bin/nome_do_script /etc/init.d
4. Atualize a lista de programas iniciados no boot com o comando:
# update-rc.d nome_do_script defaults
Para ser mais prático, e considerando que a intenção é rodar esses comandos no boot/desligamento, você também poderia gravar/criar o arquivo/script em "/etc/init.d". Eu preferi fazer um link simbólico. Usar o usuário root para gravação do arquivo/script é uma atitude não obrigatória, fica a seu critério (logicamente, há implicações decorrentes). Dependendo das configurações das VMS ou/e da capacidade de processamento/carga do seu servidor, isso pode atrasar um pouco a inicialização ou desligamento da máquina. Perceba que todas as VMS têm o mesmo dono.
#!/bin/bash
### BEGIN INIT INFO
# Provides: nome_do_script
# Required-Start: $local_fs $remote_fs $network $syslog
# Required-Stop: $local_fs $remote_fs $network $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Script de ativacao das maquinas virtuais.
# Description: Script de ativacao e desativacao das maquinas virtuais no boot e no desligamento do sistema.
### END INIT INFO
#
# Declare os nomes das VMS a ativar/desativar no boot e no desligamento da maquina
array=(nomevm1 nomevm2 nomevm3)
# Funcao "iniciar" que vai disparar o metodo "start"
iniciar(){
echo "Inicializando as maquinas virtuais...";
for VmList in ${array[@]}
do
su - usuario_dono_vms -c "vboxmanage controlvm $VmList startvm --type headless >> /dev/null";
echo "Maquina $VmList inicializada...";
echo "----------------------------";
done
sleep 1;
}
# Funcao "parar" que vai disparar o metodo "stop"
parar(){
echo "Interrompendo as maquinas virtuais...";
for VmList in cat ${array[@]}
do
su - usuario_dono_vms -c "vboxmanage controlvm $VmList acpipowerbutton >> /dev/null";
echo "Maquina $VmList desligada...";
echo "----------------------------";
done
sleep 1;
}
# Gatilhos das funcoes
case "$1" in
"start") iniciar ;;
"stop") parar ;;
"restart") parar; iniciar ;;
*) echo "Use os parametros start, stop ou restart."
esac
Claro 3g Sony Ericsson md300 script conexao
Conversor de arquivos de vídeo (Video Converter)
Cria relatorio de email enviados e recebidos
POSTFIX AUTOMÁTICO COM MYSQL E IPTABLES - RESTAURANDO MBOX VIA SSH
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Programa fora de escala na tela do pc (33)
Eu queria adicionar a incon do wifi e deixa transparente no fluxbox no... (0)









