md Block Special Files

The block special files /dev/md[0-255] provide access to software RAID devices. The md driver uses a major number of 9. On most systems, all of these files are created when the system is installed. If an md block special file is missing, you will get an error like: error opening /dev/md31: No such file or directory from mdadm or raidtools. You can create the file yourself using the mknod command. The following example creates the block special file used to access /dev/md31 with a umask of 0660:

# mknod -m 0660 /dev/md31 b 9 31
# chown root.disk /dev/md31

I specified b for block special file, 9 for the md major number, and 31 for the minor number. In general, the minor number and the number for the device name are the same. I also made certain that user and group ownership was set to root and disk, respectively. Repeat these commands for any device file you need to create manually.

Some distributions also come with the MAKEDEV program, usually found in /dev, although sometimes it is found as a symbolic link to /sbin/MAKEDEV. MAKEDEV can be used to create all the special files for any character or block device. It’s more user-friendly than mknod, but MAKEDEV might not be available on all systems.

The following example uses MAKEDEV to create all the block special md files:

# /dev/MAKEDEV -v md
create md0                     b   9   0 root:disk 660
create md1                     b   9   1 root:disk 660
[...]
create md30                    b   9  30 root:disk 660
create md31                    b   9  31 root:disk 660

MAKEDEV will overwrite old device nodes. If you are working on a system on which the major or minor device numbers for your md devices have been altered, please be careful.

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.