Clone o HDD interno para o novo SSD

20

Eu instalei recentemente um SSD na minha máquina. A máquina em si é um thinkpad W520 da Lenovo e anteriormente possuía um disco rígido interno. Mudei o disco rígido interno para um compartimento de expansão (substituindo o CD-ROM) e coloquei o novo SSD no compartimento interno.

O problema que estou enfrentando é que tenho minha configuração do Ubuntu EXATAMENTE do jeito que eu quero - originalmente eu passei muitas horas configurando-a para que ela fique do jeito que está agora. Prefiro não fazer isso de novo. Mas também gostaria dos ganhos de inicialização que obteria com o sistema operacional no SSD.

Então, o que eu gostaria de fazer é clonar minha partição Ubuntu no SSD. O problema é que o HDD padrão é significativamente maior que o SSD. E possui uma partição do Windows que eu não preciso no SSD (nunca uso o Windows, portanto, se ele inicializar no outro disco rígido, tudo bem). O layout dos meus discos rígidos é o seguinte:

/ dev / sda (SSD): Modelo: ATA M4-CT256M4SSD2 (scsi) Disco / dev / sda: 256 GB Tamanho do setor (lógico / físico): 512B / 512B Tabela de partições: msdos

Number  Start   End    Size   Type     File system  Flags
 1      1049kB  147GB  147GB  primary  ext4         boot

/ dev / sdb (HDD): Modelo: ATA ST9500420AS (scsi) Disco / dev / sdb: 500 GB Tamanho do setor (lógico / físico): 512B / 512B Tabela de partição: msdos

Number  Start   End     Size    Type      File system     Flags
 1      1049kB  1259MB  1258MB  primary   ntfs            boot
 2      1259MB  269GB   268GB   primary   ntfs
 4      269GB   483GB   214GB   extended
 5      269GB   416GB   147GB   logical   ext4
 7      416GB   475GB   58.9GB  logical   linux-swap(v1)
 6      475GB   483GB   8470MB  logical
 3      483GB   500GB   16.8GB  primary   ntfs

O que eu tentei até agora:

1) Redimensionando as partições / dev / sdb5 e / dev / sda1 para o mesmo tamanho. 2) Inicializando no Ubuntu 11.04 (a partir de / dev / sdb5) e executando dd if = / dev / sdb5 de = / dev / sda1 (é claro que isso causa problemas na inicialização, por isso tive que reinstalar o grub .. boot, mas tenho problemas com o initrd para não encontrar alguns arquivos ... provavelmente não consigo carregar algumas partições, eu acho).

Agora, acho que essas duas etapas são a abordagem errada, porque clonará / dev / sdb5 EXATAMENTE - incluindo referências no fstab que apontam para o disco rígido errado. Não sei exatamente como corrigir isso. Eu poderia instalar o Ubuntu 11.04 no SSD e, em seguida, tentar copiar todas as minhas configurações, mas estou preocupado que vou perder alguma coisa ou que substituirei algo como o fstab que aponta para o original disco rígido.

Observe que, atualmente, ainda consigo inicializar a partir do HDD, não é imperativo que eu descubra isso imediatamente, mas quero que seja exatamente como está agora, para que eu possa manter meu nível atual de produtividade ( é um laptop de trabalho).

Sugestões de como eu posso superar essa dificuldade?

Desde já, obrigado!

jwir3
fonte

Respostas:

13

Há mais de uma maneira de conseguir colocar seu sistema antigo em uma nova unidade, mas você realmente não pediu dessa maneira, pediu como clonar o sistema.

Eu usaria apenas o gparted no CD ao vivo para que nenhuma partição seja montada. Você pode reduzir a partição original para o tamanho desejado no SSD e copiar e colar a partição na nova unidade. Se bem me lembro, isso reutilizará o mesmo UUID, mas você poderá alterá-lo em uma ou outra partição posteriormente. O comando para isso é sudo tune2fs -U random /dev/sdb5atribuir UUID para sdb5.

Se você não quiser alterar o sistema antigo e mantê-lo montado por um tempo, poderá alterar o UUID da partição SSD e editar o seu fstab. Na verdade, não é nada difícil e é algo que você deve aprender. É bastante auto-explicativo para alguém com o conhecimento que você já parece ter. Depois de atribuir um novo UUID, você poderá vê-los todos com este comando: sudo blkid -c /dev/null- o parâmetro -c especifica o arquivo de cache e / dev / null significa não usar um cache, portanto, você sempre recebe as alterações imediatamente. Eu sempre uso esse formulário e não vejo desvantagens, a menos que você tenha muitas partições.

Depois de obter o UUID, você pode copiá-lo e colá-lo sobre o antigo no / etc / fstab usando o gedit ou o editor de texto que preferir.

Pessoalmente, porém, em vez de dedicar tempo para redimensionar a partição primeiro, simplesmente copio a instalação antiga para o novo disco. Se você não sabe como instalar o GRUB no mbr, primeiro instale um Ubuntu base, faça o backup do / etc / fstab, copie a instalação antiga e copie o fstab da nova instalação para possui apenas as entradas corretas.

Marty Fried
fonte
Isso é muito útil, obrigado. Vou tentar e ver se consigo fazê-lo funcionar. Depois, volto e aceito a resposta ou pergunto-lhe mais. ;)
jwir3
1
Eu usei o CD de instalação ao vivo várias vezes, pois ele tem quase tudo o que você precisa. Mas a melhor imagem de resgate real que usei é o CD System Rescue . Este CD inicializável, também disponível como pendrive, corrigiu o GRUB para mim várias vezes depois que algo (ou alguém que permanecerá sem nome) o apagou. Possui gparted, ferramentas grub e tudo o mais que você gostaria de consertar em uma instalação Linux, sem muita sobrecarga. Esse é o tipo de coisa que você estava perguntando?
perfil completo de Marty Fried
1
De nada, e boa sorte.
Marty Fried
1
Isso funcionou bem. Uma coisa sobre a qual eu estava um pouco inseguro era como configurar o grub e, mais especificamente, que existem maneiras muito diferentes de configurar o grub legacy vs. o grub2. Eu usei o seguinte como referência para o grub2, uma vez que o instalei ( apt-get install grub2): dedoimedo.com/computers/grub-2.html Eu estava originalmente seguindo um método de instalação do grub2, quando, de fato, o grub-legacy foi instalado no meu sistema.
jwir3
1
Ah, sim, o adorável grub, e ele foi aprimorado, grub2 (NOVO! MELHORADO! AGORA AINDA MAIS COMPLEXO!). Desculpe, é tudo culpa minha; Eu tinha conseguido entender completamente o velho grub, então é claro que eles mudaram. Então, quando pensei que estava recebendo o grub2, eles fizeram algumas alterações menores, incompatíveis com a versão anterior. É por isso que sugeri a possibilidade de uma instalação básica primeiro, apenas para configurar o grub. Mas é uma boa idéia aprender grub, e na verdade não é tão complicado assim. Você mudou para o grub2 agora?
perfil completo de Marty Fried
5

Inicialize a partir do livecd, monte as duas unidades e copie os arquivos sudo cp -ax /media/source /media/dest. Edite o / etc / fstab no destino para apontar para o UUID correto (procure com blkid) e reinstale o grub.

psusi
fonte
Isso é o que eu faria, mas levei uma eternidade para entender o grub2 - principalmente devido à miríade de métodos diferentes que li, nenhum dos quais parecia estar completo. Sua postagem pressupõe que a pessoa esteja no mesmo nível que você, ou talvez você simplesmente assuma que ela perguntará sobre as partes que não são conhecidas (o que provavelmente está correto). Mas é curioso que você especificou a parte mais fácil, o comando copy, e meio que encobriu as partes mais difíceis. :)
Marty Fried
3
@MartyFried, uma rápida Google salta direito de help.ubuntu.com/community/Grub2#Reinstalling_GRUB2 , que diz que é tão simples como executar grub-install --root-directory /mnt /dev/sdaapós a montagem da partição Ubuntu em / mnt;)
psusi
Ah, fico feliz em saber que eles foram aprimorados ou adicionados à documentação. Já faz um tempo para mim, mas quando eu estava tentando lidar com isso, mesmo a documentação oficial do GRUB não estava totalmente correta. Além disso, houve uma alteração de versão do GRUB2 que causou uma falha com uma mensagem de erro obscura. Mas o problema com os fóruns do Ubuntu que eu costumava frequentar mais é que há muita desinformação repetida até que se torne realidade por pessoas que mal sabem do que estão falando - nem todos, mas às vezes é difícil resolver isso.
perfil completo de Marty Fried
2

Eu sugeriria evitar o uso dd if=/dev/sdb5 of=/dev/sda1se o seu sistema estiver rodando /dev/sdb5sozinho (e presumivelmente não montado somente leitura).

Outra maneira de copiar partições é inicializar a partir do CD ao vivo (ou USB) e iniciar o GParted. Você pode usar Ctrl + C / Ctrl + V para copiar partições de um disco para outro.

Uma vez que a cópia é feita (e talvez após a reinicialização seja necessário atualizar a tabela de partições), ainda no CD ao vivo, monte sua nova partição raiz usando um Terminal:

sudo mount /dev/sda1 /mnt

Em seguida, edite /mnt/etc/fstabpara apontar para os locais corretos.

Bruno
fonte
1
se você é dddo CD ao vivo, não precisa editar o fstab, desde que ele use UUIDs (o que deveria).
Alecz
0

O script bash clone-ubuntu.shautomatiza as etapas descritas pela resposta aceita. É fornecido um menu para facilitar a localização da nova partição:

clone-ubuntu.png

Visite o link acima para obter uma cópia do script e pontos importantes a serem considerados, como:

  • rsync é usado para clonar partições inicializadas e os diretórios virtuais do sistema são ignorados corretamente.
  • /etc/fstab do clone de destino é atualizado com os UUIDs corretos para a inicialização.
  • /etc/grub/grub.cfg é atualizado para inicialização sem interrupção do grub.
WinEunuuchs2Unix
fonte