Redimensionar partição e sistema de arquivos na imagem do disco

1

Eu tenho uma imagem de disco RAW que tem duas partições, com um sistema de arquivos ext2 e ext3, respectivamente. Eu quero adicionar um gigabyte ao tamanho da última partição e redimensionar seu sistema de arquivos. Como posso fazer isso?

    
por Duncan X Simpson 27.04.2017 / 23:52

1 resposta

1
Primeiramente, há risco nesse processo, e as coisas podem ser um pouco diferentes dependendo de algumas suposições que eu fiz e que poderiam estar erradas. BACKUP seus dados antes de tentar isso.

Observação a seguir: as etapas 3 a 6 podem ser evitáveis se você usar algo como gparted para automatizar essas etapas usando uma GUI.

Após o backup, as etapas são:

  1. Verifique se a imagem está desmontada e não está em uso.

  2. Expanda o tamanho da imagem do disco virtual. Eu geralmente uso qemu-redimensionar para fazer isso. Você pode provavelmente apenas dd -bs = X count = y > > iso.img para expandir a imagem. A flecha dupla é muito importante, uma flecha única irá nuke sua imagem existente.

  3. Dependendo de suas ferramentas, você pode ou não precisar criar um dispositivo de loopback para converter a imagem não processada em um disco virtual. Para fazer isso você pode usar losetup / dev / loop0 / caminho / para / block - Isto irá criar / dev / loop0, que você pode usar em vez de se referir ao arquivo subjacente.

  4. Use seu gerenciador de partições para redimensionar o disco. Eu normalmente uso o fdisk. O primeiro passo aqui é despejar as informações das partições. a segunda etapa é excluir a última partição e recriá-la usando o bloco inicial idêntico, garantindo que o atributo de tipo de sistema de arquivos esteja correto e que o sinalizador de inicialização esteja definido corretamente (provavelmente desativado). Você pode então gravar isso no disco.

  5. Digite kpartx / dev / loop0 - isso criará / dev / mapper / loop0pX para que você possa acessar as partições diretamente.

  6. use resize2fs / dev / mapper / loop0pX para redimensioná-lo. Observe que esse comando pode ser chamado de outra coisa. resize4fs é uma alternativa comum.

  7. Use o dmsetup para remover / dev / mapper / loop0pX, se necessário

  8. Use losetup -D / dev / loop0 para remover o dispositivo de bloco.

por 28.04.2017 / 00:29