a unidade clonada não inicializa. (Era uma unidade criptografada LUKS)

2

Eu tenho um SSD removido de um sistema. Ele tinha criptografia de disco completo via LUKS (sem usar o LVM).

Eu quero reutilizar essa unidade para um propósito diferente (em um sistema diferente). Eu clonei (usando dd) um sistema Arch Linux não criptografado (que é conhecido por ser bom e inicializa) para essa unidade criptografada anteriormente. No entanto, a unidade clonada não será inicializada.

O comando dd que eu usei foi:

dd if=/dev/sda of=/dev/sdb bs=1M status=progress

(Eu tenho os dispositivos de entrada e saída corretos também.) O disco do qual eu clonei está de volta em seu hardware original e inicializou e roda bem. O novo disco (clonado) está em hardware idêntico.

O disco recém-clonado tem a mesma estrutura de partição e os UUIDs são os mesmos (conforme esperado). Além disso, quando eu monto o novo disco e navego pelos diretórios, todos os arquivos parecem ser como esperado. O disco recém-clonado aparece idêntico na inspeção e obviamente não está corrompido. Por exemplo, posso abrir e ler os arquivos de configuração do carregador UEFI para inspecionar os números UUID. Eu também posso executar blkid para verificar se os UUIDs estão corretos (eles são).

Ambos os sistemas usam o boot UEFI. A partição vfat EFI está na unidade recém-clonada e parece ser normal. Como dito, a configuração padrão do carregador tem o UUID apropriado (porque nada foi alterado da unidade que foi clonada).

O erro ao tentar inicializar a partir do disco clonado é:

:: running early hook udev
starting version 231
:: running hook [udev]
Waiting 10 seconds for device /dev.. (it lists the partition ID)
ERROR: device [partition UUID] not found. Skipping fsck.
ERROR: unable to find root device [partition UUID]
You are being dropped into a rescue shell

Em seguida, Arch cai em um shell de resgate.

EDITAR:

A unidade clonada foi conectada ao sistema via USB. Quando mudei a conexão para SATA, o problema desapareceu. A unidade funciona e o sistema é inicializado como esperado.

Eu esperava que a unidade clonada funcionasse quando montada via USB, porque esse sistema já foi testado para inicializar a partir de um snapshot btrfs que reside em uma unidade USB e funciona sem problemas.

    
por MountainX 14.01.2017 / 02:38

1 resposta

0

Seu sistema inicializa ao ponto de tentar encontrar o sistema de arquivos raiz e falha nesse ponto. Isso geralmente é um sinal de que o kernel não possui um driver necessário. Como seu sistema, como a maioria dos sistemas não embarcados, usa um initramfs, “kernel” significa o conjunto de drivers compilados na imagem do kernel ( /boot/bzImage ou onde quer que esteja localizado) mais o conjunto de drivers presentes no initramfs. Os drivers necessários incluem tudo que é necessário para acessar o sistema de arquivos: controlador de barramento, controlador de disco, tipo de disco, partição, camada RAID de software, camada de criptografia, LVM, sistema de arquivos… No seu caso, evidentemente as camadas superiores estão presentes, mas se você conectou disco para uma interface diferente (por exemplo, USB em vez de SATA ou uma porta SATA diferente em um controlador diferente etc.), talvez o driver dessa interface esteja ausente. Você provavelmente precisará regenerar o initramfs .

Como diz o Wiki do Arch :

Boot succeeds on one machine and fails on another

(…) If you transfer your /boot directory to another machine and the boot sequence fails during early userspace, it may be because the new hardware is not detected due to missing kernel modules. (…) try manually adding modules to the initramfs.

    
por 16.01.2017 / 01:20