如何列出哪些驱动器是每个RAIDarrays的一部分?

我有一个使用MD的Linux软件RAID。 我想列出所有的RAIDarrays和每个连接到它们的硬盘驱动器。 有没有一个简单的方法来做到这一点?

cat /proc/mdstat会给你所需的输出,相对容易parsing,因为映射的设备和它的成员在同一行上,例如:

 $ cat /proc/mdstat Personalities : [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [linear] [multipath] md0 : active raid1 sdf2[1] sde2[0] 81854336 blocks super 1.2 [2/2] [UU] md127 : active raid0 sdf3[1] sde3[0] 286718976 blocks super 1.2 512k chunks unused devices: <none> 

如果有三个软件RAIDarrays连接到系统(md0,md1,md2),以下简单的一行将显示连接到每个驱动器的驱动器(将..2更改为arrays总数):

sudo mdadm –query –detail /dev/md{0..2} | grep dev

 /dev/md0: 0 8 18 0 active sync /dev/sdb2 /dev/md1: 0 8 19 0 active sync /dev/sdb3 /dev/md2: 0 8 20 0 active sync /dev/sdb4 1 8 36 1 active sync /dev/sdc4 

请注意,UUID不需要跟踪哪些驱动器位于哪个arrays中,因为RAID超级块将处理该arrays。