2011-08-26

Linux (Ubuntu 11.04)で2TB超のHDをソフトウェアRAID化する (4)

(承前)

sdaをRAIDに参加させる

無事に/dev/md0からブートできただろうか?この時点でsdaは最早使われていない。あとはこのsdaを片肺飛行しているRAIDに加えればおしまいだ。まずsdaのパーティションのraidフラグを立てる。

$ sudo parted /dev/sda
(parted) toggle 2 raid
(parted) toggle 3 raid
(parted) toggle 4 raid
(parted) quit

さていよいよRAIDにsdaを参加させる。

$ sudo mdadm --add /dev/md0 /dev/sda2
$ sudo mdadm --add /dev/md1 /dev/sda3
$ sudo mdadm --add /dev/md2 /dev/sda4

これにより、参加させたsdaの同期が始まる。同期の様子を見るには以下のようにする。

$ watch cat /proc/mdstat

同期が終わったら再起動でもしておく。

$ sudo reboot

この時点では、以前に作った/etc/grub.d/09_raidによるgrubエントリの生成は必要がなくなっている。update-grubによってちゃんと作られるからだ。/etc/grub.d/09_raidを用意した時点ではsdaがマウントされている状態でmd0のブート用のエントリを作ろうとしたのに対し、いまはmd0がマウントされている状態でmd0のブート用のエントリを作ろうとしているからである。ついでにupgradeも行おう。

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo rm /etc/grub.d/09_raid
$ sudo update-grub
$ sudo update-initramfs -u
$ sudo grub-install /dev/sda
$ sudo grub-install /dev/sdb
$ sudo reboot

以上でゴールが実現できた。

References

検索するといっぱい出てくるが、どれも試すとなかなか最後まで行かない。最も近いところまで行き、内容も参考になったのが以下のページ(英語): [How To Set Up Software RAID1 On A Running System (Incl. GRUB2 Configuration) (Ubuntu 10.04) | HowtoForge - Linux Howtos and Tutorials]

GPTと2048セクタへのアラインについては以下のページが参考になった: [LinuxMania: RAIDボリュームからのブートとパーティション]

その他、以下のページ群から情報をつなぎ合わせて問題が解決した: [Linuxでmdadmを使ったソフトウェアRAIDの構築・管理メモ - nabeの雑記帳], [RAID1 on etch | qos webmaster's blog], [Ubuntu を BeyondRAID 環境へ移行する (1/2) - nigakyのメモ帳]

0 件のコメント:

コメントを投稿