The mdadm command is a tool used to manage software-based RAID arrays. A redundant array of independent disks (RAID) is a set of vendor-independent specifications that support redundancy and fault tolerance for configurations on multiple-device storage systems. In a RAID array, data is stored across multiple physical storage devices, and those devices are combined into a single virtual storage device. This type of software-based RAID configuration is an alternative to using device mapper and DM-Multipath. The mdadm tool enables you to create, manage, and monitor RAID arrays.
mdadm has several modes of operation: Create, Build, Assemble, and Monitor. Each of these modes has its own command-line switch. In addition to these modes, there are many management features that operate independently.
Example usage
Let’s assume you added three disks to your virtual machine. Let’s create a RAID 0 device called /dev/md127 (just a random number that is not yet in use):
$sudo mdadm --create /dev/md127 --level 0 --raid-devices 3 /dev/sd{c,d,e}
Verify the configuration:
$ cat /proc/mdstat $ sudo mdadm --detail /dev/md127
Make the configuration persistent:
$ sudo mdadm --detail --scan --verbose >> /etc/mdadm.conf
Now you can use this device and format it with a filesystem. For instance:
$ sudo mkfs.ext4 -L data_mnt /dev/md127
mdadm Command Examples
1. Create array:
# sudo mdadm --create /dev/md/MyRAID --level raid_level --raid-devices number_of_disks /dev/sdXN
2. Stop array:
# sudo mdadm --stop /dev/md0
3. Mark disk as failed:
# sudo mdadm --fail /dev/md0 /dev/sdXN
4. Remove disk:
# sudo mdadm --remove /dev/md0 /dev/sdXN
5. Add disk to array:
# sudo mdadm --assemble /dev/md0 /dev/sdXN
6. Show RAID info:
# sudo mdadm --detail /dev/md0
7. Reset disk by deleting RAID metadata:
# sudo mdadm --zero-superblock /dev/sdXN