上一篇的最后,忘了校验失效一块硬盘前后测试文件的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一旦被建立起来,就无法往阵列里面加盘了。