Eu tinha um Ubuntu 14.04 rodando em um disco de 1024 GB (disco A), que usava apenas até 130 GB de espaço. Eu quero cloná-lo em um disco SSD de 256 GB (disco B). Mas falhou.
Eu usei gparted
para encolher as partições no disco A para serem apenas cerca de 180 GB para a preparação para o disco B com êxito.
Você pode me dizer onde eu estava errado?
1) restaurar a tabela de partições
Eu fiz backup da tabela de partições do disco A.
└──╼ $ sudo sfdisk -d /dev/sda
# partition table of /dev/sda
unit: sectors
/dev/sda1 : start= 2048, size= 997376, Id=83, bootable
/dev/sda2 : start= 999424, size= 15624192, Id=82
/dev/sda3 : start= 16623616, size=337020928, Id=83
/dev/sda4 : start= 0, size= 0, Id= 0
Dicas
/dev/sda1
para /boot
, /dev/sda2
para swap
, /dev/sda3
para /
.
Salvar tabela de partições
sudo sfdisk -d /dev/sda > partition.table
Depois tentei restaurar a tabela de partições no disco B ( /dev/sdc
neste cenário).
Substitui sda
por sdc
no arquivo partition.table
. Então parece:
# partition table of /dev/sdc
unit: sectors
/dev/sdc1 : start= 2048, size= 997376, Id=83, bootable
/dev/sdc2 : start= 999424, size= 15624192, Id=82
/dev/sdc3 : start= 16623616, size=337020928, Id=83
/dev/sdc4 : start= 0, size= 0, Id= 0
Em seguida, faça a restauração com sucesso.
sudo sfdisk /dev/sdc < partition.table
2) migrando conteúdo da partição de disco
sudo dd if=/dev/sda1 of=/dev/sdc1
sudo dd if=/dev/sda2 of=/dev/sdc2
sudo dd if=/dev/sda3 of=/dev/sdc3
Após a migração, essas partições em / dev / sdc podem ser montadas e visualizadas.
Falha
Mas se eu conectei o disco SSD (disco B) ao meu laptop, ele não inicializaria depois de alguma saída do BIOS do Thinkpad. Nenhum erro saiu, mas um cursor piscando ...
Aposto que o BIOS ainda não detectou o /boot
no disco B ao fazer o boot.
Você pode me ajudar? Muito obrigado!
atualizar
Alguém me sugeriu usar grub-install /dev/sdc
para fazer o truque.
Eu pesquisei o que grub-install
é capaz - link Deixe-me tentar. E tenho certeza que o disco A (tinha o MBR instalado).
Atualizar
Depois de fazer dd if=/dev/sda of=/dev/sdc bs=512 count=1
, insira somente o disco B, ainda é o mesmo cursor piscante. Nada realmente depois da BIOS.
Depois de fazer grub-install --boot-directory=/mnt/mypartition/boot /dev/sdc
eu fui para inicializá-lo, apenas disco B.
Mas o console do grub saiu. E relatou
Atualizar
Agoraestáfuncionando!!!
Vejacomoeufizisso,noPCexecutandoodiscoAcomosistemaoperacionaleodiscoB(/dev/sdc
)comoumdiscorígidoUSB.
sudomount/dev/sdc3/mntsudomount/dev/sdc1/mnt/bootsudogrub-install--boot-directory=/mnt/boot/dev/sdc3
Emseguida,fuiparao/mnt/boot/grub/grub.cfg
,eusubstituíduascoisasnoarquivogrub.cfg
.(lembre-sededarpermissãodegravaçãoparaoarquivogrub.cfg
)
substituahd1
porhd0
substitua/dev/sdc3
por/dev/sda3
Emseguida,salveoarquivo.->Desligueocomputador->InsiraodiscoBviaSATAeretireodiscoAparasempre.->Boot->Vejaogrub,masaindainicialize
SevocêencontrouoerroError:invalidenvironmentblock.Pressanykeytocontinue
,verifiqueissopararesolvê-lo.Pressionequalquerteclainicializaráseusistema. link
sudo -i
Em seguida, execute cada comando, um por um.
cd /boot/grub
rm grubenv
grub-editenv grubenv create
grub-editenv grubenv set default=0
grub-editenv grubenv list
update-grub
Agora vá reiniciar, vai funcionar!
Foi assim que eu reduzi meu disco rígido de 1024 GB e migrei todo o sistema para um novo disco SSD de 256 GB.