Copie um vdi de tamanho maior que 4GB

0

Eu tenho apenas 4.6GB de imagem VDI. Eu tenho que copiá-lo em um sistema de arquivos FAT32. Não consigo usar o formato VMDK e apenas imagens VDI.

Como posso dividir o VDI em pedaços menores de VDI para que eu possa copiá-lo em um USB.

    
por user907810 04.09.2013 / 14:53

1 resposta

3

Você só precisa dividi-lo em blocos pequenos o suficiente para caber em um sistema de arquivos FAT32 para que você possa transportá-lo ou copiá-lo? Se for esse o caso, você pode:

  • Use split para dividir um arquivo em partes.
  • Ou use dd para fazer o mesmo.
  • Ou arquive-o (por exemplo, RARs com várias partes ou arquivos ZIP com várias partes).

Se você precisar que a VM seja realmente executada a partir do pen drive:

  • Altere o sistema de arquivos. O FAT32 é limitado a arquivos de 4GiB ou menores, simplesmente porque esse é um limite desse sistema de arquivos.
  • Ou mude para um formato de arquivo que possa ser dividido. (Por que os VMDKs não são uma opção?).
  • Ou faça tudo feio com um sistema de arquivos em loop-back, colocando vários arquivos de 4GiB no pendrive formatado em FAT32 em uma única partição grande o suficiente para manipular e use um sistema de arquivos diferente.

Edite 25-5-2014: Adicionando mais informações sobre a terceira opção.

Criando os arquivos ≤4GiB usando o dd:

dd if=/dev/null of=/mnt/myPenDrive/RAID_part_1.diskimage bs=1M count=3072
dd if=/dev/null of=/mnt/myPenDrive/RAID_part_2.diskimage bs=1M count=3072

Explicação:

  • Leia os fragmentos de 1 M em / dev / null, que fornecem uma fonte infinita de zero.
  • Faça isso 3072 vezes.
  • Escreva os 3TiB de zeros resultantes em um arquivo chamado RAID_part_1.diskimage

Observe que o arquivo pode ter quase qualquer tamanho, mas como estamos gravando em um sistema de arquivos FAt32, eles precisam ser menores que 4GiB. Portanto, não aumente a contagem para mais de 4095.


Em seguida, dizemos ao sistema operacional que queremos ver esses arquivos como um dispositivo de bloco.

losetup /dev/loop0 /mnt/myPenDrive/RAID_part_1.diskimage
losetup /dev/loop1 /mnt/myPenDrive/RAID_part_2.diskimage

Agora podemos acessar esses arquivos como um disco normal. Por exemplo. execute o fdisk em seguida, formate-os da maneira que quisermos e monte os volumes formatados.

Mais uma vez: Podemos formatar este dispositivo de loopback em outro formato que o FAT32. Portanto, os limites do FAT32 não se aplicam mais. Como o 'disco' falho é menor que 4GiB, o disco ainda ficará cheio se tentarmos criar um arquivo 6GiB. Então, vamos expandir o disco.

Podemos fazer isso concatenando vários dispositivos. Pense nisso como um caderno de papel onde você pode colar dois notebook juntos. A última página do primeiro caderno para a primeira página do segundo caderno. Agora você transformou dois notebooks menores (disco) em um notebook grande.

Uma descrição muito mais detalhada e detalhada disso pode ser encontrada aqui no nosso site irmão .

Para o Linux, você provavelmente vai querer usar o mdadm .

Primeiro, certifique-se de ter o mdadm disponível (por exemplo, tente executá-lo, se não for encontrado, tente o comando relevante de sua distribuição para instalá-lo. ex apt-get install mdadm para Ubuntu, ou yum install mdadm para RedHat ou emerge mdadm para Gentoo).

mdadm --create /dev/md0 --level=linear --raid-devices=2 /dev/loop0 /dev/loop1 

Agora você deve ter um novo dispositivo de bloco 6GiB chamado / dev / md0. Formate e monte como desejar.

    
por 04.09.2013 / 15:19

Tags