テクノロジーガイド

Linux ソフトウェア RAID のインストール

2 min read Linux 更新されました 16 Oct 2025
Linux でソフトウェア RAID をインストールする方法
Linux でソフトウェア RAID をインストールする方法

前提と目的

この手順は、複数ディスク上に同一サイズのパーティションを作成し、それらを mdadm で RAID アレイ(例:RAID1)にまとめ、ファイルシステムを割り当ててマウントする目的です。テストは Debian 3.1 / Ubuntu Server 5.10 など古めのディストリビューションで確認されていますが、現行ディストリビューションでも mdadm の基本操作は同様です。

重要な参考情報: Emidio Planamente のページ: http://www.planamente.ch/emidio/pages/linux_howto_root_lvm_raid.php と Tado の serverconfig ページ: https://www.howtoforge.com

Notes: mdadm の公式ページ: http://freshmeat.net/projects/mdadm/

前準備

  • 物理ディスクを 2 台以上用意します(例: hda, hdb)。
  • 各ディスクに同サイズのパーティションを作成します。
  • パーティションタイプとして「Linux RAID」を選択します(パーティション ID を 0xfd 等に設定)。

例として使うパーティション構成(筆者の例):

  • /boot 50 MB
  • swap 1 GB
  • / 10 GB
  • /var 残り全て

各ディスクで同じサイズ・同じ順番のパーティションを 4 つずつ作成し、合計 8 個の RAID 対応パーティションを作ります。

インストール時の手順(インストーラでの作業)

  1. 両ディスクに同一構成のパーティションを作成し、各パーティションのタイプを “Linux RAID” に設定する。
  2. インストーラの「Configure Software RAID」を選択して mdadm の設定に入る。
  3. 作りたい RAID レベルを選ぶ(RAID0, RAID1, RAID5 など)。バックアップが目的なら RAID1 を選択。
  4. 対応するペアのパーティション(hda の第 N パーティションと hdb の第 N パーティション)を選び、array を作成する。2 台構成なら各アレイは 2 デバイスで [2/2] になる。
  5. 全てのペアでアレイを作成すると、パーティション画面に 4 つの RAID デバイス(md0, md1, md2, md3 等)が表示される。
  6. 各 md デバイスを開き、ファイルシステムを選んでマウントポイントを設定する。例: md0 -> ext3 -> /boot、md1 -> swap、md2 -> ext3 -> /、md3 -> ext3 -> /var。
  7. 保存してインストールを続行する。同期中はシステムが遅くなる場合があるため待機する。

同期状況の確認

別の仮想コンソール(Alt+F2 など)で同期状況を監視できます:

# Ubuntu 5.1 では: 
cat /proc/mdstat

# Debian 3.1 以降でも同様:
watch cat /proc/mdstat

例: /proc/mdstat の出力(インストール中に表示される典型的な例):

root@server1:/home/patje/install_ispconfig# cat /proc/mdstat
Personalities : [raid1]
md3 : active raid1 sda4[0] sdb4[1] 133596416 blocks [2/2] [UU]
md2 : active raid1 sda3[0] sdb3[1] 24410688 blocks [2/2] [UU]
md1 : active raid1 sda2[0] sdb2[1] 1951808 blocks [2/2] [UU]
md0 : active raid1 sda1[0] sdb1[1] 120384 blocks [2/2] [UU]
unused devices: 

インストール後の作業(mdadm の確認と設定保存)

  1. システムが起動したら mdadm が正しくインストールされているか確認します。
mdadm --detail /dev/md0
cat /proc/mdstat
  1. mdadm の設定を保存して、起動時に自動組み立てされるようにします。
# Debian/Ubuntu の場合
mdadm --detail --scan >> /etc/mdadm/mdadm.conf
update-initramfs -u

ディストリビューションによっては設定ファイルの場所が /etc/mdadm.conf の場合があります。現在のディストロのドキュメントに従ってください。

ミニ手順(まとめ)

  • 同一サイズのパーティションを各ディスクに作る
  • パーティションタイプを「Linux RAID」にする
  • インストーラの Software RAID を使って各ペアを md デバイスにまとめる
  • 各 md デバイスにファイルシステムとマウントポイントを割り当てる
  • /proc/mdstat で同期を監視し、mdadm 設定を保存する

代替アプローチ

  • LVM 上に RAID を構築する: 物理ボリュームを RAID にせず、RAID デバイスを作ってから LVM を上に載せる方法と、逆に LVM ボリュームを複数のディスクに分散する方法がある。目的(スナップショット、拡張性、スループット)により選択する。
  • ハードウェア RAID コントローラを使う: ハードウェア RAID は OS から単一のディスクとして見えるため設定が簡潔。ただしコントローラ依存となりリカバリ手順が異なる。
  • ZFS や Btrfs を使う: ファイルシステム自体に RAID 機能を持つソリューション。データ整合性機能やスナップショットが必要なら検討に値する。

いつ使うと良いかと失敗するケース

重要: ソフトウェア RAID はディスク単位の冗長化を提供しますが、バックアップの代替ではありません。RAID1 はディスク障害に強いが、事故や削除ミス、ソフトウェア障害からは守れません。

失敗例:

  • パーティションサイズが左右で異なると mdadm が正しく組めない。
  • インストーラや古いカーネルで RAID サポートが不十分だとブート不可になる場合がある。
  • mdadm 設定を initramfs に反映させ忘れると起動時にルートが見つからない。

役割別チェックリスト

  • システム管理者: パーティションテーブルのバックアップ、mdadm パッケージの確認、/etc/mdadm/mdadm.conf の保存と initramfs 更新。
  • 運用担当: /proc/mdstat の定期確認、自動メール通知や監視(Nagios/Prometheus)との連携設定。
  • バックアップ担当: RAID は可用性向上のためバックアップ方針は別に維持することを確認。

トラブルシューティングのヒント

  • 同期が進まない/非常に遅い: I/O 負荷または不良セクタの可能性。dmesg, smartctl でディスク状態を確認する。
  • アレイが degraded と表示される: どのデバイスが抜けているか mdadm –detail /dev/mdX で確認し、失われたデバイスを再追加する。

基本的な復旧コマンド例:

# 失われたデバイスを再追加
mdadm --add /dev/md0 /dev/sdb1

# アレイを停止して再構成(注意して使用)
mdadm --stop /dev/md0
mdadm --assemble --scan

テストケースと受入基準

  • インストール後、/proc/mdstat に各 md デバイスが [UU] で表示されること。
  • 再起動後も md デバイスが自動で組み立てられること。
  • 片方のディスクを物理的に外してもシステムが稼働し続けること(RAID1 の場合)。

1行用語集

  • mdadm: Linux のソフトウェア RAID 管理ツール。
  • md デバイス: /dev/md0 等、mdadm が作成する論理 RAID デバイス。
  • /proc/mdstat: カーネルが保持する RAID 状態の表示ファイル。

参考と次のステップ

まとめ: mdadm を使えばインストーラ上で簡単にソフトウェア RAID を構築できます。作業前にパーティションの整合性とバックアップ戦略を確認し、同期状況を /proc/mdstat で監視しながら進めてください。

共有する: X/Twitter Facebook LinkedIn Telegram
著者
編集

類似の素材

PS4でVPNを設定する方法とベストプラクティス
技術ガイド

PS4でVPNを設定する方法とベストプラクティス

Ubuntu 18.04での単一ノードApache ZooKeeper導入ガイド
DevOps

Ubuntu 18.04での単一ノードApache ZooKeeper導入ガイド

BIKA LIMS と ReportLab を Ubuntu にインストール
インストール

BIKA LIMS と ReportLab を Ubuntu にインストール

IPアドレスを安全に変更する方法と実践ガイド
セキュリティ

IPアドレスを安全に変更する方法と実践ガイド

Dr.FoneでSamsungの画面ロックを解除する方法
スマートフォン

Dr.FoneでSamsungの画面ロックを解除する方法

Lenovo Solution Center のダウンロードと使い方
PC メンテナンス

Lenovo Solution Center のダウンロードと使い方