Linux下的软raid实验一例

一共5块盘,其中一个为备用盘。

mdadm--create --auto=yes /dev/md0 --level=5 --raid-devices=4 --spare-devices=1/dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1

查看raid详细信息

mdadm--detail /dev/md0

/dev/md0:--设备名

Version : 1.2

Creation Time : Mon Mar 5 23:00:11 2012 --raid创建时间

Raid Level : raid5--raid级别

Array Size : 3131904(2.99 GiB 3.21 GB) --raid可用的磁盘容量

Used Dev Size : 1043968(1019.67 MiB 1069.02 MB) --每个设备的可用容量

Raid Devices : 4 --用作raid的设备数量

Total Devices : 5 --raid使用的全部设备数量

Persistence : Superblock is persistent

Update Time : Mon Mar 5 23:00:46 2012

State : clean, degraded, recovering

Active Devices : 3--启动的设备数量 (初始创建的时候,会一个一个增加,直到数量等于用作raid的设备数量)

Working Devices : 5 --可动作的设备数量

Failed Devices : 0 --出错的设备数量

Spare Devices : 1 --备用盘的数量

Layout : left-symmetric

Chunk Size : 512K

Rebuild Status : 33% complete

Name : rhel6:0 (local to host rhel6)

UUID :94396413:711b06a3:8a3b3df5:737c953e --raid标识符

Events : 6

NumberMajor Minor RaidDevice State

08 33 0active sync /dev/sdc1

18 49 1active sync /dev/sdd1

28 65 2active sync /dev/sde1

5 881 3 spare rebuilding /dev/sdf1 --表示正在重建

48 97 -spare /dev/sdg1

[root@rhel6~]# cat /proc/mdstat

Personalities :[raid6] [raid5] [raid4]

md0 : active raid5 sdf1[5] sdg1[4](S) sde1[2] sdd1[1] sdc1[0]--使用了raid5 ,并且显示了有哪些盘,(S)表示的是spare备用盘。

3131904 blocks super 1.2level 5, 512k chunk, algorithm 2 [4/4] [UUUU] --uuuu表示的是四个启动盘的状态,U表示正常运作,_表示不正常。

unused devices:<none>

可以挂载使用raid5 磁盘

先格式化

[root@rhel6 ~]# mkfs -t ext4 /dev/md0

[root@rhel6 ~]# mkdir /d_raid5

[root@rhel6 ~]# mount /dev/md0 /d_raid5/

挂载完成后,向里面插入点东西。

[root@rhel6d_raid5]# cp -a /etc /var/log /d_raid5/

[root@rhel6d_raid5]# df -h

Filesystem Size Used Avail Use% Mounted on

/dev/sda1 9.9G 6.5G3.0G 69% /

tmpfs 1012M 88K 1012M1% /dev/shm

/dev/sda3 7.9G 6.8G744M 91% /u01

/dev/sdb1 9.9G 5.8G3.7G 62% /u01/arch1

/dev/sdb2 9.9G 1.9G7.6G 20% /u01/backup

/dev/md0 3.0G 121M2.7G 5% /d_raid5

模拟失败

mdadm--manage /dev/md127 --fail /dev/sde1

mdadm--detail /dev/md127

Number MajorMinor RaidDevice State

08 33 0active sync /dev/sdc1

18 49 1active sync /dev/sdd1

48 97 2spare rebuilding /dev/sdg1

58 81 3active sync /dev/sdf1

28 65 -faulty spare /dev/sde1

会发现,备用盘正在重建。

/dev/sde1 已经失败

[root@rhel6 ~]# cat /proc/mdstat

Personalities :[raid6] [raid5] [raid4]

md127 : active raid5sdf1[5] sdd1[1] sde1[2](F) sdc1[0] sdg1[4]

3131904 blocks super 1.2 level 5, 512kchunk, algorithm 2 [4/3] [UU_U]

[==================>..] recovery = 90.8% (949120/1043968)finish=0.1min speed=11248K/sec

查看/proc/mdstat文件,会发现,重建的进度

重建结束后:

[root@rhel6 ~]# cat /proc/mdstat

Personalities :[raid6] [raid5] [raid4]

md127 : active raid5sdf1[5] sdd1[1] sde1[2](F) sdc1[0] sdg1[4]

3131904 blocks super 1.2 level 5, 512kchunk, algorithm 2 [4/4] [UUUU]

unused devices:<none>

会显示失败的盘

将出错的盘删除,并且加入新磁盘:

[root@rhel6 ~]# mdadm --manage /dev/md127 --remove /dev/sde1

mdadm: hot removed/dev/sde1 from /dev/md127

[root@rhel6 ~]# cat /proc/mdstat

Personalities :[raid6] [raid5] [raid4]

md127 : active raid5sdf1[5] sdd1[1] sdc1[0] sdg1[4]

3131904 blocks super 1.2 level 5, 512kchunk, algorithm 2 [4/4] [UUUU]

unused devices:<none>

[root@rhel6 ~]# mdadm --manage /dev/md127 --add /dev/sdh1

mdadm: added/dev/sdh1

[root@rhel6 ~]# cat /proc/mdstat

Personalities :[raid6] [raid5] [raid4]

md127 : active raid5sdh1[6](S) sdf1[5] sdd1[1] sdc1[0] sdg1[4]

3131904 blocks super 1.2 level 5, 512kchunk, algorithm 2 [4/4] [UUUU]

unused devices:<none>

mdadm--detail /dev/md127

Number MajorMinor RaidDevice State

08 33 0active sync /dev/sdc1

18 49 1active sync /dev/sdd1

48 97 2active sync /dev/sdg1

58 81 3active sync /dev/sdf1

68 113 -spare /dev/sdh1

OK了真不好意思

关于开机挂载

使用raid,每次重启后,都会变换设备路径

比如原来为/dev/md0重启一次变成了/dev/md127

这个问题,可以使用修改配置文件来解决。

1.首先记录下来raidUUID号码

[root@rhel6 ~]#mdadm --detail /dev/md127

UUID :94396413:711b06a3:8a3b3df5:737c953e

2.修改/etc/mdadm.conf文件 加入如下内容,即可在以后的开关机后确定raid的设备路径

ARRAY /dev/md0UUID=94396413:711b06a3:8a3b3df5:737c953e

3.修改/etc/fatab 开启自动挂载,加入如下内容

/dev/md0/d_raid5 ext4 defaults 1 2



最后,感谢鸟哥的linux私房菜这本书。

你可能感兴趣的:(linux)