一般来说做raid5的最少硬盘要求是3个,这次我是用虚拟机做的,自己添加了4块硬盘为:sdb,sdc,sdd,sde.linux系统自带了制作raid的软件 mdadm

  1. 首先我们把4个硬盘都分出4个大小一样的分区,然后做成raid格式的分区(Linux raid autodetect)

命令如下

fdisk /dev/sdb

 

Command (m for help): n

Command action

   e   extended

   p   primary partition (1-4)

p

Partition number (1-4): 1

First cylinder (1-2610, default 1): 

Using default value 1

Last cylinder or +size or +sizeM or +sizeK (1-2610, default 2610): +2G

Command (m for help): t

Selected partition 1

Hex code (type L to list codes): fd

Changed system type of partition 1 to fd (Linux raid autodetect)

 

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

Syncing disks.

然后其他几个盘也这样分出来

    2.现在有4个做好了的分区为sdb1,sdc1,sdd1,sde1,通过软件命令做成阵列

mdadm -C -v /dev/md0 -l5 -n3 /dev/sdb1 /dev/sdc1 /dev/sdd1 -x1 /dev/sde1

 

mdadm: layout defaults to left-symmetric

mdadm: chunk size defaults to 64K

mdadm: size set to 1959808K

mdadm: array /dev/md0 started

 

-C 创建后面创建RAID块设备名称 -l 5 指明创建raid5 -n 3用于创建raid5磁盘的数量,即活动磁盘的数量,raid5最少3块磁盘,-x 1备用磁盘的数量 

   3.格式化raid5并挂在

mkfs.ext3 /dev/md0

mkdir /raid5

mount /dev/md0 /raid5

为了开机能挂在我们需要修改etc/fstab文件

   4.查看raid5的分区状态信息

mdadm --detail /dev/md0

 

    Number   Major   Minor   RaidDevice State

       0       8       17        0      active sync   /dev/sdb1

       1       8       33        1      active sync   /dev/sdc1

       2       8       49        2      active sync   /dev/sdd1

       3       8       65        -      spare   /dev/sde1

可以看到sdb1,sdc1,sdd1为active活动的状态而sde1为spare备份的状态

 移除分区

mdadm /dev/md0 remove /dev/sdc1

添加分区

mdadm /dev/md0 -a /dev/sdf1

激活分区

先查看下状态

mdadm --detail /dev/md0

mdadm -G /dev/md0 -n 4(第4个分区)

******建立raid配置文件,如果没有配置文件,在停止raid后就无法在激活了

 echo DEVICE /dev/sd[bcde]1 > /etc/mdadm.conf
mdadm -D /dev/md0 >>/etc/mdadm.conf
cat /etc/mdadm.conf
 停用,卸载
umount /dev/md0
mdadm --stop /dev/md0
mdadm --detial /dev/md0
从新启用
mdadm --assemble -scan /dev/md0

删除RAID:

1.删除所有raid对应的磁盘或分区

  mdadm /dev/md0 --fail /dev/sd[b,c,d,e,f]1 --remove /dev/sd[b,c,d,e,f]1

2.停止raid

  mdadm --stop /dev/md0

3.清空磁盘(分区)超级块中的raid信息

  mdadm --misc --zero-superblock /dev/sd[b,c,d,e,f]1