mdadm-1.0.9
[thirdparty/mdadm.git] / mdadm.conf.5
1 .TH MDADM.CONF 5
2 .SH NAME
3 mdadm.conf \- configuration for management of Software Raid with mdadm
4 .SH SYNOPSIS
5 /etc/mdadm.conf
6 .SH DESCRIPTION
7 .PP
8 .B mdadm
9 is a tool for creating, managing, and monitoring RAID devices using the
10 .B md
11 driver in Linux.
12 .PP
13 Some common tasks, such as assembling all arrays, can be simplified
14 by describing the devices and arrays in this configuration file.
15
16 .SS SYNTAX
17 The file should be seen as a collection of words separated by white
18 space (space, tab, or newline).
19 Any word that beings with a hash sign (#) starts a comment and that
20 word together with the remainder of the line is ignored.
21
22 Any line that starts with white space (space or tab) is treated as
23 though it were a continuation of the previous line.
24
25 Empty lines are ignored, but otherwise each (non continuation) line
26 must start with a keyword as listed below.  The keywords are case
27 insensitive and can be abbreviated to 3 characters.
28
29 The keywords are:
30 .TP
31 .B DEVICE
32 A
33 .B device
34 line lists the devices (whole devices or partitions) that might contain
35 a component of an MD array.  When looking for the components of an
36 array,
37 .B mdadm
38 will scan these devices (or any devices listed on the command line).
39
40 The
41 .B device
42 line may contain a number of different devices (separated by spaces)
43 and each device name can contain wild cards as defined by
44 .BR glob (7).
45
46 Also, there may be several device lines present in the file.
47
48 Alternatively, a
49 .B device
50 line can contain the word
51 .BR partitions .
52 This will cause
53 .I mdadm
54 to read
55 .I /proc/partitions
56 and include all devices and partitions found there-in.
57 .I mdadm
58 does not use the names from
59 .I /proc/partitions
60 but only the major and minor device numbers.  It scans
61 .I /dev
62 to find the name that matches the numbers.
63
64 For example:
65 .IP
66 DEVICE /dev/hda* /dev/hdc*
67 .br
68 DEV    /dev/sd*
69 .br
70 DEVICE /dev/discs/disc*/disc
71 .br
72 DEVICE partitions
73
74 .TP
75 .B ARRAY
76 The ARRAY lines identify actual arrays.  The second word on the line
77 should be the name of the device where the array is normally
78 assembled, such as
79 .BR  /dev/md1 .
80 Subsequent words identify the array, or identify the array as a member
81 of a group. If multiple identities are given,
82 then a component device must match ALL identities to be considered a
83 match.  Each identity word has a tag, and equals sign, and some value.
84 The tags are:
85
86 .RS 4
87 .TP
88 .B uuid=
89 The value should be a 128 bit uuid in hexadecimal, with punctuation
90 interspersed if desired.  This must match the uuid stored in the
91 superblock.
92 .TP
93 .B super-minor=
94 The value is an integer which indicates the minor number that was
95 stored in the superblock when the array was created. When an array is
96 created as /dev/mdX, then the minor number X is stored.
97 .TP
98 .B devices=
99 The value is a comma separated list of device names. Precisely these
100 devices will be used to assemble the array.  Note that the devices
101 listed there must also be listed on a DEVICE line.
102 .TP
103 .B level=
104 The value is a raid level.  This is not normally used to
105 identify an array, but is supported so that the output of
106
107 .B "mdadm --examine --scan"
108
109 can be use directly in the configuration file.
110 .TP
111 .B num-devices=
112 The value is the number of devices in a complete active array.  As with
113 .B level=
114 this is mainly for compatibility with the output of
115
116 .BR "mdadm --examine --scan" .
117
118 .TP
119 .B spare-group=
120 The value is a textual name for a group of arrays.  All arrays with
121 the same
122 .B spare-group
123 name are considered to be part of the same group.  The significance of
124 a group of arrays is that
125 .B mdadm
126 will, when monitoring the arrays, move a spare drive from one array in
127 a group to another array in that group if the first array had a failed
128 or missing drive but no spare.
129 .RE
130
131 .TP
132 .B MAILADDR
133 The
134 .B mailaddr
135 line gives an E-mail address that alerts should be
136 sent to when
137 .M mdadm
138 is running in
139 .B --monitor
140 mode (and was given the
141 .B --scan
142 option).  There should only be one
143 .B MAILADDR
144 line and it should have only one address.
145
146
147 .TP
148 .B PROGRAM
149 The
150 .B program
151 line gives the name of a program to be run when
152 .B "mdadm --monitor"
153 detects potentially interesting events on any of the arrays that it
154 is monitoring.  This program gets run with two or three arguments, they
155 being the Event, the md device, and possibly the related component
156 device.
157
158 There should only be one
159 .B program
160 line and it should be give only one program.
161
162 .SH EXAMPLE
163 DEVICE /dev/sd[bcdjkl]1
164 .br
165 DEVICE /dev/hda1 /dev/hdb1
166
167 # /dev/md0 is known by it's UID.
168 .br
169 ARRAY /dev/md0 UUID=3aaa0122:29827cfa:5331ad66:ca767371
170 .br
171 # /dev/md1 contains all devices with a minor number of
172 .br
173 #   1 in the superblock.
174 .br
175 ARRAY /dev/md1 superminor=1
176 .br
177 # /dev/md2 is made from precisey these two devices
178 .br
179 ARRAY /dev/md2 devices=/dev/hda1,/dev/hda2
180
181 # /dev/md4 and /dev/md5 are a spare-group and spares
182 .br
183 #  can be moved between them
184 .br
185 ARRAY /dev/md4 uuid=b23f3c6d:aec43a9f:fd65db85:369432df
186 .br
187            spare-group=group1
188 .br
189 ARRAY /dev/md5 uuid=19464854:03f71b1b:e0df2edd:246cc977
190 .br
191            spare-group=group1
192
193 MAILADDR root@mydomain.tld
194 .br
195 PROGRAM /usr/sbin/handle-mdadm-events
196
197
198 .SH SEE ALSO
199 .BR mdadm (8),
200 .BR md (4).
201