ILD

software RAID
作者:Yuan Jianpeng 邮箱:yuanjp89@163.com
发布时间:2026-6-17 站点:Inside Linux Development

官方名称:

RAID arrays

MD (multiple device)


内核选项:

+CONFIG_MD=y

+CONFIG_BLK_DEV_MD=m

+# CONFIG_MD_BITMAP_FILE is not set

+CONFIG_MD_LINEAR=m

+CONFIG_MD_RAID0=m

+CONFIG_MD_RAID1=m


mdadm在管理RAID的时候,会自动安装内核模块。


创建RAID1

mdadm --create sys /dev/vdc /dev/vdd --level=1 --raid-devices=2 --metadata=1.0 --bitmap=internal

mdadm --create /dev/md0 /dev/vdc /dev/vdd --level=1 --raid-devices=2 --metadata=1.0 --bitmap=internal


第一种方式指定名字,自动选择id。

ls -l /dev/md/sys

lrwxrwxrwx    1 root     0               10 Jan  2 04:48 /dev/md/sys -> /dev/md127


metadata指定md的super block的版本

1.0 放在device的end

1.1 放在device的start

1.2 放在device的start的4K处


bitmap

internal,开启bitmap用来追踪哪些chunk被修改,可以用来快速同步。

但是由于要保存bitmap,开启它有轻微的性能损失。


停止RAID

mdadm --stop /dev/md/sys

mdadm --stop /dev/md127


停止后块设备将被删除。


Assemble RAID

将一个停止的RAID,重新组装出来,使其处于可用状态。

mdadm --assemble /dev/md0 /dev/vdc /dev/vdd


还有其他一些可选的参数

--force

--run

--readonly


assemble的时候,可能会拒绝之前移除的盘。


Remove member

需要两条命令,先标记为fail,然后再移除

mdadm --fail /dev/md0 /dev/vdc

mdadm --remove /dev/md0 /dev/vdc


Add member

mdadm --add /dev/md0 /dev/vdc

mdadm --re-add /dev/md0 /dev/vdc


RAID1添加第3块盘,其变成spare disk。当某一块盘fail的时候,spare立即转正。

    Number   Major   Minor   RaidDevice State
       0     254       32        0      active sync   /dev/vdc
       1     254       48        1      active sync   /dev/vdd

       2     254       64        -      spare   /dev/vde


当某一块盘fail的时候,spare立即转正。

    Number   Major   Minor   RaidDevice State
       2     254       64        0      spare rebuilding   /dev/vde
       1     254       48        1      active sync   /dev/vdd

       0     254       32        -      faulty   /dev/vdc


info RAID

有好一些方式,可以查看RAID的状态。


系统提供了:

/proc/mdstat

/sys/block/md0/md/


mdadm命令提供了

mdadm --detail /dev/md0

mdadm --query /dev/vdc

mdadm --examine /dev/vdc

mdadm --examine-bitmap /dev/vdc


参考:

RAID arrays

这是当前官方的文档,但是主要介绍内核方面

https://docs.kernel.org/admin-guide/md.html


The Software-RAID HOWTO

这篇比较古老,但是介绍的比较全面

https://tldp.org/HOWTO/Software-RAID-HOWTO.html


A guide to mdadm

https://archive.kernel.org/oldwiki/raid.wiki.kernel.org/index.php/A_guide_to_mdadm.html


Linux Raid

https://archive.kernel.org/oldwiki/raid.wiki.kernel.org/


这是个目录,有很多文档

https://archive.kernel.org/oldwiki/raid.wiki.kernel.org/index.php/


详细介绍了mdadm的所有用法

man mdadm

Copyright © linuxdev.cc 2017-2024. Some Rights Reserved.