Debian インストールの複製

Debian インストールの複製

既存のDebianインストールを複製し、異なるサイズのハードドライブを持つ新しいコンピュータに復元したいと思います。

パーティショニングは非常に簡単です。 EFIの場合は/dev/sda1、Linuxの場合は/dev/sda2、スワップの場合は/dev/sda3です。

イメージを作成するマシンでは、デフォルトで次のことを行います。

fsarchiver savefs /images/${BACKUP_FILE_NAME}.fsa /dev/sda1 /dev/sda2 -e *.fsa -v -j4 -A -z 9

また、出力を保存しました。

sfdisk -J /dev/sda

また

bklid

復元するマシンでは、デフォルトで次の操作を行います。

echo "label: gpt" | sfdisk /dev/sda

FULL_DISK_SIZE=`sfdisk -s /dev/sda`
let VARIABLE_SIZE=$FULL_DISK_SIZE/1024/1024-10

cat <<EOT > /tmp/sfdisk.txt
size=512M, type=${SFDISK_TYPE_BOOT}, uuid=${SFDISK_UUID_BOOT}
size=${VARIABLE_SIZE}G, type=${SFDISK_TYPE_LINU}, uuid=${SFDISK_UUID_LINU}
type=${SFDISK_TYPE_SWAP}, uuid=${SFDISK_UUID_SWAP}
EOT

sfdisk /dev/sda < /tmp/sfdisk.txt

その背面の主なアイデアは、元のパーティションタイプとuuidの一部を維持しながら、Linuxパーティションサイズの柔軟性を維持することです。ここでは、ほぼ全サイズから10GBを引いたサイズをいいます。

次に、次のようにすべてを復元します。

fsarchiver restfs sourceimage.fsa id=0,dest=/dev/sda1 id=1,dest=/dev/sda2

これはまったく同じハードドライブを持つシステムで機能します。ハードドライブが異なると起動できません。

定期的にこれらのコンピュータにLinuxをインストールし、パーティション情報を保存して消去し、上記のプロセスを再試行すると、以前のパーティション情報のためにまだ失敗します(驚くべきことではありませんが)、新しいディスクを使用するとすぐに機能し始めます。 EFIドライブのuuid部分。これにより、これらの部分UUIDが関連していると信じていました。

その後、以前のコンピュータに戻ってイメージを復元しましたが、EFIパーティションのuuid部分を文字に変更して問題が発生したかどうかを確認しました。実際にそうしました。また、sfdiskが自動的に部分的なuuidを生成するようにしても、イメージを復元した後にドライブを起動できなくなります。

部分的なuuidが予約されているのか新しいのかはあまり気にしませんが、これを自動化したいと思います。これを行うには、何を変更する必要があるのか​​ご存知ですか?

ベストアンサー1

私はそれを見つけたと思います。この部分は最後に落ちた。

mount -o rw,remount /sys/firmware/efi/efivars
efibootmgr -c -g --disk /dev/sda --part 1 -l \\EFI\\debian\\grubx64.efi

おすすめ記事