Misc/LinuxでSoftwareRAID のバックアップ(No.6)


本当はHardwareRAIDにしようと思っていたのだが、安いIDE RAIDカードは「カード+ドライバ」でRAIDと機能することが判明。そこでLinuxのドライバを探したものの、見つからなかったので挫折。そのためSoftwareRAIDにてRAID0を実現。

概要

hde:起動ディスク
hdg:空ディスク

から

hde:起動ディスク -(コピー)-> hdg:RAID1化(hdeダミー参加,hdg)

そして

hde:RAID1化(hde,hdg) <-(コピー)- hdg:RAID1化済、rootとして起動

で、

hde:RAID1化済
hdg:RAID1化済

とする。わかりづらいなorz

下準備

Vine Linux 3.2 kernel再構築

hdgの準備

# /sbin/fdisk /dev/hdg

パーティション設定をする。この際、hde1, hde2 がそれぞれ hdg1, hdg2 よりも小さいと追加できないので注意すること。

/dev/hdg1     1-19202 ext3 /
/dev/hdg2 19203-19457 swap

設定ファイルの作成

# vi /etc/raidtab
# md0 is the root array
raiddev                 /dev/md0
raid-level              1
nr-raid-disks           2
chunk-size              8
nr-spare-disks          0
persistent-superblock   1
device                  /dev/hdg1
raid-disk               0
device                  /dev/hde1
failed-disk             1

# md1 is the root array
raiddev                 /dev/md1
raid-level              1
nr-raid-disks           2
chunk-size              8
nr-spare-disks          0
persistent-superblock   1
device                  /dev/hdg2
raid-disk               0
device                  /dev/hde2
failed-disk             1

RAIDの構築

# /sbin/init 1          # シングルユーザーモードへ
# /sbin/raidstop --all  # RAIDを念のため停止

RAIDを作成

# mkraid /dev/md0
# mkraid /dev/md1

フォーマット

# mkfs.ext3 /dev/md0
# mkfs.ext3 /dev/md1

hde:起動ディスク -(コピー)-> hdg:RAID1化(hdeダミー参加,hdg)

# mkdir /mnt/raidroot   # RAIDシステムコピー用マウントポイント作成
# mount /dev/md0 /mnt/raidroot
# cd /
# find . -xdev | cpio -pm /mnt/raidroot

swapの構築

# mkswap /dev/md1
# swapon -a

RAIDからの起動へ変更

lilo.confの変更と反映

/sbin/lilo -v -r /mnt/raidroot を行う際にどっちが使われるかよくわかっていないため /etc, /mnt/raidroot/etc 両方の lilo.conf を同じに変更しておく。

prompt
timeout=50
# VESA framebuffer console
#  ex. 0x301=640x480x8, 0x314=800x600x16, 0x317=1024x768x16, 0x31A=1280x1024x16
vga=0x314
default=linux
boot=/dev/hde1
map=/boot/map
install=menu
message=/boot/message

image=/boot/bzImage
        label=linux
        initrd=/boot/initrd-2.4.31-0vl1.8.img
        read-only
        root=/dev/md0
# RAIDにしたROOTデバイスを指定
        append=" resume2=swap:/dev/md1"
# SWAPデバイスを指定

編集後反映

# /sbin/lilo -v -r /mnt/raidroot

fstabの変更

fstab は /mnt/raidroot/etc/fstab を変更

/dev/md0 /        ext3    defaults       1 1
none     /dev/pts devpts  gid=5,mode=620 0 0
none     /proc    proc    defaults       0 0
none     /dev/shm tmpfs   defaults       0 0
/dev/md1 swap     swap    defaults       0 0

変更後、リブート

# /sbin/init 6

hde のRAIDへの組み込み

raidtabの編集

# vi /etc/raidtab
failed-disk         1

raid-disk           1

へ変更し、hde をRAIDに組み込み

# /sbin/raidhotadd /dev/md0/dev/hde1
# /sbin/raidhotadd /dev/md1/dev/hde2

進行状況はmdstatを見ればよい

# cat /proc/mdstat

lilo.confの変更と反映

prompt
timeout=50
# VESA framebuffer console
#  ex. 0x301=640x480x8, 0x314=800x600x16, 0x317=1024x768x16, 0x31A=1280x1024x16
vga=0x314
default=linux
boot=/dev/md0
# bootを入れたRAIDデバイスを指定
raid-extra-boot="/dev/hde,/dev/hdg"
# raid-extra-bootに指定したデバイスにもliloを書き込んでくれる
map=/boot/map
install=menu
message=/boot/message

image=/boot/bzImage
        label=linux
        initrd=/boot/initrd-2.4.31-0vl1.8.img
        read-only
        root=/dev/md0
# ROOTデバイスを指定
        append=" resume2=swap:/dev/md1"
# SWAPデバイスを指定

編集後反映、RAIDの構築終了後に lilo を実行すること

# /sbin/lilo -v

リブート

# /sbin/init 6

参考サイト


URL:
コメント:

注意)このバージョンのsafariではjavascriptがうまく動作しないので、recaptchaはページ切り替え版を利用しています。
トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS