mdadm

Over the years, many users have become quite frustrated by the problems involved in using raidtools and /etc/raidtab to manage software RAID. On small systems, the problems presented by raidtools are tolerable. But on large systems with multiple arrays, each with the potential for dozens of member disks, managing /etc/raidtab can become daunting. mdadm provides a slightly different approach from raidtools. The idea behind mdadm is that the kernel, as well as administrators, should be able to manage arrays without resorting to a complicated, structured configuration file.

mdadm uses a Universally Unique ID (UUID) to identify each array and member disk. A UUID is a 128-bit number that is guaranteed to be reasonably unique on both the local system and across other systems. It is randomly generated, using system hardware and timestamps as part of its seed. mdadm uses the UUIDs found in the array superblock to scan member disks, determining which array they belong to and what the array properties are. Many programs use UUIDs to tag devices uniqely. In fact, kernel RAID autodetection uses these UUIDs, too. See the uuidgen and libuuid manual pages for more information.

mdadm provides all the same functions that raidtools provides, in addition to some new features. The only disadvantage of mdadm is that it’s new. Neil Brown began working on mdadm in June of 2001, and it has undergone only a few revisions. mdadm can also manage legacy arrays created under the 0.36 md driver, which are ...

Get Managing RAID on Linux now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.