星光熠熠 2011-05-08
RAID是“RedundantArrayofIndependentDisk”的缩写,翻译成中文即独立冗余磁盘阵列,通过多个磁盘同时存储和读取来大幅提高系统的数据吞吐量。
RAID5以数据的奇偶校验位来保证数据安全,但它不是以单独的磁盘来存放数据的校验位,而是将其交互存放于各个磁盘上。任何一个磁盘损坏,都可以根据其它磁盘的校验位来重建损坏的数据。
下面通过mdadm工具来配置一个RAID5为实例。
一、计算机上安装4块SATA磁盘,分别格式化并标记为RAID类型。
#fdisk/dev/sdb
//显示命令列表
m
//新分区
n
//新建主分区
p
//改变格式
t
//RAID
fd
//查看已经划分好的分区
p
//存盘,退出
w
其它磁盘的操作类似,不重复。
二、使用mdadm创建RAID5
#mdadm-C/dev/md0-l5-n3-x1/dev/sd[b-e]1
mdadm:array/dev/md0started.
选项-C表示创建RAID,选项-l5表示建立的RAID级别为5,选项-n3表示参与构建的工作分区有3个,选项-x1表示有一个磁盘作为备用分区。
查看RAID基本信息
#mdadm-D/dev/md0
查看正在使用的RAID设备的相关信息
#cat/proc/mdstat
三、格式化RAID5并挂载
#mkfs.ext3/dev/md0
挂载
#mkdir/RAIDmnt
#mount/dev/md0/RAIDmnt
查看分区的大小
#df-h
RAID5由4个分区组成,其中有效的分区为3个,另一个为备用。有效的3个分区中,有三分之一是用来存储校验信息的,所有有效的空间只有两个分区的空间。
四、数据恢复的测试
1、模拟sdb1磁盘损坏的情况
#mdadm/dev/md0-f/dev/sdb1
移除磁盘
#mdadm/dev/md0-r/dev/sdb1
查看RAID使用情况是否正常
#cat/proc/mdstat
2、模拟s1c1磁盘损坏的情况
操作类似,不再重复
3、模拟sdb1磁盘恢复的情况
#mdadm/dev/md0-a/dev/sdb1
查看RAID使用情况是否正常
#cat/proc/mdstat
3、模拟sdc1磁盘恢复的情况
操作类似,不再重复
五、开机自动启动RAID
第一种方式通过将命令写入rc.local文件
#mdadm-A/dev/md0/dev/sd[bcde]1
第二种方式使用/etc/mdadm.conf配置文件并修改/etc/fstab
#mdadm-Ds>/etc/mdadm.conf
#vi/etc/mdadm.conf
......
ARRAY/dev/md0level=raid5num-devices=3spares=1UUID=f73c5602:c19541cf:a5facd36:2af47255
#下面为增加内容
device/dev/sdd1/dev/sde1/dev/sdf1/dev/sdg1
......
#vi/etc/fstab
......
/dev/md0/RAIDmntautodefaults00
......