Como configurar a imagem da nuvem no VirtualBox?

4

Eu gostaria de transformar a imagem de disco de uma imagem da nuvem (antiga imagem UEC) em um VirtualBox inicializável (para o Vagrant). Eu posso rodar a imagem em kvm (usando link como uma iniciação), mas como eu posso transformar o disco .img arquivo em um disco de inicialização do VirtualBox? Eu prefiro não usar o disquete como boot.

    
por Magne Rasmussen 23.09.2011 / 15:08

2 respostas

1

A solução é, de fato, tornar a própria imagem inicializável. Após dias pesquisando as interwebs, descobri que a solução é usar o pacote extlinux , que é um derivativo de syslinux - uma solução para tornar os discos FAT inicializáveis. O extlinux funciona em e2fs e derivativos, isso funciona perfeitamente em qualquer sistema ext2 antigo.

mkdir /mnt/image
mount -o loop cloud-image.img /mnt/image
mkdir /mnt/image/extlinux/
extlinux --install /mnt/image/extlinux/
echo "DEFAULT /vmlinuz" > /mnt/image/extlinux/extlinux.conf
echo "APPEND root=/dev/sda init=/usr/lib/cloud-init/uncloud-init" \
     "ubuntu-pass=ubuntu ds=nocloud" >> /mnt/image/extlinux/extlinux.conf
umount /mnt/image

Isso tornará a imagem inicializável e desativarão a inicialização da nuvem integrada técnicas e assim por diante.

Notas: Eu não trabalhei como especificar um APPEND que permite usar o "root = LABEL = cloudimage-rootfs".

A imagem resultante pode então ser inicializada usando qemu, kvm ou vmware, sem disquetes adicionais, kernels ou qualquer coisa. E pelo que entendi, o apt-get atualizando o kernel irá fazer com que aquele kernel active a próxima inicialização.

edite : esqueci de mencionar o óbvio que você precisa executar essa montagem de loopback na imagem de disco bruta e, em seguida, converter o arquivo resultante em uma VDI usando vboxmanage convertfromraw cloud-image.img cloud-image.vdi

    
por mogsie 24.06.2012 / 16:18
1

Talvez isso seja útil? link

    
por kim0 24.09.2011 / 02:29