]> git.ipfire.org Git - thirdparty/mdadm.git/blob - mdadm.conf.5
91814650792cde5b6f40e6539a4ac476d40c7dd1
[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 name=
94 The value should be a simple textual name as was given to
95 .I mdadm
96 when the array was created. This must match the name stored in the
97 superblock on a device for that device to be included in the array.
98 Not all superblock-formats support names.
99 .TP
100 .B super-minor=
101 The value is an integer which indicates the minor number that was
102 stored in the superblock when the array was created. When an array is
103 created as /dev/mdX, then the minor number X is stored.
104 .TP
105 .B devices=
106 The value is a comma separated list of device names or device name
107 patterns.
108 Only devices with names which match one entry in the list will be used
109 to assemble the array. Note that the devices
110 listed there must also be listed on a DEVICE line.
111 .TP
112 .B level=
113 The value is a raid level. This is not normally used to
114 identify an array, but is supported so that the output of
115
116 .B "mdadm --examine --scan"
117
118 can be use directly in the configuration file.
119 .TP
120 .B num-devices=
121 The value is the number of devices in a complete active array. As with
122 .B level=
123 this is mainly for compatibility with the output of
124
125 .BR "mdadm --examine --scan" .
126
127 .TP
128 .B spare-group=
129 The value is a textual name for a group of arrays. All arrays with
130 the same
131 .B spare-group
132 name are considered to be part of the same group. The significance of
133 a group of arrays is that
134 .B mdadm
135 will, when monitoring the arrays, move a spare drive from one array in
136 a group to another array in that group if the first array had a failed
137 or missing drive but no spare.
138
139 .TP
140 .B auto=
141 This option declares to
142 .B mdadm
143 that it should try to create the device file of the array if it
144 doesn't already exist, or exists but with the wrong device number.
145
146 The value of this option can be "yes" or "md" to indicate that a
147 traditional, non-partitionable md array should be created, or "mdp",
148 "part" or "partition" to indicate that a partitionable md array (only
149 available in linux 2.6 and later) should be used. This later set can
150 also have a number appended to indicate how many partitions to create
151 device files for, e.g.
152 .BR auto=mdp5 .
153 The default is 4.
154
155 .TP
156 .B bitmap=
157 The option specifies a file in which a write-intent bitmap should be
158 found. When assembling the array,
159 .I mdadm
160 will provide this file to the
161 .B md
162 driver as the bitmap file. This has the same function as the
163 .B --bitmap-file
164 option to
165 .BR --assemble .
166 .RE
167
168 .TP
169 .B MAILADDR
170 The
171 .B mailaddr
172 line gives an E-mail address that alerts should be
173 sent to when
174 .M mdadm
175 is running in
176 .B --monitor
177 mode (and was given the
178 .B --scan
179 option). There should only be one
180 .B MAILADDR
181 line and it should have only one address.
182
183
184 .TP
185 .B PROGRAM
186 The
187 .B program
188 line gives the name of a program to be run when
189 .B "mdadm --monitor"
190 detects potentially interesting events on any of the arrays that it
191 is monitoring. This program gets run with two or three arguments, they
192 being the Event, the md device, and possibly the related component
193 device.
194
195 There should only be one
196 .B program
197 line and it should be give only one program.
198
199 .SH EXAMPLE
200 DEVICE /dev/sd[bcdjkl]1
201 .br
202 DEVICE /dev/hda1 /dev/hdb1
203
204 # /dev/md0 is known by it's UID.
205 .br
206 ARRAY /dev/md0 UUID=3aaa0122:29827cfa:5331ad66:ca767371
207 .br
208 # /dev/md1 contains all devices with a minor number of
209 .br
210 # 1 in the superblock.
211 .br
212 ARRAY /dev/md1 superminor=1
213 .br
214 # /dev/md2 is made from precisey these two devices
215 .br
216 ARRAY /dev/md2 devices=/dev/hda1,/dev/hdb1
217
218 # /dev/md4 and /dev/md5 are a spare-group and spares
219 .br
220 # can be moved between them
221 .br
222 ARRAY /dev/md4 uuid=b23f3c6d:aec43a9f:fd65db85:369432df
223 .br
224 spare-group=group1
225 .br
226 ARRAY /dev/md5 uuid=19464854:03f71b1b:e0df2edd:246cc977
227 .br
228 spare-group=group1
229 .br
230 # /dev/md/home is created if need to be a partitionable md array
231 .br
232 # any spare device number is allocated.
233 .br
234 ARRAY /dev/md/home UUID=9187a482:5dde19d9:eea3cc4a:d646ab8b
235 .br
236 auto=part
237
238 MAILADDR root@mydomain.tld
239 .br
240 PROGRAM /usr/sbin/handle-mdadm-events
241
242
243 .SH SEE ALSO
244 .BR mdadm (8),
245 .BR md (4).
246