mdadm命令是multiple devices admin的简称,它是linux下的一款标准的软件 RAID管理工具,可以管理linux软RAID,比如创建、调整、监控RAID。
mdadm命令能够诊断、监控和收集详细的阵列信息,是一个单独集成化的程序而不是一些分散程序的集合,因此对不同RAID管理命令有共通的语法。
mdadm命令能够执行几乎所有的功能而不需要配置文件(也没有默认的配置文件)。
语法格式:mdadm [参数]
常用模式参数:
create | 创建一个新的RAID,每个设备都具有元数据(超级块) |
build | 创建或组合一个没有元数据(超级块)的RAID |
assemble | 组装以前创建的RAID的组件集成到一个活动RAID |
manage | 更改一个现有的RAID,比如添加新的备用成员和删除故障设备 |
misc | 报告或修改各种RAID相关设备,比如查询RAID或者设备的状态信息、删除旧的超级块 |
grow | 调整/重新塑造一个活动RAID,比如改变RAID容量或阵列中的设备数目。 |
monitor | 监控一个或多个RAID的更改 |
incremental | 添加设备到RAID中,或从RAID中删除设备。 |
常用参数:
-D | 显示RAID设备的详细信息 |
-A | 加入一个以前定义的RAID |
-B | 创建一个没有超级块的RAID设备 |
-F | 选项监控模式 |
-G | 更改RAID设备的大小或形态 |
-I | 添加设备到RAID中,或从RAID中删除设备 |
-z | 组建RAID1、RAID4、RAID5、RAID6后从每个RAID成员获取的空间容量 |
-s | 扫描配置文件或/proc/mdstat以搜寻丢失的信息 |
-C | 创建RAID设备,把RAID信息写入每个RAID成员超级块中 |
-v | 显示RAID创建过程中的详细信息 |
-B | 创建RAID的另一种方法,不把RAID信息写入每个RAID成员的超级块中 |
-l | 指定RAID的级别 |
-n | 指定RAID中活动设备的数目 |
-f | 把RAID成员列为有问题,以便移除该成员 |
-r | 把RAID成员移出RAID设备 |
-a | 向RAID设备中添加一个成员 |
–re-add | 把最近移除的RAID成员重新添加到RAID设备中 |
-E | 查看RAID成员详细信息 |
-c | 指定chunk大小,创建一个RAID设备时默认为512kb |
-R | 开始部分组装RAID |
-S | 停用RAID设备,释放所有资源 |
-x | 指定初始RAID设备的备用成员的数量 |
–zero-superblock | 如果RAID设备包含一个有效的超级块,该块使用零覆盖 |
参考实例
使用sda1和sdb1创建RAID0,条带大小是64KB:
[root@linuxvip ~]# mdadm –create /dev/md0 –chunk=64 –level=0 –raid-devices=2 /dev/sda1 /dev/sdb1
给md0增加热备盘sdc1:
[root@linuxvip ~]# mdadm /dev/md0 -add /dev/sdc1
查看组件设备sda1中超级块的信息和状态:
[root@linuxvip ~]# mdadm –examine /dev/sda1
停止md0的运行:
[root@linuxvip ~]# mdadm –stop /dev/md0