** linux software raid 5 sample
Redhat Linux 裡有軟體的磁碟陣列 raid, 內(nèi)定使用的型式為 raid-0 及 raid-1, 如果要使用 raid-5, 底下是一個(gè)簡單的例子.
1. 使用系統(tǒng)
軟體環(huán)境 : Redhat Linux 7.2
硬體環(huán)境 : 使用 amd-k6-200, 128Mb 記憶體, 4 個(gè) 2.8G 的 IDE 硬碟, 其中第一個(gè)硬碟作為系統(tǒng)硬碟, 第2,3,4則打算作為 raid-5 的磁碟陣列.
首先使用 fdisk 將第 2,3,4 個(gè)硬碟作分割, 並將分割區(qū)格式設(shè)為 Linux raid autodetect.
( fdisk 的使用方法, 請參考其他資料)
use fdisk to create partions
# fdisk /dev/hdb
Command (m for help): p
Disk /dev/hdb: 128 heads, 63 sectors, 697 cylinders
Units = cylinders of 8064 * 512 bytes
Device Boot Start End Blocks Id System
/dev/hdb1 1 697 2810272+ fd Linux raid autodetect
-------------------------------------------------------------------
Disk /dev/hdc: 16 heads, 63 sectors, 5583 cylinders
Units = cylinders of 1008 * 512 bytes
Device Boot Start End Blocks Id System
/dev/hdc1 1 5583 2813800+ fd Linux raid autodetect
--------------------------------------------------------------------
Disk /dev/hdd: 16 heads, 63 sectors, 5583 cylinders
Units = cylinders of 1008 * 512 bytes
Device Boot Start End Blocks Id System
/dev/hdd1 1 5583 2813800+ fd Linux raid autodetect
============================================
2. 編輯 /etc/raidtab (磁碟陣列設(shè)定檔)
如果你使用 Redhat 7.2 , 你可以在 /usr/share/doc/raidtools-0.90/raid5.conf.sample 中找到樣本範(fàn)例 . 我們將之拷貝為 /etc/raidtab , 並根據(jù)自身的硬體配置作修改. 以這次使用三個(gè) ide 硬碟作為磁碟陣列, 設(shè)定檔如下
# Sample raid-5 configuration
raiddev /dev/md0 #### 設(shè)定裝置名稱為 /dev/md0
raid-level 5 #### 磁碟陣列等級為 raid-5
nr-raid-disks 3 #### 資料碟有 3 個(gè)
chunk-size 4
persistent-superblock 1
# Spare disks for hot reconstruction
#nr-spare-disks 0 #### 備份硬碟為 0 個(gè)
#
# the best one for maximum performance:
#
parity-algorithm left-symmetric
device /dev/hdd1 ### 第一個(gè)磁碟陣列
raid-disk 0
device /dev/hdc1 ### 第二個(gè)磁碟陣列
raid-disk 1
device /dev/hdb1 ### 第三個(gè)磁碟陣列
raid-disk 2
#spare-disk 0
3. 開動陣列, 並作格式化 start raid and mkfs
以 root 身份執(zhí)行下列指令
# raidstart /dev/md0 ### 啟動 raid
# mkfs /dev/md0 ### 格式化
4. 設(shè)定開機(jī)時(shí)掛上 raid
在 /etc/rc.local 後面加上如下的指令, (### 之後為說明, 不需輸入)
# raid 5
echo "Raid 5 start..."
raidstart # raid 5
echo "Raid 5 start..."
raidstart /dev/md0 ### 啟動 raid
if [ ! -d /mnt/raid ] ### 預(yù)定掛入點(diǎn)為 /mnt/raid
then
mkdir /mnt/raid ### 如果掛入點(diǎn)不存在, 則建立資料夾
chmod 777 /mnt/raid ### 設(shè)定全部可讀寫
fi
mount /dev/md0 /mnt/raid ### 將磁碟陣列掛上掛入點(diǎn)
5. 重新開機(jī), 藉著查看/proc/mdstat 檢查陣列是否已啟動
# cat /proc/mdstat
Personalities : [raid5]
read_ahead 1024 sectors
md0 : active raid5 hdb1[2] hdc1[1] hdd1[0]
5620352 blocks level 5, 4k chunk, algorithm 2 [3/3] [UUU]
unused devices: <none>
6. 用 df 檢查 陣列的容量
# df
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/hda2 2456560 754528 1577244 33% /
/dev/hda1 50723 5969 42135 13% /boot
none 63392 0 63392 0% /dev/shm
/dev/md0 5532052 20 5251016 1% /mnt/raid
容量為 5532052 , 為 2810272 的兩倍 . 第3個(gè)硬碟作為同位元檢查之用.
下午 05:07 2002/6/2