O espaço usado e não utilizado em um arquivo img não aumenta a capacidade total

0

Eu tinha um arquivo de imagem de tamanho 2,3gb que estava quase cheio (apenas cerca de 70mb de espaço não utilizado).

Então, para expandi-lo, usei o comando

dd if=/dev/zero bs=1M count=1700MB >> ./image.img

Em seguida, redimensionou a partição usando parted

No entanto, quando eu monto esta nova imagem, estou recebendo o mesmo espaço não utilizado (ou seja, 70mb) e não 1,7gb.

O GParted mostra o espaço estendido desabilitado e não sei por quê. Captura de tela: link

    
por Asif Nassar 24.07.2017 / 14:00

2 respostas

1

Você pode usar truncate para estender o arquivo de imagem.

por exemplo,

truncate -c -s 4G image.img

ou

truncate -c -s +1700M image.img

veja man truncate para mais detalhes. O detalhe chave da página do manual é:

If a FILE is larger than the specified size, the extra data is lost. If a FILE is shorter, it is extended and the extended part (hole) reads as zero bytes.

Você deve poder editar a tabela de partição para estender a partição para incluir o novo espaço - você pode usar parted , fdisk , gdisk , sfdisk , sgdisk ou outras ferramentas semelhantes para isso.

Uma vez feito isso, você precisa aumentar o sistema de arquivos para que ele faça uso do espaço recém-disponível. De acordo com a imagem .png que você vinculou, você está usando o ext4 para o sistema de arquivos, então você precisa usar resize2fs após editar a tabela de partição.

Você pode usar a gparted GUI para estender a partição e aumentar o sistema de arquivos.

OBSERVAÇÃO: você deve sempre fazer uma cópia de backup do seu arquivo image.img antes de fazer algo parecido com isto. Se algo der errado, você sempre poderá reverter para o último arquivo de imagem em boas condições.

    
por 25.07.2017 / 06:44
0

Não tenho certeza se o operador de acréscimo '> >' funcionará corretamente com dd ou não. Eu recomendaria fazer um arquivo image2.img com o tamanho desejado e, em seguida, dd-ing seu arquivo image.img sobre o topo de image2.img, em seguida, dd-ing-lo em qualquer partição que você deseja. Em vez de usar arquivos de imagem, você poderia fazer isso diretamente em partições, mas tenha cuidado.

'dd if = / dev / zero de = image2.img count = 4000MB bs = 1M' depois 'dd se = image.img de = image2.img bs = 1M'

Espero que isso ajude!

    
por 24.07.2017 / 16:10

Tags