Isso é confuso, mas factível.
Presumo que /
esteja em /dev/sda3
e que /boot
esteja em /dev/sda1
.
-
Reduza o sistema de arquivos no servidor antigo ao tamanho mínimo possível.
oldserver # resize2fs -M /dev/sda3
-
Particione o novo disco do servidor com uma partição
/boot
, swapspace e nova/
de tamanho idêntico (e qualquer outra coisa que você precise).newserver # parted /dev/sda
-
Copie os sistemas de arquivos
/
e/boot
.oldserver # dd if=/dev/sda1 | ssh root@newserver "dd of=/dev/sda1" oldserver # dd if=/dev/sda3 | ssh root@newserver "dd of=/dev/sda3"
Como a partição no novo servidor será um pouco menor que a do servidor antigo, você receberá uma mensagem
No space left on device
espúria no final disso. No entanto, desde que você encolheu o sistema de arquivos na etapa 1, isso não importa. -
Redimensione o sistema de arquivos no novo servidor para o tamanho da partição.
newserver # resize2fs /dev/sda3
-
Instale o GRUB no novo disco.
newserver # mount /dev/sda3 /mnt newserver # mount /dev/sda1 /mnt/boot newserver # mount -o bind /dev /mnt/dev newserver # mount -o proc proc /mnt/proc newserver # chroot /mnt /bin/bash newserver(chroot) # grub-install /dev/sda newserver(chroot) # exit
-
Conclua o resto de seus ajustes (endereço IP, etc.).
Provavelmente você pode encontrar uma maneira de evitar a cópia do espaço livre da partição, mas provavelmente levará mais tempo para você pesquisar do que simplesmente copiar tudo ...