次のページ 前のページ 目次へ

6. RAID ファイルシステムの構築

この記述は,システム仕様で述べた筆者の RAID1 システムに関してのもので す.あなたのシステムが異なる RAID のアーキテクチャを採用している場合は, 適宜修正してください.詳しくは raidtools-0.42 に付属しているオンライン マニュアルか,QuickStart.RAID を参照してください.

6.1 /etc/raid5.conf

        # raid-5 configuration
        raiddev                 /dev/md0
        raid-level              5
        nr-raid-disks           4
        chunk-size              32

        # Parity placement algorithm
        parity-algorithm        left-symmetric

        # Spare disks for hot reconstruction
        #nr-spare-disks         0

        device                  /dev/sda3
        raid-disk               0

        device                  /dev/sdb3
        raid-disk               1

        device                  /dev/sdc3
        raid-disk               2

        device                  /dev/sdd3
        raid-disk               3

6.2 /etc/raid1.conf

        # raid-1 configuration
        raiddev                 /dev/md0
        raid-level              1
        nr-raid-disks           2
        nr-spare-disks          0

        device                  /dev/hda4
        raid-disk               0

        device                  /dev/hdc4
        raid-disk               1

6.3 仕事用 RAID ファイルシステムを構築するための具体的手順

筆者の RAID5 システムでは,以下のものをインストールしています.

        Slackware-3.4           どのディストリビューションでも大丈夫でしょう
        linuxthreads-0.71
        raidtools-0.42
        linux-2.0.33 に raid145 パッチと Gadi 氏のパッチを当てたもの

RAID デバイスを作成,フォーマットします.

        mkraid /etc/raid5.conf
        mdcreate raid5 /dev/md0 /dev/sda3 /dev/sdb3 /dev/sdc3 /dev/sdd3
        mdadd -ar
        mke2fs /dev/md0
        mkdir /md
        mount -t ext2 /dev/md0 /md
reboot が使う参照ファイルを作成します.これは読者のシステムでは異なる かもしれません.
        cat /proc/mdstat | grep md0 > /dosa/raidboot/raidgood.ref
        cat /proc/mdstat | grep md0 > /dosb/raidboot/raidgood.ref
Slackware-3.4 または別のパッケージを用いて,OS をインストールします.
        setup
インストール先には `/md' を,インストール元には読者が普段使っているも のを指定します.カーネルを除く必要なディスクセットを選択,インストール します.(Slackware の場合)システム設定(Configure)を実行しますが,lilo とカーネルの起動の項目は飛ばします.最後に setup コマンドを終了します.

`pthreads' をインストールします.

        cd /usr/src/linuxthreads-0.71
Makefile を編集し,環境変数を指定します.
        BUILDIR=/md

        make
        make install
`raidtools' をインストールします.
        cd /usr/src/raidtools-0.42
        configure --sbindir=/md/sbin --prefix=/md/usr
raidtools の `make install' で発生するエラーを修正します.
        cd /md/sbin
        rm mdrun
        rm mdstop
        ln -s mdadd mdrun
        ln -s mdadd mdstop
/dev/mdx を作ります.
        cp -a /dev/md* /md/dev
現在のシステムからシステム設定を追加します(エラーは無視します).
        cp -dp /etc/* mnt/etc
        cp -dp /etc/rc.d/* mnt/etc/rc.d         (新しい rc.6 を含む)
        mkdir  mnt/lib/modules
        cp -a  /lib/modules/2.x.x mnt/lib/modules <— 現在使っているカーネル 2.x.x のバージョン
以下のファイルを編集し,読者のファイルシステムに合わせて修正します.
        cd /md

非ネットワーク関係
        etc/fstab       実際のルートファイルシステムと RAID デバイス用に修正します
        etc/mdtab       うまく動作するはずです
ネットワーク関係
        etc/hosts
        etc/resolv.conf 
        etc/hosts.equiv         及び関連ファイル
        etc/rc.d/rc.inet1       IP アドレス,ネットマスク,ゲートウェイ等
        etc/rc.d/rc.S           ファイルシステムのステータスについての部分を全て削除
                        # Test to see if the root partition isread-only
                の部分から
                        # remove /etc/mtab* so that mount will .....
                までを含まないようにします.これにより,RAM ディスクが
                読み書き可能でマウントされると出るうるさいウォーニング
                が出なくなります.
        etc/rc.d/rc.xxxxx       必要ならば他のファイルも
        root/.rhosts            もし存在すれば
        home/xxxx/xxxx          必要ならば他のファイルも

    警告:       この操作で,パスワードとシャドウパスワードのファイルも
                新しいファイルシステムに移されます!これはセキュリティ
                の点からは,望ましくないかもしれません.
システム上で一意であることが必要な /dev/disk... をマウントするための辞 書を作成します.筆者の場合は以下のようになりました.
        cd /md          <— 新しいファイルシステムのルート
        mkdir dosa                      DOSパーティションのマウントポイント

        mkdir dosb                      DOS ミラーパーティションのマウントポイント
新しいファイルシステムは完成です.md の参照ステータスを `実際の'ルート デバイスに確認・保存すれば,起動の準備は終わりです.

DOS パーティションを dosa, dosb にマウントします.

        cat /proc/mdstat | grep md0 > /dosa/raidboot/raidgood.ref
        cat /proc/mdstat | grep md0 > /dosb/raidboot/raidgood.ref

        mdstop /dev/md0


次のページ 前のページ 目次へ