%3A%20%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2%20RAID%201%20%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%81%8C%20GRUB%20%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%A7%E5%A4%B1%E6%95%97%E3%81%99%E3%82%8B.png)
しばらくの間、RAID 1 をブート ソースとして新しいサーバー システムをセットアップしようとしていました。その RAID は 2 つの 4TB ハードディスクで構成されています。そこで、Debian 12 のインストール イメージを準備した USB スティックからブートします。最初はすべて正常に動作します。ネットワークを構成し、最初の 2 人のユーザーを作成します。 パーティション分割の部分に関しては、手動の方法を選択します
次の表には、2 つの 4TB ドライブと USB ブート デバイスが表示されています。ハードディスク SCSI9 は緊急用のスペアなので、ここでは使用しません。 ソフトウェアRAIDを構成することを選択しました
MDデバイスの作成を選択します
RAID 1を選択します
2台のRAIDデバイス
0 予備機器
もう一度パーティション分割に戻ります。 今回はガイドモードを選択します
すべてのファイルを1つのパーティションに
1 ~ 2 分後、新しくパーティション化された RAID が起動します。 有望そうです...
変更を確認すると、システムは OS の残りとすべてのユーティリティを取得してインストールし始めます。このプロセスはうまく設計されており、これまでのところ非常に簡単です。唯一の問題は、終了しないことです。:-( GRUB のインストール (2 時間後) になると、停止します... この点を超える方法が見つかりませんでした。私の間違いは何で、どうすれば修正できるでしょうか?
私はインターネットで広範囲に検索した結果から多くのバリエーションを試しましたが、すべて同じ結果でした最も有望なのは、インストール プロセスの一部をスキップし、mdadm を使用してアレイを手動で生成する方法です。 https://www.server-world.info/en/note?os=Debian_12&p=raid1
追加
答え1
4TではGPTを使用する必要があり、ディスク全体をパーティション分割可能なRAIDを適切に持つことはできません。そしてディスクを BIOS で認識して起動できるようにします (EFI では厳密には不可能ですが、レガシーでは厳密には不可能ではありませんが、知りたくない黒魔術が必要になります)。
(Debian インストーラーがこの方式を受け入れたこと自体が残念です。受け入れるべきではありません。これは完全に無効であり、機能する可能性はありません。)
これは、GPT パーティション テーブルが実際にはデバイスの先頭と末尾の両方に保存されるためです。ディスク全体の RAID が使用され、適切な MD メタデータの解釈が行われていない場合、両方の GPT コピーが同時に作成されることはありません。
- v1.0 MD スーパーブロックの場合、2 番目の GPT (末尾) が欠落します (BIOS が予期しない場所へ前もって移動されます)。
- v1.1 および v1.2 の MD スーパーブロックの場合、最初の GPT (先頭) がシフトされるため、ファームウェアはそれを見つけられません。
どちらの場合も、ディスクが有効なパーティション テーブルを持つものとして認識されず、ディスクからの起動が拒否されます。
それに加えて、UEFI で起動したい場合、EFI ファームウェアは ESP がソフトウェア RAID になる可能性があることをまったく知らない (仕様には何も記載されていない) ことを知っておく必要があります。したがって、ソフトウェア RAID にしてはいけません。ESP は常に単純な GPT パーティションである必要があります。
したがって、この問題を解決するには、RAID を構築してからパーティション分割するのではなく、まずディスクをパーティション分割し、いくつかのパーティションを RAID に集めます。これは議論の余地がありますが、次のスキームをお勧めします。
- EFI インストールの場合: 511MiB (デフォルトのオフセット 1MiB) の ESP (タイプ 1)、次にタイプ Linux RAID の /boot 用に 512MiB、残りはタイプ Linux RAID の残り用 (私が間違っていなければ、これは fdisk のタイプ 29 です)。
- レガシーインストールの場合: 1 MiB (タイプ 4 - biosgrub)、510 MiB ブート (RAID)、残りは RAID。
次に、2 つの RAID (/boot と残り) を作成し、ESP の 1 つを「ESP」として選択します。インストール後、2 番目のディスクからのブートを有効にします。次に、大きな RAID 上に LVM を作成し、ファイルシステムを保持します。そこで、スワップ ボリューム、ルート FS ボリュームを作成できます (Debian には 30 GiB で十分であり、オンザフライで簡単に拡張できます。すべてのデータを他のマウントされた専用ボリュームに配置することに注意してください。ルート ボリュームにアプリケーション データを保存するのは適切ではありません)。残りは、システムの存続期間中に必要に応じて作成できます。
その後、通常どおりシステムをインストールします。ESP パーティションに FAT32 を作成する必要があります。Debian 11 インストーラーではこれが問題だったため、手動で作成する必要がありました。12 については、そのようなインストールを実行したことがなく、アップグレードのみ実行したため、わかりません。ブートローダーのインストールに関しては、EFI の場合は指示どおりに実行します。一方、レガシーの場合は、この手順を繰り返して 2 回インストールし、2 回目に 2 番目のディスクを選択して、すぐに冗長ブートできるようにします。
EFI の場合、最初のシステム起動後、2 番目の "ESP" パーティションに手動で FAT32 ファイル システムを作成し、それをどこかにマウントし (/boot/efi2 を使用)、構造を保持したまま /boot/efi からすべてをコピーする必要があります。次に、を使用して 2 番目のファームウェア ブート エントリを作成しますefibootmgr
。ここ指示です。
答え2
完了しました... 正しい方向を示してくれた Nikita に感謝します。これが私の場合の簡単なレシピです (「ディスクのパーティションを再分割しますか」という確認をいくつか省略しました)。
- メインボードの BIOS 設定に移動し、すべての UEFI を無効にします。
- Debian 12 インストール イメージが入った USB スティックから起動します。
- 「グラフィカル インストール」を開始します。
- 最初の手順(ネットワークのインストールなど)を通常の方法で実行します。
- インストーラーが「ディスクのパーティション」まで来たら、「手動」を選択します。
- 2 つのターゲット ドライブから古いパーティションをすべて削除します。
- 最初のターゲット ドライブに新しいパーティションを作成します。サイズを尋ねられたら、「1MB」を入力します。パーティションを使用可能な領域の「先頭」に配置します。「使用方法」設定を「予約済み BIOS ブート領域」に変更します。
- 最初のターゲット ドライブに新しいパーティションを作成します。サイズを尋ねられたら、「最大」を入力します。「使用方法」設定を「RAID の物理ボリューム」に変更します。
- 2 番目のターゲット ドライブに対して最後の 2 つの手順を繰り返します。
- パーティションメニューに戻り、「ソフトウェア RAID の構成」を選択します。「MD デバイスの作成」を選択します。「RAID1」を選択します。アクティブデバイスは「2」です。スペアデバイスは「0」です。次に、前に準備した 2 つの RAID パーティションを選択します。「完了」をクリックして RAID セットアップを終了します。
- パーティション分割メニューに戻り、「ガイド付きパーティション分割」を選択します。「ガイド付き - ディスク全体を使用して LVM をセットアップ」を選択します。前に準備した RAID デバイスを選択します。「すべてのファイルを 1 つのパーティションに」を選択します。LVM のサイズを尋ねられたら、「最大」と答えます。
パーティション リストは次のようになります。[パーティション分割を終了し、変更をディスクに書き込む] を選択します。
- すべてがうまくいけば、システムは標準の Debian インストール プロセスを開始します (しばらく時間がかかる場合があります)。通常のインストール プロセスとまったく同じように質問に答えます。
- ディスクに GRUB を書き込む際には、もう一度注意してください。最初のターゲット ディスクに一度書き込み、戻って 2 番目のターゲット ディスクに同じことを行います。
- 残りの手順は標準的です...
watch cat /proc/mdstat
コマンドラインから起動すると、RAID のステータス (同期プロセスの進行状況を含む) を確認できます。