quarta-feira, 7 de outubro de 2015

Linux, Já precisou acessar um disco virtual fora da VM

Recentemente precisei acessar o disco virtual de

uma vm para fazer a cópia de alguns arquivos.
Eu queria trazer uns arquivos que estavam no disco

da vm para o disco da minha máquina.

Encontrei uma solução interessante e estou

compartilhando aqui.

A vm em questão era um windows xp e estava

instalada no virtualbox, que por sua vez rodava no

ubuntu 12.10.

Para acessar o hd vamos precisar do programa

chamado qemu-nbd que está no pacote qemu-utils.

sudo apt-get install qemu-utils
IMPORTANTE:
Só execute os passos a seguir se o disco não

estiver sendo usado. Tenha a certiza de que a vm

está fora.

Para acessar o disco virtual vamos executar os

seguintes passos:
1: Carregar o modulo do sistema chamado nbd.
sudo modprobe nbd

2: Associar o disco virtual com um device chamado

/dev/nbdX ond X é um numero que vai de 0 (zero) até

não sei quanto.
sudo qemu-nbd -c /dev/nbd0 imagem
onde imagem é o nome do arquivo que contem o seu

disco virtual.
Usei o /dev/nbd0 mas poderia usar outros numeros,

principalmente se eu quisisse ter acesso a mais de

um disco.

Se o disco tiver mais de uma partição, teremos os

seguintes devices:
/dev/nbd0p1, /dev/nbd0p2, /dev/nbd0p3 e assim por

diante.
Voce pode rodar o fdisk ou outro particionador para

ver as partições do disco. Não testei, mas creio

que posso reparticionar o disco também.

sudo fdisk /dev/nbd0

3: Finalmente vamos acessar a partição desejada:
sudo mount /dev/nbd0p1 dir
ond dir é o ponto de montagem.

A partir desse momento, voce pode fazer a lambança

que voce quiser na sua partição!!
Mas o qemu tem uma opçãopara deixar o disco só com

opção de leitura.

Para finalizar, quando voce não precisar da

partição e do disco, faça o seguinte:
sudo umount dir
sudo qemu-nbd -d /dev/nbd0

Crédito ao S José Vilmar Estácio de Souza

Nenhum comentário:

Postar um comentário