软件RAID测试·三

上一篇的最后,忘了校验失效一块硬盘前后测试文件的md5码,补在这里。

# md5sum /home/pi.txt
af3c72e86be578c48dca28044333294a  /home/pi.txt

好的,完美无缺。
现在我又往虚拟机里面添加了块硬盘。
要做的事情是给这个阵列动态扩容。遗憾的是,mdadm目前并不支持给raid-10直接扩容,会报错。
那先把这个阵列转成RAID-0试试。

mdadm --grow /dev/md127 --raid-devices=6
mdadm: RAID10 can only be changed to RAID0

mdadm --grow /dev/md127 --level=0
mdadm: level of /dev/md127 changed to raid0

等数据重新分条完后,再转成RAID-10
这时候,出了件意料外的事情。

mdadm --grow /dev/md127 --level=10
mdadm: Need 2 spares to create working array, and only have 0.

# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md127 : active raid0 sdg1[8] sdf1[4]
      16766976 blocks super 1.2 4k chunks

看来,RAID-10转RAID-0是简单的把用作镜像的两个盘给下掉了。
先往阵列里面添加四个Spare,再转化次试试。

mdadm --manage /dev/md127 --add /dev/sdb1
mdadm: add new device failed for /dev/sdb1 as 2: Invalid argument

报错误的参数。跑去Wiki查了下,发现如下字样。

the RAID level 1/4/5/6 array can be grown for example using this command

那就很遗憾了,目前的版本RAID-10一旦被建立起来,就无法往阵列里面加盘了。

发表评论

电子邮件地址不会被公开。 必填项已用*标注