読者は色々なタイプの RAID の実装とそれらの利点や欠点をよくわかっている ものと仮定します.本文書はチュートリアルではなく,Linux システムで RAID をルートにマウントする方法の手順だけを示すものです.Linux の RAID について知るために必要な情報は全て文書内で直接示すか,参考文献として示 しています.ですから私に質問のメールを送るのはそれらをよく調べた上で行っ てください.
Root-RAID-HOWTO
LaTeX (DVI や PostScript を作れます),テキスト,HTML の各フォーマット で入手できます.
sunsite.unc.edu/mdw/HOWTO/SGML と HTML 形式で入手できます.
ftp.bizsystems.com/pub/raid/
この文書を書いている時点で,ルートにマウントした RAID デバイスが停止す る問題は完全には解決されていません.Ed Welbon さんが提案し,Bohumil Chalupa さんが実装した回避方法はこの文書に含まれています.これは RAID1 と RAID5 デバイスの場合に,毎ブート時の長い ckraid コマンドが必要では なくなるというものです.この回避方法を行わないと,システムを再起動する 度に md デバイスに対して ckraid が必要となります.これだと大 きなアレイの場合には,システムの性能が大幅に低下してしまいます.筆者の Pentium 166, メモリ 128M のシステム上で動作している 6G の RAID1 デバイ スでは,再起動の度に ckraid に30分以上もかかってしまいます :-( 転送速 度 20MB/秒の SCSI アダプタに接続している 15ギガバイトの RAID5 アレイの 場合は1時間以上かかります.
回避方法というのは,シャットダウン時にアレイの状態を実際のブート デバイスに保存して,ここに置いてある最初にシステムを構築した時の参照 ステータスと比較するものです.ステータスが再起動のときに一致していれば アレイのスーパーブロックは次のブート時に再構築され,そうでなければオペ レータにステータスエラーを通知し,全ての RAID ツールが使用可能な 復旧システムが残されます.
スーパーブロックを再構築することで,全てのドライブにOKの印を付け られてしまい,mdstop を実行せずにアレイの電源が切られたことがシステム に無視されることが起こります.これは全てのドライブのステータスがシャッ トダウン時にOKである場合しか正しく動作しません.異常があるドライブでア レイが動いている場合には,md デバイスを再スタートさせる前に異常なドライ ブを取り除く必要があり,そうでなければデータが壊れてしまうことがありま す.
RAID0 の場合はシャットダウン前に mdstop を行う必要が無いので,上記のこ とはいずれもあてはまりません.
この問題に対して最終的に提案された解は,initrd に似た finalrd と,デバイスがリードオンリーの時はシャットダウン中に clean フラグを書き込む mdrootstopを導入することです. 他の方法もきっとはあることでしょう.
とにかく,今のところは問題を避けることはできています. この問題をもっとうまく解決されたらぜひ私にお知らせください.
以下の方々の文書やメールのおかげでこの文書が完成しました.アイディアの ほとんどは他の人のものをもらってきたもので,私はこれらを COOKBOOKの形にまとめ,すぐに使えるようにしただけです.
This document is GNU copyleft by Michael Robinton michael@bzs.org.
Permission to use, copy, distribute this document for any purpose is hereby granted, provided that the author's / editor's name and this notice appear in all copies and/or supporting documents; and that an unmodified version of this document is made freely available. This document is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY, either expressed or implied. While every effort has been taken to ensure the accuracy of the information documented herein, the author / editor / maintainer assumes NO RESPONSIBILITY for any errors, or for any damages, direct or consequential, as a result of the use of the information documented herein.