写在前面的话,因为实现 RAID是对系统进行的一项重要的变动(包括创建新分区和其它一些潜在的冒险操作),所以在开始这一过程之前备份整个系统 不失为 一个好主意。如果您不想进行备份,我希望您能使用一台没有什么重要数据的测试机器做必要的测试,包括后期的数据完整性做%/%的校验,平时多细心哪怕辛苦一点总比到时候数据不完整或者丢失,到处抱着磁盘阵列到处回恢复数据要好吧!呵呵!
创建一个大小为10G的RAID0
一、新建所需RAID0的两个分区
使用/dev/sde1/和dev/sdf1进行创建,分区容量大小为各5G,并转换分区为fd
#fdisk /dev/sde #fdisk /dev/sdf # fdisk -l /dev/sd{e,f}
图1、2
注:保存退出后不要对其格式化,因为我们不能去格式化一个software raid 底层的块设备,而是要格式化software raid本身。
二、让内核重新读取分区表
# partx -a /dev/sde1 /dev/sde # partx -a /dev/sdf1 /dev/sdf # cat /proc/partitions
图3
三、把/dev/sde1和/dev/sdf1两个分区创建为RAID0
创建之前先确认/proc/mdstat下面是否有相关文件
# cat /proc/mdstat
图4
# ls -l /dev/md*
图5
既然md0还没有使用,那就让我们从0开始吧!
#mdadm -C -a yes -n 2 -l 0 /dev/sd{e,f}1
四、创建md设备
# mdadm -C /dev/md00 -a yes -l 0 -n 2 /dev/sd{e,f}1
图6
md相关文件的解释说明------〉版本号、设备文件、ID号----------->ASCII码文件,保存了当前主机上所有md设备的映射关系,通过将哪些磁盘分区做成了md设备
#ls -l /dev/md*
图7
#cd /dev/md #file md-device-map
#cat md-device-ma
图8
五、格式化md设备
注:md设备创建完成之后就可以格式化md设备,md是一个独立的设备
#mke2fs -t ext4 /dev/md0
#mke2fs -t ext4 /dev/md0
图9
六、挂载
#mkdir /raid0 #mount /dev/md0 /raid0 #cd /raid0/ #ls #mount
七、监控md0设备、了解md相关信息
#mdadm -D /dev/md0——————》显示md0的详细信息
创建一个大小为20G的RAID1
一、分别在系统中创建两个为20的分区
图1
二、
/#fdisk -l /dev/sd{b,c} 让内核重新读取识别分区/
图2
三、创建md设备
# mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sd{b,c}1
图3
查看是否创建成功
# cat /proc/mdstat
图4
四、格式化md设备
# mke2fs -t ext4 /dev/md1 -L RAID_1
图5
六、
图6
图7
测试RAID1的冗余能力
#cd /mnt #ls;pwd #cp /etc/issue ./ #mount
图8
二、假如,RAID1种的某块硬盘坏掉了,那么/mnt挂载点还可以使用吗?
对于RAID1来说,坏掉一块硬盘的话真的不影响数据访问吗?
三、开始破坏
# mdadm /dev/md1 -f /dev/sdb1 # mdadm -D /dev/md1
图9
# cat issue
图10
复制文件进来试试看,测试写操作
图11
测试读操作
图12
OK,没问题!
三、移除坏掉的磁盘
# mdadm /dev/md1 -r /dev/sdb1
图13
四、假如/dev/sd这块磁盘修好了,我们怎样添加到它的RAID组中呢?
# mdadm /dev/md1 -a /dev/sdb1 # mdadm -D /dev/md1
图14
# mdadm -D /dev/md1
数据重建成功
模拟RAID1中的第二块磁盘损坏
一、
# mdadm /dev/md1 -f /dev/sdc1 # mdadm -D /dev/md1
图16
二、对/mnt目录进行读写操作
# ls /mnt/ # cat /mnt/issue -n # echo "i love linux so much " >> /mnt/love.txt # cat /mnt/love.txt -n
图17
图18
图19
RAID1 中三块磁盘 一块做备用盘
# mdadm -C /dev/md2 -a yes -l 1 -n 2 -x 1 /dev/sd{b,c,d}2
图20
# fdisk -l /dev/sd{b,c,d}
图21
格式化md设备
# mke2fs -t ext4 /dev/md2
图22
挂载#mount /dev/md2 /mnt/
# cp /etc/fstab /mnt/ # cat /mnt/fstab
图23
模拟一块磁盘损坏
图24
# mdadm /dev/md2 -r /dev/sdb2 # mdadm -D /dev/md2
图25
查看文件完好无损哦
图26
创建一个大小为10G的RAID5
# ls /dev/md*
# mdadm -C /dev/md3 -a yes -l 5 -n 3 /dev/sd{b,c,d}3
图27
图
28
# cat /proc/mdstat
图29
创建md设备
# mdadm -D /dev/md3
图30
格式化md设备
# mke2fs -t ext4 /dev/md3
图31
# mount /dev/md3 /mnt/ # cp /etc/issue /mnt/issue # cat /mnt/issue
图32
模拟/dev/sd磁盘损坏
# mdadm /dev/md3 -f /dev/sdb3 # mdadm -D /dev/md3
图33
数据可以正常访问哦
图34
# mdadm -D /dev/md3
图35
再坏掉一块的话会怎么样呢?试试不就知道了啊,呵呵,要敢于尝试吗!!!!
# mdadm /dev/md3 -f /dev/sdc3 # cat -n /mnt/issue
图36
图37
# mdadm -D /dev/md3
到此,关于RAID的相关实操就到此结束,此实验仅供学习交流使用,请勿在实际生产环境中模仿哦!
文中所有的操作与RAID相关,与本人无关哦!