Como montar imagem VDI (VirtualBox) no Linux
Usei neste artigo o Slackware 13.1-x86_64 kernel 3.2.0 Multilib. Creio que deve funcionar normalmente para qualquer distribuição com os pacotes necessários instalados.
Curiosidade
Trabalhando com meu Linux, me deparei com o seguinte problema: ter que ligar minha máquina virtual para copiar pelo Samba/NFS
os arquivos que estavam nos sistemas Linux e Windows virtualizados.
Como eram arquivos que precisavam de acesso rápido, ou fazer alguma modificação com o sistema desligado “= Runlevel 0 = halt” (pois faço Beta testes em máquinas virtuais para evitar problemas nos servidores reais).
Com isto, me veio a ideia: será que tem como montar imagens do VirtualBox (.vdi) no Linux?
Eis a resposta para quem usa Linux: Sim, tem como.
Com muitas pesquisas e testes, chegamos a conclusão que funciona.
Vamos para o que interessa.
Crie uma pasta "nbd":
mkdir nbd
Entre na pasta:
$ cd nbd
Faça download dos pacotes
- QEMU:
wget http://connie.slackware.com/~alien/slackbuilds/qemu-kvm/pkg64/13.1/qemu-kvm-0.14.0-x86_64-1alien.tgz
- VDE:
wget http://connie.slackware.com/~alien/slackbuilds/vde/pkg64/13.1/vde-2.3.1-x86_64-1alien.tgz
- NBD:
No caso do NBD, tive que compilar para a arquitetura do meu processador, pois não encontrei o '-x86_64', só 'i486'.
Baixando os arquivos necessários para compilar o NBD:
wget http://connie.slackware.com/~alien/slackbuilds/nbd/build/nbd-2.9.2.tar.gz
Instalando os "tgz":
# installpkg *.tgz
Descompactando e compilando o NBD:
tar -zxvf nbd-2.9.2.tar.gz
Entrar no pacote pra compilar:
cd nbd-2.9.2
Compilando para '-x86_64':
./configure LDFLAGS="-L/usr/lib64" --libdir=/usr/lib64
Depois:
make
Se depois do comando 'make', você encontrar um resultado parecido com este abaixo:
Edite o arquivo "nbd-client.c":
mcedit nbd-client.c
Ou:
vi nbd-client.c
Remova a linha:
Depois rode o 'make' novamente:
make
Se tudo correr bem, rode o 'make instal'l:
sudo make install
Como eram arquivos que precisavam de acesso rápido, ou fazer alguma modificação com o sistema desligado “= Runlevel 0 = halt” (pois faço Beta testes em máquinas virtuais para evitar problemas nos servidores reais).
Com isto, me veio a ideia: será que tem como montar imagens do VirtualBox (.vdi) no Linux?
Eis a resposta para quem usa Linux: Sim, tem como.
Com muitas pesquisas e testes, chegamos a conclusão que funciona.
Vamos para o que interessa.
Download e Compilação
- Baixar os arquivos necessários para realizar o procedimentoCrie uma pasta "nbd":
mkdir nbd
Entre na pasta:
$ cd nbd
Faça download dos pacotes
- QEMU:
wget http://connie.slackware.com/~alien/slackbuilds/qemu-kvm/pkg64/13.1/qemu-kvm-0.14.0-x86_64-1alien.tgz
- VDE:
wget http://connie.slackware.com/~alien/slackbuilds/vde/pkg64/13.1/vde-2.3.1-x86_64-1alien.tgz
- NBD:
No caso do NBD, tive que compilar para a arquitetura do meu processador, pois não encontrei o '-x86_64', só 'i486'.
Baixando os arquivos necessários para compilar o NBD:
wget http://connie.slackware.com/~alien/slackbuilds/nbd/build/nbd-2.9.2.tar.gz
Instalando os "tgz":
# installpkg *.tgz
Descompactando e compilando o NBD:
tar -zxvf nbd-2.9.2.tar.gz
Entrar no pacote pra compilar:
cd nbd-2.9.2
Compilando para '-x86_64':
./configure LDFLAGS="-L/usr/lib64" --libdir=/usr/lib64
Depois:
make
Se depois do comando 'make', você encontrar um resultado parecido com este abaixo:
make all-am
make[1]: Entering directory `/root/Downloads/nbd/nbd-2.9.2'
if gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT nbd-client.o -MD -MP -MF ".deps/nbd-client.Tpo" -c -o nbd-client.o nbd-client.c; \
then mv -f ".deps/nbd-client.Tpo" ".deps/nbd-client.Po"; else rm -f ".deps/nbd-client.Tpo"; exit 1; fi nbd-client.c:19:22: error: asm/page.h: No such file or directory
make[1]: *** [nbd-client.o] Error 1
make[1]: Leaving directory `/root/Downloads/nbd/nbd-2.9.2'
make: *** [all] Error 2
Edite o arquivo "nbd-client.c":
mcedit nbd-client.c
Ou:
vi nbd-client.c
Remova a linha:
# include asm/page.h
Depois rode o 'make' novamente:
make
Se tudo correr bem, rode o 'make instal'l:
sudo make install