テクノロジーガイド

Fedora 8: 実稼働システムに対する /dev/sda の RAID1 追加手順

2 min read Linux 更新されました 01 Oct 2025
Fedora 8: 稼働中システムにRAID1を追加する方法
Fedora 8: 稼働中システムにRAID1を追加する方法

目的と前提条件

  • 目的: ソフトウェア RAID1(mdadm)で稼働中のシステムにもう一方のディスク(/dev/sda)を追加し、ブート冗長性を確保する。
  • 前提: 既に /dev/sdb 側で RAID が構成済み(/dev/md0, /dev/md1, /dev/md2)であること。root 権限で操作すること。重要なデータは事前にバックアップしておくこと。

重要: 実稼働システムでのディスク操作はリスクを伴います。コマンドを入力する前にデバイス名とパーティションを再確認してください。

ステップ 7: /dev/sda の準備

まず df -h で /dev/md0 と /dev/md2 が見えていることを確認します。例:

df -h
[root@server1 ~]# df -h  
Filesystem            Size  Used Avail Use% Mounted on  
/dev/md2              4.4G  2.4G  1.8G  58% /  
/dev/md0               99M   15M   80M  16% /boot  
tmpfs                 185M     0  185M   0% /dev/shm  
[root@server1 ~]#

/proc/mdstat の出力が期待通りか確認します:

cat /proc/mdstat
[root@server1 ~]# cat /proc/mdstat  
Personalities : [raid1] [raid6] [raid5] [raid4]  
md0 : active raid1 sdb1[1]  
      104320 blocks [2/1] [_U]  
  
md1 : active raid1 sdb2[1]  
      513984 blocks [2/1] [_U]  
  
md2 : active raid1 sdb3[1]  
      4618560 blocks [2/1] [_U]  
  
unused devices:   
[root@server1 ~]#

次に /dev/sda の対応する 3 つのパーティションを Linux raid autodetect (hex code fd) に変更します。fdisk を使います。

fdisk /dev/sda

対話例:

[root@server1 ~]# fdisk /dev/sda

Command (m for help): <-- t  
Partition number (1-4): <-- 1  
Hex code (type L to list codes): <-- fd  
Changed system type of partition 1 to fd (Linux raid autodetect)

Command (m for help): <-- t  
Partition number (1-4): <-- 2  
Hex code (type L to list codes): <-- fd  
Changed system type of partition 2 to fd (Linux raid autodetect)

Command (m for help): <-- t  
Partition number (1-4): <-- 3  
Hex code (type L to list codes): <-- fd  
Changed system type of partition 3 to fd (Linux raid autodetect)

Command (m for help): <-- w  
The partition table has been altered!

システムがパーティションテーブルを再読み込みします。

Calling ioctl() to re-read partition table.  
Syncing disks.  
[root@server1 ~]#

パーティションタイプを変更したら、各パーティションを対応する RAID アレイに追加します:

mdadm --add /dev/md0 /dev/sda1  
mdadm --add /dev/md1 /dev/sda2  
mdadm --add /dev/md2 /dev/sda3

追加後、/proc/mdstat を確認すると同期が始まっているはずです。例:

[root@server1 ~]# cat /proc/mdstat  
Personalities : [raid1] [raid6] [raid5] [raid4]  
md0 : active raid1 sda1[0] sdb1[1]  
      104320 blocks [2/2] [UU]  
  
md1 : active raid1 sda2[0] sdb2[1]  
      513984 blocks [2/2] [UU]  
  
md2 : active raid1 sda3[2] sdb3[1]  
      4618560 blocks [2/1] [_U]  
      [=====>...............]  recovery = 29.9% (1384256/4618560) finish=2.3min speed=22626K/sec  
  
unused devices:   
[root@server1 ~]#

同期の進行を連続表示したい場合は watch を使います(終了は CTRL+C):

watch cat /proc/mdstat

同期が完了すると以下のように全デバイスが UU と表示されます:

[root@server1 ~]# cat /proc/mdstat  
Personalities : [raid1] [raid6] [raid5] [raid4]  
md0 : active raid1 sda1[0] sdb1[1]  
      104320 blocks [2/2] [UU]  
  
md1 : active raid1 sda2[0] sdb2[1]  
      513984 blocks [2/2] [UU]  
  
md2 : active raid1 sda3[0] sdb3[1]  
      4618560 blocks [2/2] [UU]  
  
unused devices:   
[root@server1 ~]#

同期完了後、mdadm の設定ファイルを更新します(現在のアレイ定義を /etc/mdadm.conf に書き出す):

mdadm --examine --scan > /etc/mdadm.conf

例(/etc/mdadm.conf の一例):

ARRAY /dev/md0 level=raid1 num-devices=2 UUID=2848a3f5:cd1c26b6:e762ed83:696752f9
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=8a004bac:92261691:227767de:4adf6592
ARRAY /dev/md2 level=raid1 num-devices=2 UUID=939f1c71:be9c10fd:d9e5f8c6:a46bcd49

ステップ 8: GRUB の準備

システムが /dev/sdb からブートする設定(hd1,0)になっている場合、万が一 /dev/sdb が故障してもブートできるように /boot/grub/menu.lst を編集して hd1 のカーネル・スタンザをコピーし、hd0 に変更します。その他のスタンザはコメントアウトしておきます。

vi /boot/grub/menu.lst

編集後の例:

# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE:  You have a /boot partition.  This means that
#          all kernel and initrd paths are relative to /boot/, eg.
#          root (hd0,0)
#          kernel /vmlinuz-version ro root=/dev/sda3
#          initrd /initrd-version.img
#boot=/dev/sda
default=0
fallback=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title Fedora (2.6.23.1-42.fc8)
        root (hd1,0)
        kernel /vmlinuz-2.6.23.1-42.fc8 ro root=/dev/md2 rhgb quiet
        initrd /initrd-2.6.23.1-42.fc8.img

title Fedora (2.6.23.1-42.fc8)
        root (hd0,0)
        kernel /vmlinuz-2.6.23.1-42.fc8 ro root=/dev/md2 rhgb quiet
        initrd /initrd-2.6.23.1-42.fc8.img

#title Fedora (2.6.23.1-42.fc8)
#       root (hd0,0)
#       kernel /vmlinuz-2.6.23.1-42.fc8 ro root=LABEL=/ rhgb quiet
#       initrd /initrd-2.6.23.1-42.fc8.img

次に initrd(ramdisk)を更新します。現在の initrd をリネームして新規に作成します:

mv /boot/initrd-`uname -r`.img /boot/initrd-`uname -r`.img_orig2  
mkinitrd /boot/initrd-`uname -r`.img `uname -r`

再起動して、/dev/sda 側からも正常に起動することを確認します:

reboot

起動に問題がなければ完了です。これで稼働中の Fedora 8 システムにソフトウェア RAID1 が正しく追加され、ブート冗長性が確保されました。

受け入れ基準

  • /proc/mdstat ですべての md デバイスが [UU] で表示されること。
  • /etc/mdadm.conf に新しい ARRAY 行が書き出されていること。
  • 両方のディスクからシステムが問題なく起動できること(GRUB 設定と initrd の更新後)。

管理者向けチェックリスト

  • 重要データのバックアップを取得したか
  • /dev/sdX の命名が正しいか二重チェックしたか
  • fdisk でパーティションタイプを fd に変更したか
  • mdadm –add を実行して同期が完了したか(/proc/mdstat)
  • /etc/mdadm.conf を更新したか
  • GRUB の menu.lst を編集して両ディスクで起動可能にしたか
  • initrd を再生成して再起動を確認したか

トラブルシューティング(頻出ケースと対処)

  • 同期が始まらない / md デバイスが _U のまま: 追加したパーティションが正しいデバイスか確認。mdadm –examine /dev/sda1 などで RAID ヘッダを確認。
  • /etc/mdadm.conf に新しい UUID が書かれない: mdadm –examine –scan の結果を手動で確認・追記する。
  • ブートできない: GRUB の root 指定が正しいか(hd0/hd1 の割り当て)と /boot 内のカーネル・initrd の存在を確認。救出メディアで起動して修正する。

代替アプローチと注意点

  • パーティションテーブル変更が不安な場合は、まずライブ環境でテストする。実稼働に直接反映する前に検証環境で同じ手順を試行するのが安全。
  • UEFI 環境や newer ディストリビューションでは grub2 や /boot/efi の扱いが異なるため、本手順は古い BIOS + Fedora 8 の構成向けである点に注意。

コマンド チートシート(重要コマンド)

  • パーティションタイプ変更: fdisk /dev/sda
  • RAID に追加: mdadm –add /dev/mdX /dev/sdaY
  • 同期確認: cat /proc/mdstat
  • mdadm 設定書き出し: mdadm –examine –scan > /etc/mdadm.conf
  • initrd 更新: mkinitrd /boot/initrd-uname -r.img uname -r
  • 再起動: reboot

1行用語集

  • mdadm: Linux のソフトウェア RAID 管理ツール。アレイ作成や追加、検査が可能。
  • initrd: カーネル起動時に使用する初期 RAM ディスク。デバイスドライバなどを含む。
  • GRUB: ブートローダ。ブートデバイスとカーネル起動設定を管理。

要点のまとめ

  • /dev/sda のパーティションタイプを fd に変更し、mdadm で既存アレイに追加して同期する。
  • 同期完了後、/etc/mdadm.conf を更新し、GRUB と initrd を両ディスク対応にして再起動確認する。
  • 事前のバックアップとデバイス名の慎重な確認が重要。
共有する: X/Twitter Facebook LinkedIn Telegram
著者
編集

類似の素材

Windows 11でDISMコマンドを使って修復する方法
Windows

Windows 11でDISMコマンドを使って修復する方法

Windows 11でKB5063878を削除できない時の対処法
Windows

Windows 11でKB5063878を削除できない時の対処法

Windows 11でランサムウェア保護を有効にする方法
セキュリティ

Windows 11でランサムウェア保護を有効にする方法

SprintでiPhone SE(2020)を無料で入手する方法
モバイル

SprintでiPhone SE(2020)を無料で入手する方法

Macで削除ファイルを復元する方法 — Stellarの使い方
ソフトウェア

Macで削除ファイルを復元する方法 — Stellarの使い方

Windows 11 の画面チラつきを修正
トラブルシューティング

Windows 11 の画面チラつきを修正