Intel Rapid Storage Technology を使用して RAID 上にある暗号化された LVM に Debian をインストールするにはどうすればよいでしょうか?

Intel Rapid Storage Technology を使用して RAID 上にある暗号化された LVM に Debian をインストールするにはどうすればよいでしょうか?

私は PC ベースの NAS システムを準備していました。システムは RAID 5 構成で 4 台の HD を使用しています。システムを RAID からも起動したかったので、Intel Rapid Storage Technology をサポートするマザーボードを選択しました。RAID ボリュームは、その機能を有効にした後、BIOS で作成されました。インストールは、Debian 安定版 (bullseye) netinst iso イメージからエキスパート インストール モードで実行されました。インストール中、ディスクのパーティション分割の前に、2 番目のコンソールをアクティブにして手動で実行する必要がありました。

mdadm -Asv

その後、インストーラーは RAID ( /dev/md126) を認識し始め、次のことが可能になりました。

  1. ESP ( /dev/md126p1) およびブート ( /dev/md126p2) パーティションを作成します。
  2. に暗号化されたボリュームを作成します/dev/md126p3
  3. mynas_vg暗号化されたボリュームとその中のボリューム グループ上に LVM を作成します。
  4. swapグループ内に、root(システム用)、data(提供ディレクトリ用) ボリュームを作成しますmynas_vg
  5. システムのインストールを続行します。

インストールは正常に完了しました。ただし、システムを再起動すると、一連のメッセージが表示されました (一部は何度も繰り返されました)。

Volume group mynas_vg not found
Cannot process volume group mynas_vg
cryptsetup: Waiting for encrypted source device UUID=xxxxxxxxxxxxxx

最終的に起動プロセスが中断され、プロンプトが (initramfs) 表示されました。システムは起動できませんでした。

答え1

インストーラーのレスキューモードを使用しなくても、問題を解決することができました。

プロンプトで以下(initramfs)を実行しました:

IMSM_NO_PLATFORM=1 mdadm -Asv

その後、/dev/md126とそのパーティションが使用可能になりました。次に、次を実行しました。

cryptsetup luksOpen /dev/md126p3 md126p3_crypt

ボリューム グループがmynas_vg表示され始めました。そのままにしておく(initramfs)CTRL+D、システムは正常に起動しました。

起動したシステムで、ディレクトリ内のファイルを編集しました/usr/share/initramfs-tools/scripts/local-block

  1. ファイル内でcryptroot、次 PREREQ=""の部分を変更しました。PREREQ="mdadm"
  2. ファイルにmdadm次の行を追加しました:
    #!/bin/sh
    
    PREREQ="multipath"
    export IMSM_NO_PLATFORM=1 # <-- This line is added
    prereqs()
    {
         echo "$PREREQ"
    }
    

上記の変更を行った後、以下を実行しました:

update-initramfs -c -k all

その後、システムを再起動しました。このように変更された初期 RAM ディスクにより、システムは正常に起動します。使用できないmynas_vgグループに関するメッセージが 3 回表示され、暗号化されたソース デバイスを待機しているというメッセージが 1 回表示されますが、その後、md126p3_crypt ディスクのパスワードが求められ、パスワードを入力すると、システムが正常に起動します。

もちろん、他の RAID パラメータの場合、RAID デバイスの名前は と異なる場合があります/dev/md126。私のレシピに従う場合は、その名前と、そこから派生した他のすべての名前をそれに応じて変更する必要があります。

システムを更新すると、変更されたスクリプトの元の内容が復元される可能性があることに注意してください。システムの起動が停止した場合は、上記の手順を繰り返す必要がある場合があります。

関連情報