No pacote padrão do VirtualBox há um gerenciador de máquinas virtuais para a linha de comando, chamado VBoxManage, capaz de realizar todas as configurações necessárias para criar e gerenciar máquinas virtuais pelo shell.
Vamos ver como podemos criar uma nova máquina virtual, preparar para iniciar a instalação do sistema operacional Windows XP a partir de uma ISO do cdrom de instalação e executa-lá no VirtualBox utilizando apenas comandos direto na console do Linux.
A máquina virtual sugerida neste post tem o nome XP Desktop, siga os passos a seguir para criá-la:
- Crie a máquina virtual com o comando createvm do VBoxManage:
VBoxManage createvm --name "XP Desktop" --ostype WindowsXP --register
VBoxManage modifyvm "XP Desktop" --memory 512 --vram 64 --acpi on --boot1 dvd --nic1 bridged --bridgeadapter1 eth0 --vrde on --usb on --usbehci on
Parâmetro | Descrição | Valor |
–memory | Quantidade de memória para a máquina virtual. Para um melhor funcionamento do sistema, este valor não deve ultrapassar 50% do total da memória do computador | 512 Mb |
–vram | Quantidade de memória para o vídeo | 64 Mb |
–acpi | Habilita o gerenciamento de energia ACPI | on |
–boot1 | Configura a unidade de DVD como primeiro disco da ordem dos discos de boot | dvd |
–nic1 | Adiciona uma placa de rede no modo Bridged | bridged |
–bridgeadapter1 | Vincula a placa de rede criada a um adaptador real da máquina anfitriã. Atenção ao nome do dispositivo adaptador de rede, neste exemplo estamos apontando para o dispositivo eth0, o seu pode ser diferente. | eth0 |
–vrde | Habilita a conexão a área de trabalho remota | on |
–usb | Habilita o suporte para USB | on |
–usbehci | Habilita o suporte para USB 2.0 . Importante lembrar que para habilitar este recurso é necessário ter o Oracle VM VirtualBox Extension Pack previamente instalado, caso necessário acesse o post Instalar Oracle VM VirtualBox Extension Pack no Linux que descreve como instalar o extension pack. | on |
VBoxManage createhd --filename ~/winxp-20gb.vdi -size 20000
O comando acima cria o disco virtual na pasta home do usuário logado, entretanto é permitido usar qualquer local com espaço suficiente para o tamanho do arquivo de disco virtual.
VBoxManage storagectl "XP Desktop" --name "IDE Controller" --add ide
VBoxManage storageattach "XP Desktop" --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium ~/winxp-20gb.vdi
Parâmetro | Descrição | Valor |
–storagectl | Nome da controladora da máquina virtual | IDE Controller |
–port | Porta da controladora na qual será conectado o disco virtual. | 0 |
–device | Numero de ordem do dispositivo nesta porta da controladora. | 0 |
–type | Define o tipo de dispositivo que será adicionado. | hdd |
–medium | Caminho do arquivo de disco virtual a ser anexado. | ~/winxp-20gb.vdi |
VBoxManage storageattach "XP Desktop" --storagectl "IDE Controller" --port 0 --device 1 --type dvddrive --medium ~/xp.iso
VBoxManage sharedfolder add "XP Desktop" --name "temp" --hostpath /tmp/
Após instalado o sistema operacional na máquina virtual é possível acessar este compartilhamento SMB. Para acessar, inicie o sistema operacional Windows XP convidado recém-instalado e vá para o endereço \VBOXSVR no Windows Explorer.
VBoxHeadless -s "XP Desktop" &
Enquanto a máquina virtual estiver executando, é possível acessar a sua console usando qualquer cliente Microsoft Terminal Services (RDP) apontando para o endereço de IP do sistema anfitrião.
Comentário enviado por mauriciocorvello em 18/04/2012 – 14:51h:
Ok… grato… segui os passos do tuto mas, ao startar a máquina o seguinte mensagem erro ocorre:
Failed to open/create the internal network ‘HostInterfaceNetworking-eth0’ (VERR_INTNET_FLT_IF_NOT_FOUND).
Failed to attach the network LUN (VER_INTNET_FLT_IF_NOT_FOUND)
Segui alguns tutos do virtualbox mesmo… mas nada, o erro ainda insiste.
Possui um adaptador em modo bridged, eth0.
Se alguém puder me auxiliar… desde já agradeço!
CurtirCurtir
Olá Mauricio, legal vê-lo por aqui.
Respondi teu questionamento no Viva o Linux – pelo jeito, não deu certo ou você não viu a resposta ainda – 🙂
Mas como falei lá no VOL, sugiro experimentar rodar o VBoxManage na linha de comando, com a “modifyvm” para reconfigurar a interface da máquina virtual, exemplo:
VBoxManage modifyvm “WinXP” –nic1 bridged and –bridgeadapter eth0
Se não conseguir da um toque novamente.
Valeu.
CurtirCurtir
hduadhauadhdua… vi sim e não deu certo mesmo!!
resolvi repostar mas, aqui… até funcionou… reconfigurei novamente, depois de postar, a interface como nat… e deu certo até então… grato pelas dicas e pelo tudo… qualquer problema, entro em contato novamente 😛
CurtirCurtir
Valeu, até a próxima.
CurtirCurtir
amigo e o seguinte vi seu post la na VOL e seguir seus passos logo de cara aparece esses erros.. vi aqui no seu site e no primeiro comando dessa pagina ja deu outro erro veja ae o pq disso
Tue Nov 13 21:12:50
bugtraq@linux bash::~ $ su
Password:
Tue Nov 13 21:12:56
root@linux bash::/home/bugtraq # VBoxManage createvm –name WinXP –ostype WindowsXP –register –basefolder /media/vm/maquinas/
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (3.4.0-030400-generic) or it failed to
load. Please recompile the kernel module and install it by
sudo /etc/init.d/vboxdrv setup
You will not be able to start VMs until this problem is fixed.
Virtual machine ‘WinXP’ is created and registered.
UUID: f8be8b3a-91a3-460b-b6ba-ef791302d4bc
Settings file: ‘/media/vm/maquinas/WinXP/WinXP.vbox’
Tue Nov 13 21:13:01
root@linux bash::/home/bugtraq # sudo /etc/init.d/vboxdrv setup
sudo: /etc/init.d/vboxdrv: command not found
Tue Nov 13 21:13:47
root@linux bash::/home/bugtraq # VBoxManage createvm –name “XP Desktop” –ostype WindowsXP –register
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (3.4.0-030400-generic) or it failed to
load. Please recompile the kernel module and install it by
sudo /etc/init.d/vboxdrv setup
You will not be able to start VMs until this problem is fixed.
Virtual machine ‘XP Desktop’ is created and registered.
UUID: 64ac5f3c-57b2-43be-8907-464ec28e32a9
Settings file: ‘/root/VirtualBox VMs/XP Desktop/XP Desktop.vbox’
Tue Nov 13 21:29:16
root@linux bash::/home/bugtraq #
CurtirCurtir
amigo segui suas dicas no VOL e nao tive sucesso muito menos aqui segue abaixo os erros que aparecem no meu terminal
Tue Nov 13 21:12:50
bugtraq@linux bash::~ $ su
Password:
Tue Nov 13 21:12:56
root@linux bash::/home/bugtraq # VBoxManage createvm –name WinXP –ostype WindowsXP –register –basefolder /media/vm/maquinas/
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (3.4.0-030400-generic) or it failed to
load. Please recompile the kernel module and install it by
sudo /etc/init.d/vboxdrv setup
You will not be able to start VMs until this problem is fixed.
Virtual machine ‘WinXP’ is created and registered.
UUID: f8be8b3a-91a3-460b-b6ba-ef791302d4bc
Settings file: ‘/media/vm/maquinas/WinXP/WinXP.vbox’
Tue Nov 13 21:13:01
root@linux bash::/home/bugtraq # sudo /etc/init.d/vboxdrv setup
sudo: /etc/init.d/vboxdrv: command not found
Tue Nov 13 21:13:47
root@linux bash::/home/bugtraq # VBoxManage createvm –name “XP Desktop” –ostype WindowsXP –register
WARNING: The vboxdrv kernel module is not loaded. Either there is no module
available for the current kernel (3.4.0-030400-generic) or it failed to
load. Please recompile the kernel module and install it by
sudo /etc/init.d/vboxdrv setup
You will not be able to start VMs until this problem is fixed.
Virtual machine ‘XP Desktop’ is created and registered.
UUID: 64ac5f3c-57b2-43be-8907-464ec28e32a9
Settings file: ‘/root/VirtualBox VMs/XP Desktop/XP Desktop.vbox’
Tue Nov 13 21:29:16
root@linux bash::/home/bugtraq #
CurtirCurtir
Paulo,
Acredito que você já tenha resolvido o problema, mas vou responder aqui para ficar o registro:
Aparentemente está faltando compilar o modulo do kernel para o VBox, siga as instruções deste meu outro post abaixo, que deve resolver seu problema:
http://www.gabrielfernandes.org/2011/07/18/erro-ao-executar-etcinit-dvboxdrv-setup-no-oracle-virtualbox/
OFF Topic: Desculpe na demora pelo retorno, meus comentários estavam indo para o spam automaticamente!
CurtirCurtir
fala gabriel..
Seguinte, minha vm inicia, mais nao da boot, coloquei uma iso pra dar boot na pasta root mais quando a vm inicia ela nao mostra nada, nao fais nada, só mostra isso:
Oracle VM VirtualBox Headless Interface 4.2.16_Ubuntu
(C) 2008-2013 Oracle Corporation
All rights reserved.
14/04/2014 14:26:36 Listening for VNC connections on TCP port 3389
14/04/2014 14:26:36 Listening for VNC connections on TCP6 port 5900
VRDE server is listening on port 3389.
e mais nada….
que cagada eu to fazendo gabriel…
CurtirCurtir
Laurence,
A principio está tudo certo, o que acontece se você tentar acessar a máquina usando um remote desktop client (rdesktop e afins)? Consegue conectar?
Pois aparentemente tua máquina está subindo normalmente.
Valeu!
CurtirCurtir
então Gabriel, como eu posso descobrir o ip dessa vm para acessar com o rdesktop?
queria salientar algumas imformações: a maquina host roda ubuntu server e a virtual tambem deveria dar boot num UbuntuServer.iso
CurtirCurtir
O IP é o mesmo da máquina anfitriã, pois o RDP sobe no servidor da máquina virtual, não na maquina virtual em si, funciona como se você estivesse na console da máquina, numa máquina real equivale ao monitor físico dela, ou seja, você vê inclusive as mensagens de boot e afins, como num monitor de uma máquina real, assim não importa o IP da VM.
Valeu!
CurtirCurtir
tentei pelo rdesktop mais ele aponta um erro ao abrir o display, mais precisamente: ERROR: Failed to open Display .se for o que eu to pensando nao tem jeito mesmo, porque na maquina anfitria roda ubuntu server, ou seja, não tem interface grafica, é só comando, mais não sei se entendi certo, mais é o unico erro que ta aparecendo..
CurtirCurtir
Não há problema quanto ao anfitrião não ter ambiente gráfico, eu mesmo tenho várias instalações assim, pois o que você vai ver pelo terminal server é o equivalente ao monitor da máquina virtual, como um monitor de verdade, você vai poder acompanhar as mensagens de boot e tals, antes mesmo de entrar em qualquer ambiente gráfico.
Veja se o firewall no teu Ubuntu Server não está bloqueando as conexões pelo 3389.
Valeu!
CurtirCurtir
nada.. Até desabilitei o fw mais nada, ele ainda fica vadiando quando inicio a vm e ainda mostra a mensagem de erro quando uso rdesktop, macabro isso.. Tava pensando em partir pro kvm, voce ja tento instalar alguma maquina virtual com o kvm?
CurtirCurtir
Que estranho bicho, tem que funcionar.
Verifique no log Vbox.log se não há alguma mensagem de erro, algo como: “VRDE: VirtualBox Remote Desktop Extension is not available.”. O arquivo de log fica na pasta Logs na raiz da pasta onde está o arquivo vbox referente a máquina.
Outras duas tentativas são:
– Reinstalar o Extension Pack, sem ele, não funciona o VRDE, eu tenho um post que mostra como fazer, só clicar aqui e tentar.
– Forçar subir com VRDE ligado, algo como: “VBoxHeadless –startvm “nome_da_maquina” –vrde on”
* Com o KVM ainda não tive a oportunidade de trabalhar.
Valeu
CurtirCurtir
vou tentar essas paradas ai, mesmo que não funcione valew pelo tuto gabriel, eu nun tinha noção de como criar maquina virtual por linha de comando, tem pouca gente que sabe e muito pouca gente disposta a ensinar.. Valew Gabriel.
CurtirCurtir
Valeu e volte sempre!
CurtirCurtir
Ola Gabriel, primeiramente gostaria de parabeniza-lo pelo belo tutorial, e dizer que acompanhei varios tutoriais pela internet e nao obtive exito, gracas ao seu agora tenho minha VM no linux via linha de comando. Obrigado pela ajuda.
CurtirCurtir
Ola Celso, é muito bom ler comentários como o seu.
Obrigado.
CurtirCurtir