以raid5為例:
1、添加4塊磁盤
要求:容量、轉速、接口一樣的硬盤。
2、創建分區並修改ID
[root@localhost ~]# fdisk /dev/sdb
[root@localhost ~]# fdisk /dev/sdc
[root@localhost ~]# fdisk /dev/sdd
[root@localhost ~]# fdisk /dev/sde
注意:修改ID為fd(支持raid)
Device Boot Start End Blocks Id System
/dev/sdb1 1 652 5237245+ fd Linux Raid autodetect
/dev/sdc1 1 652 4563889+ fd Linux Raid autodetect
/dev/sdd1 1 652 1254356+ fd Linux Raid autodetect
/dev/sde1 1 652 7034359+ fd Linux Raid autodetect
3、創建Raid5
[root@localhost ~]# mdadm --version
[root@localhost ~]# mdadm -V
[root@localhost ~]# cat /proc/devices | grep md
[root@localhost ~]# ls /dev/md* #查看軟陣列(software RAID)的設備文件名
[root@localhost ~]# mdadm -C[創建] /dev/md0[Raid5的名稱] -l5[RAID的級別] -n3[活躍的設備塊數] -x1[熱備的設備塊數] /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1
[root@localhost ~]# cat /proc/mdstat
[root@localhost ~]# mdadm –Ds
[root@localhost ~]# mkfs -t ext3 /dev/md0 #格式化設備md0
[root@localhost ~]# mkdir /md0
[root@localhost ~]# mount /dev/md0 /md0/ #掛載使用
[root@localhost ~]#df -hT #查看可用空間
[root@localhost ~]#mdadm -Ds > /etc/mdadm.conf #生成磁盤陣列配置文件
4、修復Raid5磁盤陣列
[root@localhost ~]# mdadm -Ds /dev/md0 #查看指定的設備 :此命令可以查看活躍設備和熱備設備。
[root@localhost ~]#mdadm -f /dev/md0 /dev/sdc1 #標識 sdc1設備已壞
[root@localhost ~]#mdadm -Ds /dev/md0
[root@localhost ~]#mdadm -r /dev/md0 /dev/sdc1 #移除已壞設備sdc1
[root@localhost ~]#mdadm -Ds /dev/md0
[root@localhost ~]#mdadm -a /dev/md0 /dev/sdc1 #sdc1設備修好以后,添加到md0中,作為熱備設備。
默認情況下,系統中只有/dev/md0這個塊設備文件。如果還需要其他的raid的話,那么就需要手動創建了。如下:
[root@localhost ~]# mknod /dev/md1[創建md1塊設備文件,] b[表示塊設備] 9[主設備號,9表示磁盤陣列,主設備號不能修改。] 1[1代表從設備號,從設備號在系統內唯一。]
[root@localhost ~]# vim /etc/rc.local
添加:mknod /dev/md1 b 9 1 # dev/md1文件在系統重啟之后就丟失,為了能夠在系統啟動時自動產生,在rc.local文件里添加mknod /dev/md1 b 9 1命令。]
[root@localhost ~]# ls /dev/md*
[root@localhost ~]# mknod /dev/md1 b 9 1
[root@localhost ~]# mknod /dev/md2 b 9 2
[root@localhost ~]# mknod /dev/md3 b 9 3
[root@localhost ~]# ls /dev/md*
其他:
mdadm使用選項:
--create(或其縮寫-C)參數來創建新的陳列並且將一些重要陣列的標識信息作為元數據可以寫在每一個底層設備的指定區間
--level(或者其縮寫-l)表示陣列的RAID級別
--chunk(或者其縮寫-c)表示每個條帶單元的大小,以KB為單位,默認為64KB,條帶單元的大小配置對不同負載下的陣列讀寫性能有很大影響
--raid-devices(或者其縮寫-n)表示陣列中活躍的設備個數
--spare-devices(或者其縮寫-x)表示陣列中熱備盤的個數,一旦陣列中的某個磁盤失效,MD內核驅動程序自動用將熱備磁盤加入到陣列,然后重構丟失磁盤上的數據到熱備磁盤上。
創建一個RAID 0設備:
mdadm --create /dev/md0 --level=0 --chunk=32 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1
創建一個raid 1設備:
mdadm --create /dev/md0 --level=1 --chunk=128 --raid-devices=2 --spare-devices=1 /dev/sdb1 /dev/sdc1 /dev/sdd1
創建一個RAID5設備:
mdadm --create /dev/md0 --level=5 --raid-devices=5 /dev/sd[c-g]1 --spare-devices=1 /dev/sdb1
創建一個RAID 10設備:
mdadm -C /dev/md0 -l10 -n6 /dev/sd[b-g] -x1 /dev/sdh
創建一個RAID1+0設備:
mdadm -C /dev/md0 -l1 -n2 /dev/sdb /dev/sdc
mdadm -C /dev/md1 -l1 -n2 /dev/sdd /dev/sde
mdadm -C /dev/md2 -l1 -n2 /dev/sdf /dev/sdg
mdadm -C /dev/md3 -l0 -n3 /dev/md0 /dev/md1 /dev/md2
要停止一個陣列設備 類如顯示array is started 要先停止此設備 先卸載
Umount /dev/md0 然后 mdadm –S /dev/md0
、清除成員磁盤當中陣列的超級塊信息,這一步很重要!
[root@linux02 ~]# mdadm --zero-superblock /dev/sdb[1-3,5]
、刪除或注釋/etc/fstab上的掛載信息
[rootlinux02 ~]# vim /etc/fstab
#UUID=796a27da-d899-4e64-a3bd-b468fb0c4f37 /mnt/raid5 ext4 defaults 0 0
、刪除或注釋/etc/mdadm.conf對應的RAID信息:
[root@linux02 ~]# vim /etc/mdadm.conf
#ARRAY /dev/md0 metadata=1.2 spares=1 name=kashu.localdomain:0 UUID=3895d28e:bdcaed28:136b4cf6:d2a858f5
、如果做完上面所有的操作后,發現/dev/下還有md0這個設備文件存在,直接rm -f /dev/md0即可