Qual é a melhor maneira de clonar uma partição do Linux em uma partição menor?

2

Eu tenho atualmente um RAID 0 de 80 GB (sim, eu sei, é por isso que alterando-o ...) ext3 Dispositivo Linux com cerca de 80% de liberdade, e eu quero mudar para 40 GB < uma partição href="http://en.wikipedia.org/wiki/Ext4"> ext4 usando uma das partições RAID 0 anteriores. Eu tenho espaço livre suficiente em outra partição grande para todos os arquivos, e o melhor método que eu pensei em fazer a troca é:

  1. cp -a todos os arquivos no sistema de arquivos para um diretório sob uma partição grande
  2. Repartição
  3. cp -a todos os arquivos de volta para uma nova partição

O problema é que estou preocupado com as propriedades especiais do arquivo (é um dispositivo raiz do Linux); cp -a manterá todas as propriedades de arquivo necessárias para que a nova partição seja inicializável posteriormente? Estou sentindo falta de outra maneira de fazer isso?

    
por thecoop 23.10.2009 / 11:33

2 respostas

6

Eu gostaria de:

  1. redimensione o sistema de arquivos local com algo como resize2fs -p /dev/<device_name_fs_is_on> 20G
    Sem dúvida, ele se recusará a ser executado pela primeira vez, sugerindo que você execute fsck primeiro. Você pode forçá-lo a executar, mas a operação fsck é altamente recomendável ao tentar redimensionar um sistema de arquivos com erros (mesmo os menores) pode levar a um desastre. Execute novamente o comando de redimensionamento quando a verificação estiver concluída
  2. copie-o para a outra unidade com dd if=/dev/<device_name_fs_is_on> of=/path/to/other/location/filesystem.img bs=1048576 count=20480
  3. reformate os discos conforme necessário
  4. copie o sistema de arquivos de volta com dd if=/path/to/other/location/filesystem.img of=/dev/<new_device_name>
  5. redimensione para preencher a nova partição com resize2fs -p /dev/<new_device_name>
  6. monte o sistema de arquivos recém redimensionado e edite qualquer configuração relevante que ele contenha, como / etc / fstab
  7. você também precisará verificar sua configuração do grub para certificar-se de que ela se refere ao novo nome da partição raiz e talvez seja necessário reconstruir seu initrd (embora provavelmente não como RAID para normal e não o contrário que causa problemas se o initrd não tiver reconhecimento de RAID)
  8. cruze os dedos e reinicie ...

Como este é o seu sistema de arquivos raiz, você precisará fazer isso a partir de um live CD, pois você não poderá redimensionar o sistema de arquivos (passo 2) enquanto ele estiver montado.

Se você alterar o 20G passado para resize2fs no passo 1, certifique-se de alterar o 1048576x20480 passado para dd no passo 2 de acordo.

Obviamente, esta não é uma operação livre de risco, portanto, você pode querer fazer o backup separadamente de dados importantes + configuração no sistema de arquivos por outros meios antes da etapa 3.
Para uma segurança ainda maior: se você tiver tempo e um disco de sobra, restaure o sistema de arquivos reduzido para o disco extra, reconfigure adequadamente conforme as etapas 6 & 7, e certifique-se de que você pode inicializar antes de avançar para a etapa 3. Desta forma, você sabe que tem uma cópia totalmente funcional do sistema de arquivos em outro lugar antes de limpá-la do local antigo e pode facilmente reverter para a configuração anterior e abortar / tente novamente se descobrir problemas nessa fase.

Dessa forma, você não perderá qualquer arquivo / diretório / propriedades do dispositivo enquanto copia coisas enquanto opera no atacado do sistema de arquivos, em vez de arquivos individuais, dirs e nós de dispositivos.

    
por 23.10.2009 / 12:21
1

Eu nunca usei, mas há um programa de criação de imagens de partições, chamado partimage , que está disponível no CD de Recuperação do Sistema .

Não tenho certeza do que acontecerá se você usar partimage, mas se você usar cp (tenha cuidado para não tentar copiar o diretório para o qual você está copiando, você precisará de cp -ax ) você terá para reinstalar o Grub, pois ele codifica os locais físicos do disco rígido que serão alterados durante a cópia.

    
por 23.10.2009 / 12:06