Como copiar uma instalação do Ubuntu de um laptop para outro

60

Vou mudar minha máquina: de um laptop com Ubuntu para outro laptop em que vou instalar o Ubuntu ...

Estou muito feliz com o sistema atual, o que receio é ter que reconstruir tudo, desde 0.

Então, o que as pessoas costumam fazer para clonar um sistema Ubuntu? Isso pode incluir dados, pacotes, configurações de atalho, etc.

SoftTimur
fonte
4
Você não pode simplesmente extrair o disco rígido do seu laptop antigo e instalá-lo no seu novo laptop? Troquei MB, MicroProcessador, RAM e HDDs, apenas conservando o HDD de inicialização e esperava um grande problema após a inicialização, o que não aconteceu. Isso pode não ser muito chique, mas funciona como um encanto.
Geppettvs D'Constanzo
Ou apenas criar um clone do seu sistema com remastersys, UCK, Personalizador ...
Uri Herrera
8
Fiz isso várias vezes: conecte a unidade antiga do laptop no novo laptop com um conversor USB para SATA, inicialize o novo laptop a partir do CD ao vivo do Ubuntu, limpe a nova unidade com gparted, copie todo o disco do antigo para o novo, redimensionar partição, inicializar, ter algum biscoito, reconfigurar o X11. Possivelmente nunca será tão fácil com o Windows!
aquaherd
11
o que é essa parte na reconfiguração do X11? Além disso, a cópia é uma cópia-pasta simples e regular?
Giro Mente

Respostas:

39

Existem algumas maneiras de copiar sua configuração. Depende do tamanho das alterações que você fez. E se você estiver atualizando para uma nova versão. Alguns dos métodos são úteis ao atualizar entre versões, mas tenha cuidado, pois podem impedir que algum formulário de software funcione corretamente.

Método 1: instalação nova

A maneira mais robusta e estável é uma nova instalação, copie a configuração e reinstale todos os seus pacotes. Isso também funciona de uma versão antiga para uma nova versão. Existem maneiras de fazer isso acontecer muito rapidamente e automatizar a maior parte do processo. A parte mais lenta seria fazer o download de todos os pacotes não incluídos na mídia de instalação. Eu tinha as 8 imagens de disco de DVD que me permitiram instalar muito mais rápido que o download.

Eu recomendaria essa opção, pois configurar e instalar o grub pode tornar seu sistema inutilizável. Você precisa ter uma compreensão sólida do grub para usar o método 2.

Antes de fazer sua nova instalação (novo laptop), você precisa copiar algumas informações da instalação antiga (laptop antigo).

Sua instalação ou configuração

Todos os arquivos que salvam sua personalização são armazenados em dois lugares. A primeira e mais importação é o seu diretório / home / [nome de usuário]. Pode haver centenas de arquivos e diretórios. [Package-config-dir]. Vou listar o mais importante, mas você pode ter mais e adicionar mais, se quiser. Esse processo pode causar problemas com os pacotes que não estão funcionando corretamente. Portanto, tenha cuidado ao fazer isso. Faça um backup de sua nova instalação antes de colar seus novos diretórios.

Esses diretórios e arquivos não são muito grandes e provavelmente levarão apenas algumas centenas de megabytes. Este método também é útil entre atualizações. Você pode copiar rapidamente todas as alterações de configuração que você fez entre as versões do Ubuntu.

Por padrão, a maioria dos programas cria o. [Package-config-dir] quando é executado pela primeira vez. Se não existir, é recriado. Você não deve confiar nesse comportamento, pois nem todos os programas funcionarão assim.

  1. Usando o Nautilus, navegue até o diretório inicial ( /home/[username])
  2. Selecione "Menu Visualizar → Mostrar arquivos ocultos" (ou Ctrl+ H)

  3. Agora você deve ver todos os .*diretórios ocultos . Você pode precisar fazer isso como root. simplesmente inicie o nautilus como root em uma linha de comando.

    Selecione os seguintes diretórios e copie-os para um diretório separado.

    /home/aaron/.config  
    /home/aaron/.gconf  
    /home/aaron/.gnome2  
    /home/aaron/.gnome2_private  
    /home/aaron/.local  
    /home/aaron/.mozilla  
    

    Eu fiz alterações nesses arquivos. Então eu os copio também.

    /home/aaron/.bash_aliases 
    /home/aaron/.bashrc 
    /home/aaron/.vimrc
    

    Pode haver muitos outros pacotes que você usa que não armazenam a configuração nesses diretórios. Copie-os também, mas seja avisado se os programas não funcionarem conforme o esperado. Pode ser necessário restaurar o .*arquivo ou diretório. Você poderia fazer isso simplesmente excluindo o arquivo ou diretório, mas deveria ter feito um backup antes de copiar os diretórios.

  4. Dependendo de como você usa seu sistema. Você pode ter feito alterações em alguns dos arquivos no /etcdiretório Se você tiver, copie-os também. Crio um arquivo smb.conf personalizado para o trabalho e tenho muitos hosts virtuais do Apache que utilizo para o desenvolvimento, para copiá-los também. Você pode copiar todo o /etcdiretório, mas isso pode criar problemas se a máquina não tiver exatamente a mesma configuração em termos de hardware. Que não vai de uma máquina para outra.

    /etc/samba/smb.conf
    /etc/hosts
    /etc/apache2 # the whole directory.
    

    Copie seus arquivos de configuração antes ou depois de instalar o novo software. Não faça isso enquanto uma instalação de pacote de software estiver em execução. Você pode interromper a instalação.

Seus pacotes instalados

Usando o Synaptic, você pode exportar todos os pacotes instalados com bastante facilidade usando a opção de menu Exportar marcações.

  1. Menu Arquivo → Salvar marcações como
  2. Marque "Salvar estado completo, não apenas alterações"
  3. Escolha um nome e um diretório para salvar este arquivo (você provavelmente precisará colocá-lo em uma unidade flash).

Em seguida, você pode recarregar todos os pacotes instalados revertendo o processo:

  1. Menu Arquivo → Ler marcações
  2. Selecione o arquivo que você criou na primeira etapa.

Provavelmente isso levará mais tempo. Se você baixar muitos pacotes (1 GB de pacotes), isso levará algumas horas.

Método 2: usando imagens de disco

Vou fazer o método 2 como um post separado. Esta é uma opção mais avançada. Requer que você entenda partições, instale o grub e use a linha de comando.

Como copiar uma instalação do Ubuntu de um laptop para outro

nelaaro
fonte
E se a última etapa da restauração de Pacotes Instalados falhar com esses erros ?
Chris
30

Existem algumas maneiras de copiar sua configuração. Depende do tamanho das alterações que você fez. E se você estiver atualizando para uma nova versão. Alguns dos métodos são úteis ao atualizar entre versões, mas tenha cuidado, pois eles podem impedir que algum software funcione corretamente.

método 1: instalação nova

Publicado separadamente. Como copiar uma instalação do Ubuntu de um laptop para outro

Este é o método mais seguro e não requer que você edite sua configuração de inicialização e inicialização. Fácil, pois a maior parte pode ser feita usando ferramentas da GUI.

método 2: usando imagens de disco

Essa pode ser a maneira mais rápida de se mover. Quanto a copiar as partições do disco rígido, as imagens de disco são bastante rápidas. Se você não deseja reinstalar todos os softwares. Embora a criação, o redimensionamento e a movimentação das imagens de disco possa demorar bastante tempo. Eu recomendaria isso apenas se você não atualizar para uma nova versão do Ubuntu. Certifique-se de entender partições de disco e grub. A maior parte do que estou fazendo utilizará a linha de comando. Você precisa entender o que um comando faz antes de executá-lo. Não sou responsável pela perda de dados como resultado das instruções a seguir.

Etapa 1: crie uma imagem de disco da sua instalação.

Primeiro precisamos obter algumas informações sobre a configuração. Usando parted -lemount

$ sudo parted -l
Model: ATA ST9320423AS (scsi)
Disk /dev/sda: 320GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system     Flags
 1      32.3kB  197MB   197MB   primary   ext4            boot
 2      197MB   10.2GB  10.0GB  primary   linux-swap(v1)
 3      10.2GB  50.2GB  40.0GB  primary   ext4
 4      50.2GB  299GB   249GB   extended
 5      50.2GB  54.4GB  4195MB  logical   ext4
 6      54.4GB  65.9GB  11.5GB  logical   ext4
 7      65.9GB  299GB   233GB   logical   ext4

$ mount
/dev/sda5 on / type ext4 (rw,errors=remount-ro)
/dev/sda7 on /home type ext4 (rw)
/dev/sda1 on /boot type ext4 (rw)
/dev/sda6 on /usr type ext4 (rw)
# I took out the entries that were not need for these instructions

$ cat /etc/fstab 
proc            /proc           proc    nodev,noexec,nosuid 0       0
UUID=ddc8c237-e8ac-4038-a0ed-f7c866d6603b /               ext4    errors=remount-ro 0    1
UUID=aa9881d1-5cc1-4e94-8cd7-8125e18ece2f /boot           ext4    defaults        0      2
UUID=31a6fde1-6b96-4cc3-acfd-88573f52be36 /home           ext4    defaults        0      2
UUID=073146a7-5668-4728-9a6f-1a599f358a8d /usr            ext4    defaults        0      2
UUID=540b96b6-b3c3-4092-b4ad-6b33bcbbe16d none            swap    sw              0      0

Sua configuração pode parecer diferente. Eu tenho uma partição separada para /home, root ( /) e /usr.

Criando as imagens de disco

Eu uso ddcomo é simples e rápido. Certifique-se de ler e entender como funciona. Você precisará de uma partição vazia que seja maior que o tamanho inteiro da partição que você está copiando. Isso pode levar algum tempo. A criação de redimensionamento e cópia das partições pode demorar algumas horas, dependendo do tamanho. Você precisará substituir a unidade externa por uma parte da mídia de armazenamento que você usará para esse processo.

sudo dd if=/dev/sda5 of=/media/externaldrive/sda5-root.img
sudo dd if=/dev/sda7 of=/media/externaldrive/sda7-home.img
sudo dd if=/dev/sda6 of=/media/externaldrive/sda6-usr.img

Aqui está um exemplo real de como colocar depois de executar isso na minha configuração.

$ sudo dd if=/dev/sda5 of=/media/home0/sda5-root.img
8193087+0 records in
8193087+0 records out
4194860544 bytes (4.2 GB) copied, 55.3159 s, 75.8 MB/s

Podemos reduzir o tamanho dessa imagem de disco usando as ferramentas fornecidas pelo Linux.

$ sudo resize2fs -P sda5-root.img
 resize2fs 1.41.11 (14-Mar-2010)
 Estimated minimum size of the filesystem: 605972
$ ls -sh ./sda5-root.img
 4.0G ./sda5-root.img
$ sudo resize2fs -M sda5-root.img
 resize2fs 1.41.11 (14-Mar-2010)
 Please run 'e2fsck -f sda5-root.img' first.
$ sudo e2fsck -fy ./sda5-root.img # y makes it run without asking thousands of questions.

e2fsckproduzirá muitos erros ou correções necessariamente. Isso ocorre porque as informações no sistema de arquivos não estão mais corretas em termos de onde os limites da partição começam e terminam. Isso está correto porque não está mais na partição para a qual foi configurado.

$ sudo resize2fs -M sda5-root.img
 resize2fs 1.41.11 (14-Mar-2010)
 Resizing the filesystem on sda5-root.img to 605505 (4k) blocks.
 Resizing the filesystem on sda5-root.img to 605505 (4k) blocks.
 The filesystem on sda5-root.img is now 605505 blocks long.
$ ls -sh ./sda5-root.img
 2.4G ./sda5-root.img

Essencialmente, remove todo o espaço livre na partição. Portanto, para a partição maior, isso pode ser mais de 50% do tamanho do disco. Muito mais rápido para copiar um arquivo menor

Agora você precisa inicializar seu novo laptop com um disco ativo e fazer o que segue aqui. Você precisa usar um disco ativo, pois não é possível fazer alterações em uma partição em execução que atualmente é usada pelo sistema operacional instalado.

Agora você pode copiar essas imagens de disco para as partições no novo computador. Você já deveria ter configurado essas partições. Usar o disco ativo e gpartedé uma maneira rápida e fácil de fazer isso. Verifique se você possui todas as partições que seu sistema exige. Você pode tornar essas partições maiores que as do sistema anterior. Quando copiamos as imagens de disco nelas, redimensionamos o sistema de arquivos e ele ocupa todo o espaço livre na partição.

Agora, passo dois: copie as imagens de disco para a nova unidade e para as novas partições.

sudo dd if=/media/exteranldrive/sda5-root.img of=/dev/sda3 # replace the [sda3] with your partition.  

Na minha máquina, era assim que a saída era

$ sudo dd if=./sda5-root.img of=/dev/sdb6 
4844040+0 records in  
4844040+0 records out  
2480148480 bytes (2.5 GB) copied, 87.4921 s, 28.3 MB/s  

$ sudo fsck.ext4 -fy /dev/sdb6  
e2fsck 1.41.11 (14-Mar-2010)  
Pass 1: Checking inodes, blocks, and sizes  
Pass 2: Checking directory structure  
Pass 3: Checking directory connectivity  
Pass 4: Checking reference counts  
Pass 5: Checking group summary information  
root1: 50470/504000 files (1.4% non-contiguous), 616736/2060328 blocks  

Agora precisamos editar o arquivo fstab para apontar para os dispositivos corretos. Se você acabou de copiar a nova partição de disco para o seu novo disco, o arquivo fstab está nessa partição, então você precisa montá-la para acessar o arquivo. Você também precisará ter a partição raiz montada para instalar o grub se você não tiver uma partição de inicialização separada.

$ sudo mkdir /mnt/tmp  
mount /dev/sdb6 /mnt/tmp  
$ sudo blkid  # to see what the disk uuid is   
/dev/sda5: LABEL="root1" UUID="ddc8c237-e8ac-4038-a0ed-f7c866d6603b" TYPE="ext4"  
/dev/sdb6: LABEL="root1" UUID="ddc8c237-e8ac-4038-a0ed-f7c866d6603b" TYPE="ext4"  
$ gksu gedit /mnt/tmp/etc/fstab  
replace the UUID with the UUID of your partition  
UUID=ddc8c237-e8ac-4038-a0ed-f7c866d6603b /               ext4    errors=remount-ro 0  1

Aqui você pode ver que a nova imagem de disco que eu copiei para o outro disco tem o mesmo UUID que o sistema de arquivos original. Assim, você pode copiar o arquivo fstab da instalação antiga para a nova instalação e ter um sistema operacional. Isso irá inicializar. Na minha configuração, não consigo deixar meu computador assim ou ele será inicializado no dispositivo que encontrar primeiro.

Edite o fstab e verifique se o uuid corresponde às partições que você configurou para root e home e a qualquer outra partição que você configurou.

O último passo é instalar o grub no seu novo disco.

sudo chroot /mnt/tmp # your root partition.   
grub-install /dev/XXX  

No meu caso:

grub-install /dev/sdb
update-grub

Por favor, leia estas instruções antes de começar. Não adianta ter todos os dados no seu novo laptop e não conseguir inicializá-lo.

https://help.ubuntu.com/community/Grub2
https://help.ubuntu.com/community/RecoveringUbuntuAfterInstallingWindows

nelaaro
fonte
Eu tinha uma dúvida, se a partição de destino tiver mais espaço do que a imagem do disco, o dd nos permitirá usar o espaço adicional ou será desperdiçado?
Nikhil
@nikhil. Nenhum dd não usará o espaço adicional. Mas não foi projetado para isso. Ele não entende os sistemas de arquivos. O fsck.ext4, por outro lado, entende partições e sistemas de arquivos. Parte da verificação do sistema de arquivos é verificar o tamanho da partição e garantir que o sistema de arquivos corresponda ao tamanho da partição.
Nelaaro 03/12
8

Tente clonezilla. O Clonezilla é uma ferramenta de imagem / clonagem de disco. Você pode usar esta ferramenta para clonar seu Ububtu em um novo sistema.

menu de inicialização do clonezilla

O Clonezilla clona suas configurações e também todas as suas partições.

Existem duas versões do clonezilla disponíveis. O Clonezilla live é adequado para uso único.

Para mais informações, visite este link .

Kolappan Nathan
fonte
11
Boa opção Lembre-se, restaurar em hardware diferente pode não ser tão fácil. Eu acho que deve ficar tudo bem, se você restaurar para uma partição do mesmo tamanho. Você também pode tentar PING (Partition-Image-Is-Not-Ghost). Essa é outra ferramenta.
Giro Mente