Assumindo que sua partição Linux esteja diretamente na frente da partição do Windows XP, você pode apenas redimensioná-la para abranger ambas as partições e, em seguida, executar resize2fs nela para que ela alcance o tamanho maior da partição. É difícil dizer se esse é o caso sem ver a saída de fdisk -l /dev/sda
. Os números associados a sda (ou seja, sda1) não implicam necessariamente a ordem física das partições, mas geralmente o fazem.
Provavelmente, parece que a partição do Windows XP é a primeira no disco. Neste caso, é um pouco mais complicado, pois você precisará copiar os dados para a primeira partição. Você desejará formatar a partição de destino com as opções desejadas antes de tentar copiar qualquer coisa. Se ambas as partições forem Ext2 / 3/4, eu recomendaria usar o dump / restore como a melhor opção para garantir que tudo seja copiado corretamente. Você também pode tentar usar o rsync com as opções -aAHX
. Eu recomendo não tentar apenas usar cp. Você deve copiar os dados do modo de usuário único com a partição de origem montada como somente leitura. Alguns bootloaders como o que vem com o Ubuntu chamam de modo de recuperação. O comando mount informará se o sistema de arquivos é somente leitura com um sinalizador ro
na linha do sistema de arquivos. Se não estiver, você pode tentar usar mount -o ro,remount /
para remontar como somente leitura. Assumindo que /dev/sda2
é seu sistema de arquivos de origem montado somente para leitura no caminho /
e /dev/sda1
é a partição de destino, a maneira de usar o dump e a restauração seria a seguinte:
mkfs -t ext3 /dev/sda1
mount /dev/sda1 /mnt
cd /mnt
dump -0af - /dev/sda2 | restore -rf -
Quando terminar, tente alternar para ele com o chroot e reinstalar o GRUB.
mount -t bind /dev /mnt/dev
mount -t bind /proc /mnt/proc
mount -t bind /sys /mnt/sys
chroot /mnt /bin/sh
/usr/sbin/grub-install /dev/sda
Quando o GRUB estiver usando a nova partição, você poderá reinicializar, verificar se está realmente usando a nova partição e, em seguida, remover a partição raiz antiga. Em seguida, basta expandir a nova partição raiz e executar resize2fs em relação a ela:
resize2fs /dev/sda1
Voilà! Você deve ter uma partição raiz usando o espaço completo agora.