]> git.ipfire.org Git - thirdparty/mdadm.git/blame - mdadm.conf.5
Add crc32 files.
[thirdparty/mdadm.git] / mdadm.conf.5
CommitLineData
519561f7
NB
1.\" Copyright Neil Brown and others.
2.\" This program is free software; you can redistribute it and/or modify
3.\" it under the terms of the GNU General Public License as published by
4.\" the Free Software Foundation; either version 2 of the License, or
5.\" (at your option) any later version.
6.\" See file COPYING in distribution for details.
56eb10c0
NB
7.TH MDADM.CONF 5
8.SH NAME
93e790af 9mdadm.conf \- configuration for management of Software RAID with mdadm
56eb10c0
NB
10.SH SYNOPSIS
11/etc/mdadm.conf
12.SH DESCRIPTION
13.PP
14.B mdadm
11a3e71d 15is a tool for creating, managing, and monitoring RAID devices using the
56eb10c0
NB
16.B md
17driver in Linux.
18.PP
19Some common tasks, such as assembling all arrays, can be simplified
2d465520 20by describing the devices and arrays in this configuration file.
56eb10c0
NB
21
22.SS SYNTAX
23The file should be seen as a collection of words separated by white
24space (space, tab, or newline).
11a3e71d 25Any word that beings with a hash sign (#) starts a comment and that
2d465520 26word together with the remainder of the line is ignored.
56eb10c0 27
2d465520 28Any line that starts with white space (space or tab) is treated as
56eb10c0
NB
29though it were a continuation of the previous line.
30
31Empty lines are ignored, but otherwise each (non continuation) line
2d465520 32must start with a keyword as listed below. The keywords are case
e0d19036 33insensitive and can be abbreviated to 3 characters.
56eb10c0
NB
34
35The keywords are:
36.TP
37.B DEVICE
38A
39.B device
40line lists the devices (whole devices or partitions) that might contain
41a component of an MD array. When looking for the components of an
42array,
43.B mdadm
2d465520 44will scan these devices (or any devices listed on the command line).
56eb10c0
NB
45
46The
47.B device
48line may contain a number of different devices (separated by spaces)
49and each device name can contain wild cards as defined by
50.BR glob (7).
51
52Also, there may be several device lines present in the file.
53
5787fa49
NB
54Alternatively, a
55.B device
56line can contain the word
57.BR partitions .
58This will cause
59.I mdadm
60to read
61.I /proc/partitions
35cc5be4 62and include all devices and partitions found therein.
5787fa49
NB
63.I mdadm
64does not use the names from
65.I /proc/partitions
66but only the major and minor device numbers. It scans
67.I /dev
68to find the name that matches the numbers.
69
a99d6b66
NB
70If no DEVICE line is present, then "DEVICE partitions" is assumed.
71
11a3e71d
NB
72For example:
73.IP
74DEVICE /dev/hda* /dev/hdc*
75.br
76DEV /dev/sd*
77.br
78DEVICE /dev/discs/disc*/disc
5787fa49
NB
79.br
80DEVICE partitions
11a3e71d 81
56eb10c0
NB
82.TP
83.B ARRAY
11a3e71d
NB
84The ARRAY lines identify actual arrays. The second word on the line
85should be the name of the device where the array is normally
86assembled, such as
87.BR /dev/md1 .
e0d19036
NB
88Subsequent words identify the array, or identify the array as a member
89of a group. If multiple identities are given,
2d465520
NB
90then a component device must match ALL identities to be considered a
91match. Each identity word has a tag, and equals sign, and some value.
92The tags are:
11a3e71d
NB
93
94.RS 4
95.TP
96.B uuid=
97The value should be a 128 bit uuid in hexadecimal, with punctuation
98interspersed if desired. This must match the uuid stored in the
99superblock.
100.TP
947fd4dd
NB
101.B name=
102The value should be a simple textual name as was given to
103.I mdadm
104when the array was created. This must match the name stored in the
105superblock on a device for that device to be included in the array.
35cc5be4 106Not all superblock formats support names.
947fd4dd 107.TP
7e23fc43 108.B super\-minor=
11a3e71d
NB
109The value is an integer which indicates the minor number that was
110stored in the superblock when the array was created. When an array is
111created as /dev/mdX, then the minor number X is stored.
112.TP
113.B devices=
56eedc1a
NB
114The value is a comma separated list of device names or device name
115patterns.
116Only devices with names which match one entry in the list will be used
117to assemble the array. Note that the devices
11a3e71d
NB
118listed there must also be listed on a DEVICE line.
119.TP
120.B level=
121The value is a raid level. This is not normally used to
122identify an array, but is supported so that the output of
123
7e23fc43 124.B "mdadm \-\-examine \-\-scan"
11a3e71d
NB
125
126can be use directly in the configuration file.
127.TP
7e23fc43 128.B num\-devices=
b83d95f3 129The value is the number of devices in a complete active array. As with
11a3e71d
NB
130.B level=
131this is mainly for compatibility with the output of
56eb10c0 132
7e23fc43 133.BR "mdadm \-\-examine \-\-scan" .
e0d19036 134
058574b1
NB
135.TP
136.B spares=
137The value is a number of spare devices to expect the array to have.
7e23fc43 138.B mdadm \-\-monitor
058574b1
NB
139will report an array if it is found to have fewer than this number of
140spares when
7e23fc43 141.B \-\-monitor
058574b1 142starts or when
7e23fc43 143.B \-\-oneshot
058574b1
NB
144is used.
145
e0d19036 146.TP
7e23fc43 147.B spare\-group=
e0d19036
NB
148The value is a textual name for a group of arrays. All arrays with
149the same
7e23fc43 150.B spare\-group
e0d19036
NB
151name are considered to be part of the same group. The significance of
152a group of arrays is that
153.B mdadm
154will, when monitoring the arrays, move a spare drive from one array in
155a group to another array in that group if the first array had a failed
156or missing drive but no spare.
dd0781e5
NB
157
158.TP
159.B auto=
160This option declares to
161.B mdadm
162that it should try to create the device file of the array if it
163doesn't already exist, or exists but with the wrong device number.
164
165The value of this option can be "yes" or "md" to indicate that a
166traditional, non-partitionable md array should be created, or "mdp",
167"part" or "partition" to indicate that a partitionable md array (only
168available in linux 2.6 and later) should be used. This later set can
169also have a number appended to indicate how many partitions to create
170device files for, e.g.
171.BR auto=mdp5 .
172The default is 4.
7ef02d01
NB
173
174.TP
175.B bitmap=
176The option specifies a file in which a write-intent bitmap should be
177found. When assembling the array,
178.I mdadm
179will provide this file to the
180.B md
181driver as the bitmap file. This has the same function as the
7e23fc43 182.B \-\-bitmap\-file
7ef02d01 183option to
7e23fc43 184.BR \-\-assemble .
058574b1
NB
185
186.TP
187.B metadata=
188Specify the metadata format that the array has. This is mainly
189recognised for comparability with the output of
7e23fc43 190.BR "mdadm \-Es" .
058574b1 191
11a3e71d 192.RE
e0d19036
NB
193
194.TP
195.B MAILADDR
196The
197.B mailaddr
198line gives an E-mail address that alerts should be
199sent to when
200.M mdadm
201is running in
7e23fc43 202.B \-\-monitor
e0d19036 203mode (and was given the
7e23fc43 204.B \-\-scan
e0d19036
NB
205option). There should only be one
206.B MAILADDR
207line and it should have only one address.
208
209
4948b8f7
NB
210.TP
211.B MAILFROM
212The
213.B mailfrom
93e790af 214line (which can only be abbreviated to at least 5 characters) gives an
4948b8f7
NB
215address to appear in the "From" address for alert mails. This can be
216useful if you want to explicitly set a domain, as the default from
217address is "root" with no domain. All words on this line are
218catenated with spaces to form the address.
219
220Note that this value cannot be set via the
221.I mdadm
222commandline. It is only settable via the config file.
223
e0d19036
NB
224.TP
225.B PROGRAM
226The
227.B program
228line gives the name of a program to be run when
7e23fc43 229.B "mdadm \-\-monitor"
e0d19036
NB
230detects potentially interesting events on any of the arrays that it
231is monitoring. This program gets run with two or three arguments, they
232being the Event, the md device, and possibly the related component
233device.
234
235There should only be one
236.B program
237line and it should be give only one program.
238
5bbb4842
NB
239
240.TP
241.B CREATE
242The
243.B create
058574b1 244line gives default values to be used when creating arrays and device entries for
5bbb4842
NB
245arrays.
246These include:
247
248.RS 4
249.TP
250.B owner=
251.TP
252.B group=
253These can give user/group ids or names to use instead of system
254defaults (root/wheel or root/disk).
255.TP
256.B mode=
257An octal file mode such as 0660 can be given to override the default
258of 0600.
259.TP
260.B auto=
261This corresponds to the
7e23fc43 262.B \-\-auto
5bbb4842
NB
263flag to mdadm. Give
264.BR yes ,
265.BR md ,
266.BR mdp ,
267.B part
b3f1c093 268\(em possibly followed by a number of partitions \(em to indicate how
5bbb4842
NB
269missing device entries should be created.
270
058574b1
NB
271.TP
272.B metadata=
273The name of the metadata format to use if none is explicitly given.
274This can be useful to impose a system-wide default of version-1 superblocks.
275
38098016
NB
276.TP
277.B symlinks=no
278Normally when creating devices in
279.B /dev/md/
280.I mdadm
281will create a matching symlink from
282.B /dev/
283with a name starting
284.B md
285or
286.BR md_ .
287Give
16c4849b 288.B symlinks=no
38098016 289to suppress this symlink creation.
5bbb4842
NB
290.RE
291
292
2d465520
NB
293.SH EXAMPLE
294DEVICE /dev/sd[bcdjkl]1
295.br
296DEVICE /dev/hda1 /dev/hdb1
297
93e790af 298# /dev/md0 is known by its UID.
2d465520
NB
299.br
300ARRAY /dev/md0 UUID=3aaa0122:29827cfa:5331ad66:ca767371
301.br
302# /dev/md1 contains all devices with a minor number of
303.br
304# 1 in the superblock.
305.br
306ARRAY /dev/md1 superminor=1
307.br
93e790af 308# /dev/md2 is made from precisely these two devices
2d465520 309.br
a9d69660 310ARRAY /dev/md2 devices=/dev/hda1,/dev/hdb1
2d465520
NB
311
312# /dev/md4 and /dev/md5 are a spare-group and spares
313.br
314# can be moved between them
315.br
316ARRAY /dev/md4 uuid=b23f3c6d:aec43a9f:fd65db85:369432df
317.br
7e23fc43 318 spare\-group=group1
2d465520
NB
319.br
320ARRAY /dev/md5 uuid=19464854:03f71b1b:e0df2edd:246cc977
321.br
7e23fc43 322 spare\-group=group1
dd0781e5
NB
323.br
324# /dev/md/home is created if need to be a partitionable md array
325.br
326# any spare device number is allocated.
327.br
328ARRAY /dev/md/home UUID=9187a482:5dde19d9:eea3cc4a:d646ab8b
329.br
330 auto=part
2d465520
NB
331
332MAILADDR root@mydomain.tld
333.br
7e23fc43 334PROGRAM /usr/sbin/handle\-mdadm\-events
5bbb4842 335.br
7e23fc43 336CREATE group=system mode=0640 auto=part\-8
41a3b72a
NB
337.br
338HOMEHOST <system>
e0d19036 339
56eb10c0 340.SH SEE ALSO
11a3e71d
NB
341.BR mdadm (8),
342.BR md (4).
56eb10c0 343