システムからSSDを削除しました。それ持つLUKSによるフルディスク暗号化(LVMを無効にする)
このドライブを別の目的(別のシステムで)に再利用したいと思います。私は暗号化されていないArch Linuxシステム(すべてのアカウントで問題なく起動可能)を以前に暗号化されたドライブに複製しました(ddを使用)。ただし、複製されたドライブは起動しません。
私が使用するddコマンドは次のとおりです。
dd if=/dev/sda of=/dev/sdb bs=1M status=progress
(私の入出力デバイスも正確です。)複製したディスクは元のハードウェアに戻り、起動して正常に動作します。新しい(複製)ディスクには同じハードウェアがあります。
新しく複製されたディスクは、予想どおり同じパーティション構造と同じUUIDを持ちます。また、新しいディスクをマウントしてディレクトリに移動すると、すべてのファイルが期待どおりに表示されます。検査の結果、新しく複製されたディスクは同じに見え、明確な損傷はありませんでした。たとえば、UEFI ローダ設定ファイルを開いて読み込んで、UUID 番号を確認できます。また、blkid
UUIDが正しいことを確認するために実行することもできます。
どちらのシステムもUEFIを使用して起動します。 vfat EFIパーティションは新しく複製されたドライブにあり、正常に見えます。前述のように、デフォルトのローダー構成には適切なUUIDがあります(複製されたドライブに変更がないため)。
複製されたディスクから起動しようとしたときに表示されるエラーは次のとおりです。
:: 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
Archieは構造シェルに落ちた。
編集する:
複製されたドライブはUSB経由でシステムに接続されます。 SATAで接続を変更すると問題がなくなりました。ドライブが動作し、システムが期待どおりに起動します。
システムはUSBドライブのbtrfsスナップショットから起動するようにテストされており、正常に動作していたため、USB経由でインストールすると、クローンドライブが正常に動作することが予想されます。
答え1
システムがルートファイルシステムを見つけようとする場所で起動し、この時点で失敗します。これは通常、カーネルに必要なドライバがないことを示します。あなたのシステム(ほとんどの非埋め込みシステムと同じように)はinitramfsを使用しているので、「カーネル」はカーネルイメージ/boot/bzImage
(または存在する場所)からコンパイルされたドライバセットとinitramfsセットのドライバを意味します。必要なドライバには、バスコントローラ、ディスクコントローラ、ディスクタイプ、パーティション、ソフトウェアRAID層、暗号化層、LVM、ファイルシステムなど、ファイルシステムにアクセスするために必要なすべてが含まれます。あなたの場合は明らかに高い層がありますが、接続するとディスクを他のインターフェイス(SATAではなくUSB、他のコントローラの別のSATAポートなど)に接続すると、そのインターフェイスのドライバが欠落する可能性があります。あなたは必要かもしれませんinitramfsの再生成。
上記のようにアーチスウィキ:
あるコンピュータでは正常に起動しましたが、別のコンピュータでは失敗しました。
(…)
/boot
ディレクトリを別のシステムに移動し、初期ユーザースペースで起動順序が失敗した場合、カーネルモジュールが欠落して新しいハードウェアが検出されないためです。 (…)頑張る手動initramfsにモジュールを追加します。