Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)

         最近按教程创建了RAID5,遇到一点小问题,希望记录下来,能对大家有点帮助。

         实验环境

         Ubuntu 16.04.1 + VMware Workstation 12 Player

        实验目的

        使用mdadm创建软raid5,模拟故障测试,了解raid5是怎样工作的。

         首先配置好基础的环境,在虚拟机中添加四块3G的SCSI硬盘。很简单,虚拟机设置中选add即可。

         接着就是管理工具mdadm的下载安装了,Ubuntu使用apt-get命令即可,很多教程使用yum命令,那是针对Redhat、Centos包管理工具。

       环境搭建好后,正式开始创建RAID5啦。

       1 先用 fdisk -l 查看四块磁盘的设备号,分别是/dev/sdb1, /dev/sdc1, /dev/sdd1, /dev/sde1;

       2 对磁盘进行分区 fdisk /dev/sdb1 ,接下来输入n进行分区 输入p选择创建主分区,输入1创建第一个主分区,直接回车选择分区开始柱面(默认从1开始),直接回车选择分区结束柱面(默认最后一个柱面),输入t修改格式,输入fd指定分区类型为Linux raid auto,输入w保存。同样的步骤对剩下三个盘操作。全部做完后,通过fdisk -l查看结果:

Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)_第1张图片

       3 创建raid5,使用sdb1,sdc1,sdd1做数据盘,sde1做热备份

      mdadm -C -v /dev/md0 -l5 -n3 /dev/sd[bcd]1 -x1 /dev/sde1,其中C表示创建,v表示细节,新分区的设备号是md0,l5表示创建的raid5,n3表示3个数据盘,-x1表示一个空闲盘。

Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)_第2张图片

       4 格式化阵列,分完区后还要格式化阵列,不然写不了数据,mkfs -t ext3 /dev/md0,格式化为ext3格式。

Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)_第3张图片

       5 格式化完成后,把这个raid5挂载到某个目录下正常使用。

mkdir /mnt/raid 

mount /dev/md0 /mnt/raid 将raid挂在到/mnt/raid目录下。


       6 查看raid信息,cat /proc/mdstat

Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)_第4张图片

       7 故障模拟

(1)首先启动raid mdadm  -A  /dev/md0    /dev/sd[bcde]1

Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)_第5张图片

(2)将/dev/sdb1标记为已损坏的设备

       损坏前raid的状态

Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)_第6张图片

       mdadm /dev/md0 -f /dev/sdb1标记后raid的状态

Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)_第7张图片

       过会儿再次查看raid的状态

Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)_第8张图片

        几个图对比可以看出,阵列中出现数据损坏的时候,能够自动重构和恢复数据,损坏的磁盘标记出来,备用磁盘用来存储数据。

(3)故障处理:移出损坏磁盘,将新设备添加到阵列中。

       mdadm /dev/md0 -r /dev/sdb1删除损坏 

Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)_第9张图片

       mdadm /dev/md0 -a /dev/sdb1添加新磁盘到阵列中

Linux md raid5 - mdadm创建软RAID5(模拟出错和出错恢复)_第10张图片

       这样就完成mdadm创建raid5,模拟故障和故障恢复的小实践啦~ 希望对你有帮助~ 每天好心情哦~

你可能感兴趣的:(Linux,md,raid5)