Eu sei que pode, em algumas circunstâncias, ser difícil mover uma instalação do Windows de um computador para outro (mover fisicamente o disco rígido), mas como isso funciona no Linux? A maioria dos módulos de driver não são carregados na inicialização? Então, teoricamente, seria tão incômodo?
Obviamente, as configurações do xorg mudariam e os drivers proprietários da ATI teriam que ser recompilados (talvez?). Há mais do que estou pensando?
Suponha que os dois computadores sejam da mesma época, por exemplo, ambos i7s, mas com hardware ligeiramente diferente.
Atualização:
Obrigado pelas respostas. Isso é principalmente para minha própria curiosidade. Tenho meu sistema Linux instalado e funcionando no trabalho, mas, eventualmente, gostaria de mudar para um computador no qual possa instalar duas placas de vídeo para poder executar mais de dois monitores. Mas não tão cedo.
Responder1
Mover ou clonar uma instalação Linux é muito fácil, assumindo que os processadores de origem e de destino sejam da mesma arquitetura (por exemplo, ambos x86, ambos x64, ambos arm…).
Movendo-se
Ao mudar, você deve cuidar das dependências de hardware. No entanto, a maioria dos usuários não encontrará nenhuma dificuldade além xorg.conf
(e mesmo assim as distribuições modernas tendem a não precisar dela) e talvez o gerenciador de inicialização.
Se a configuração do disco for diferente, talvez seja necessário reconfigurar ocarregador de inicializaçãoetabelas do sistema de arquivos(
/etc/fstab
,/etc/crypttab
se você usar criptografia,/etc/mdadm.conf
se você usar md RAID). Para o bootloader, a maneira mais fácil é colocar o disco na nova máquina, inicializar o live CD/USB da sua distribuição e usar a ferramenta de reparação do bootloader.Observe que se você estiver copiando os dados em vez de mover fisicamente o disco (por exemplo, porque um ou ambos os sistemas inicializam duas vezes com o Windows), é mais rápido e fácil copiar partições inteiras (com (G)Parted ou
dd
).Se você tem um
xorg.conf
para declarar opções relacionadas à exibição (por exemplo, em relação a um driver proprietário), ele precisará ser modificado se o sistema de destino tiver uma placa gráfica diferente ou uma configuração de monitor diferente. Você também deve instalar odriver proprietáriopara a placa gráfica do sistema de destino antes de movê-la, se aplicável.Se você declarouopções de móduloou listas negras no
/etc/modprobe.d
, talvez seja necessário ajustá-las para o sistema de destino.
Clonagem
A clonagem de uma instalação envolve os mesmos problemas relacionados ao hardware que a movimentação, mas há mais algumas coisas que você precisa cuidar para dar uma nova identidade à nova máquina.
Edite para dar um novo nome à nova máquina. Procure outras ocorrências do nome do host em . Os locais comuns são (alias para 127.0.0.1) e /ou outra configuração do sistema de correio.
/etc/hostname
/etc
/etc/hosts
/etc/mailname
Regenerar ochave de host ssh.
Faça qualquer alteração necessária noconfiguração de rede(como um endereço IP estático).
Altere o UUID dos volumes RAID (não é necessário, mas recomendado para evitar confusão), por exemplo,
mdadm -U uuid
.
Veja tambémum guia passo a passo de clonagem direcionado ao Ubuntu.
A instalação atual do meu computador desktop foi clonada de seu antecessor, desconectando um dos dois discos espelhados RAID-1, movendo-o para o novo computador, criando um volume RAID-1 no disco já presente, deixando o espelho ressincronizar e fazendo as alterações descritas acima, quando aplicável.
Responder2
Não tenho certeza se isso responde à sua pergunta, mas normalmente você faz exatamente o oposto: move sua pasta de usuário e reinstala tudo. Em teoria, todos os seus arquivos de personalização e configuração individual deveriam estar na sua pasta de usuário, então essa é a única coisa que você realmente precisa transferir.
Alguns gerenciadores de pacotes têm uma maneira de listar todos os pacotes instalados (Debian/Ubuntu tem dpkg --list
, Gentoo tem /etc/world
, etc.), então você pode apenas:
- Instale a distribuição básica em um novo sistema
- Diga "instale todos os pacotes que eu tinha no outro computador"
- Copie sua pasta de usuário
E você deve acabar com um sistema funcionalmente idêntico.
Responder3
Na verdade, embora no Windows seja quase impossível mover uma instalação para um novo PC apenas copiando o conteúdo do disco rígido ou trocando o disco rígido entre os PCs, isso funciona incrivelmente bem no Linux. Troquei de um Thinkpad R52 para um Thinkpad T400 apenas copiando o conteúdo do meu disco rígido antigo para o novo (colocando o antigo em um gabinete externo conectado via USB e copiando tudo em um Gparted-Live-CD). Tudo o que tive que fazer depois disso foi colocar manualmente o Grub no MBR e inicializar. Tudo ainda funcionou para mim.
Como Michael disse, normalmente um novo PC é uma boa oportunidade para se livrar do lixo acumulado ao longo do tempo, no entanto, às vezes você só precisa voltar ao trabalho bem rápido e então apenas copiar o conteúdo do disco rígido funciona muito bem com o Linux, já que todos os drivers incluídos no kernel estão disponíveis para o kernel sem instalação, hoje em dia os drivers são carregados automaticamente em vez de listados manualmente no modprobe.conf e até o xorg se autoconfigura para mim.
Somente se você tivesse que configurar manualmente os drivers no PC antigo (por exemplo, sistemas Raid, drivers gráficos proprietários, etc.) você poderia ter problemas.
Responder4
Contorno
Recentemente, movi uma instalação do Arch Linux para outra unidade que estavamenordo que a unidade original.
A unidade original usava apenas uma partição que simplificava as coisas. Se você tiver uma partição de inicialização separada da partição raiz,aqui está uma respostaisso pode ajudá-lo.
As etapas foram:
- Faça backup dos dados.
- Crie uma partição contendo um sistema de arquivos ext4 na unidade de destino.
- Copie todos os dados da partição de origem para a partição de destino.
- InstalarGRUBcomo o bootloader na unidade de destino.
Dicas
Uma dica antes de começarmos: para determinar os caminhos dos meus dispositivos conectados (por exemplo, /dev/sdb
) e geralmente ficar de olho no estado dos dispositivos e também das partições, eu usowatch
combinado comlsblk
:
watch lsblk -o tran,name,model,fstype,label,mountpoints,fssize,fsavail,fsused,fsuse%
Ele é atualizado a cada dois segundos e produz resultados como este:
TRAN NAME MODEL FSTYPE LABEL MOUNTPOINTS FSSIZE FSAVAIL FSUSED FSUSE%
sata sda SanDisk SSD PLUS 1000GB
├─sda1 ext4 VM partition /sda1 108G 50G 53.4G 49%
└─sda3 ext4 / 808G 561.3G 205.7G 25%
usb sdb SABRENT
└─sdb1 ext4 new_daedalus /run/media/me/new_daedalus 29.2G 25.3G 2.4G 8%
sata sr0 MATSHITADVD-RAM UJ8A2
Como iremos copiar o conteúdo de uma partição para outra, é uma boa ideia se livrar do lixo que ocupa muito espaço: Verifique a partição de origem comncdu
para diretórios que contêm mais dados e exclua-os ou mova-os, se possível.
Outra coisa: eu uso adaptadores SATA para USB comoessespara conectar unidades de origem e destino ao meu computador.
Detalhes
Supondo que você tenha feito backup de seus dados e que sua unidade de destino esteja em /dev/sdb
, vamos entrar em detalhes:
Crie uma partição contendo um sistema de arquivos ext4 na unidade de destino:
- Crie uma partição Linux (digite 0x83noMBR):
sudo sfdisk /dev/sdb <<< "type=83"
- Crie o sistema de arquivos na nova partição:
sudo mkfs.ext4 -L new_partition /dev/sdb1
- Crie uma partição Linux (digite 0x83noMBR):
Copie todos os dados da partição de origem para a partição de destino:
- O seguinte pressupõe que a partição antiga e a nova estejam montadas:
sudo rsync -a --hard-links --delete --progress --human-readable --stats /run/media/me/old_partition/ /run/media/me/new_partition/
- eu usei
rsync
aqui. Você também pode usar o bom e velhocp
para conseguir o mesmo:sudo cp --recursive -a /run/media/me/old_partition/* /run/media/me/new_partition/
- O seguinte pressupõe que a partição antiga e a nova estejam montadas:
InstalarGRUBcomo o bootloader na unidade de destino:
- Adicione os sistemas de arquivos virtuais à sua nova partição que são necessários para executar
grub-install
:sudo mount --bind /dev /run/media/me/new_partition/dev; sudo mount --bind /proc /run/media/me/new_partition/proc
- Torne a raiz da sua nova partição a raiz atual:
sudo chroot /run/media/me/new_partition/
- Instale o GRUB na unidade de destino (consulteessepara saber mais sobre o que acontece aqui):
grub-install /dev/sdb; grub-mkconfig -o /boot/grub/grub.cfg
- Saia
chroot
com Ctrl+ douexit
- Desmonte os sistemas de arquivos virtuais e a própria partição:
sudo umount --recursive /run/media/me/new_partition
- Adicione os sistemas de arquivos virtuais à sua nova partição que são necessários para executar
É isso, agora você deve ser capaz de usar a instalação do Linux residindo new_partition
na unidade /dev/sdb
.