]>
Commit | Line | Data |
---|---|---|
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 | If no DEVICE line is present, then "DEVICE partitions" is assumed. | |
65 | ||
66 | For example: | |
67 | .IP | |
68 | DEVICE /dev/hda* /dev/hdc* | |
69 | .br | |
70 | DEV /dev/sd* | |
71 | .br | |
72 | DEVICE /dev/discs/disc*/disc | |
73 | .br | |
74 | DEVICE partitions | |
75 | ||
76 | .TP | |
77 | .B ARRAY | |
78 | The ARRAY lines identify actual arrays. The second word on the line | |
79 | should be the name of the device where the array is normally | |
80 | assembled, such as | |
81 | .BR /dev/md1 . | |
82 | Subsequent words identify the array, or identify the array as a member | |
83 | of a group. If multiple identities are given, | |
84 | then a component device must match ALL identities to be considered a | |
85 | match. Each identity word has a tag, and equals sign, and some value. | |
86 | The tags are: | |
87 | ||
88 | .RS 4 | |
89 | .TP | |
90 | .B uuid= | |
91 | The value should be a 128 bit uuid in hexadecimal, with punctuation | |
92 | interspersed if desired. This must match the uuid stored in the | |
93 | superblock. | |
94 | .TP | |
95 | .B name= | |
96 | The value should be a simple textual name as was given to | |
97 | .I mdadm | |
98 | when the array was created. This must match the name stored in the | |
99 | superblock on a device for that device to be included in the array. | |
100 | Not all superblock-formats support names. | |
101 | .TP | |
102 | .B super-minor= | |
103 | The value is an integer which indicates the minor number that was | |
104 | stored in the superblock when the array was created. When an array is | |
105 | created as /dev/mdX, then the minor number X is stored. | |
106 | .TP | |
107 | .B devices= | |
108 | The value is a comma separated list of device names or device name | |
109 | patterns. | |
110 | Only devices with names which match one entry in the list will be used | |
111 | to assemble the array. Note that the devices | |
112 | listed there must also be listed on a DEVICE line. | |
113 | .TP | |
114 | .B level= | |
115 | The value is a raid level. This is not normally used to | |
116 | identify an array, but is supported so that the output of | |
117 | ||
118 | .B "mdadm --examine --scan" | |
119 | ||
120 | can be use directly in the configuration file. | |
121 | .TP | |
122 | .B num-devices= | |
123 | The value is the number of devices in a complete active array. As with | |
124 | .B level= | |
125 | this is mainly for compatibility with the output of | |
126 | ||
127 | .BR "mdadm --examine --scan" . | |
128 | ||
129 | .TP | |
130 | .B spares= | |
131 | The value is a number of spare devices to expect the array to have. | |
132 | .I mdadm --monitor | |
133 | will report an array if it is found to have fewer than this number of | |
134 | spares when | |
135 | .B --monitor | |
136 | starts or when | |
137 | .B --oneshot | |
138 | is used. | |
139 | ||
140 | .TP | |
141 | .B spare-group= | |
142 | The value is a textual name for a group of arrays. All arrays with | |
143 | the same | |
144 | .B spare-group | |
145 | name are considered to be part of the same group. The significance of | |
146 | a group of arrays is that | |
147 | .B mdadm | |
148 | will, when monitoring the arrays, move a spare drive from one array in | |
149 | a group to another array in that group if the first array had a failed | |
150 | or missing drive but no spare. | |
151 | ||
152 | .TP | |
153 | .B auto= | |
154 | This option declares to | |
155 | .B mdadm | |
156 | that it should try to create the device file of the array if it | |
157 | doesn't already exist, or exists but with the wrong device number. | |
158 | ||
159 | The value of this option can be "yes" or "md" to indicate that a | |
160 | traditional, non-partitionable md array should be created, or "mdp", | |
161 | "part" or "partition" to indicate that a partitionable md array (only | |
162 | available in linux 2.6 and later) should be used. This later set can | |
163 | also have a number appended to indicate how many partitions to create | |
164 | device files for, e.g. | |
165 | .BR auto=mdp5 . | |
166 | The default is 4. | |
167 | ||
168 | .TP | |
169 | .B bitmap= | |
170 | The option specifies a file in which a write-intent bitmap should be | |
171 | found. When assembling the array, | |
172 | .I mdadm | |
173 | will provide this file to the | |
174 | .B md | |
175 | driver as the bitmap file. This has the same function as the | |
176 | .B --bitmap-file | |
177 | option to | |
178 | .BR --assemble . | |
179 | ||
180 | .TP | |
181 | .B metadata= | |
182 | Specify the metadata format that the array has. This is mainly | |
183 | recognised for comparability with the output of | |
184 | .IR "mdadm -Es" . | |
185 | ||
186 | .RE | |
187 | ||
188 | .TP | |
189 | .B MAILADDR | |
190 | The | |
191 | .B mailaddr | |
192 | line gives an E-mail address that alerts should be | |
193 | sent to when | |
194 | .M mdadm | |
195 | is running in | |
196 | .B --monitor | |
197 | mode (and was given the | |
198 | .B --scan | |
199 | option). There should only be one | |
200 | .B MAILADDR | |
201 | line and it should have only one address. | |
202 | ||
203 | ||
204 | .TP | |
205 | .B MAILFROM | |
206 | The | |
207 | .B mailfrom | |
208 | line (which can only be abbreviate at leat 5 characters) gives an | |
209 | address to appear in the "From" address for alert mails. This can be | |
210 | useful if you want to explicitly set a domain, as the default from | |
211 | address is "root" with no domain. All words on this line are | |
212 | catenated with spaces to form the address. | |
213 | ||
214 | Note that this value cannot be set via the | |
215 | .I mdadm | |
216 | commandline. It is only settable via the config file. | |
217 | ||
218 | .TP | |
219 | .B PROGRAM | |
220 | The | |
221 | .B program | |
222 | line gives the name of a program to be run when | |
223 | .B "mdadm --monitor" | |
224 | detects potentially interesting events on any of the arrays that it | |
225 | is monitoring. This program gets run with two or three arguments, they | |
226 | being the Event, the md device, and possibly the related component | |
227 | device. | |
228 | ||
229 | There should only be one | |
230 | .B program | |
231 | line and it should be give only one program. | |
232 | ||
233 | ||
234 | .TP | |
235 | .B CREATE | |
236 | The | |
237 | .B create | |
238 | line gives default values to be used when creating arrays and device entries for | |
239 | arrays. | |
240 | These include: | |
241 | ||
242 | .RS 4 | |
243 | .TP | |
244 | .B owner= | |
245 | .TP | |
246 | .B group= | |
247 | These can give user/group ids or names to use instead of system | |
248 | defaults (root/wheel or root/disk). | |
249 | .TP | |
250 | .B mode= | |
251 | An octal file mode such as 0660 can be given to override the default | |
252 | of 0600. | |
253 | .TP | |
254 | .B auto= | |
255 | This corresponds to the | |
256 | .B --auto | |
257 | flag to mdadm. Give | |
258 | .BR yes , | |
259 | .BR md , | |
260 | .BR mdp , | |
261 | .B part | |
262 | - possibly followed by a number of partitions - to indicate how | |
263 | missing device entries should be created. | |
264 | ||
265 | .TP | |
266 | .B metadata= | |
267 | The name of the metadata format to use if none is explicitly given. | |
268 | This can be useful to impose a system-wide default of version-1 superblocks. | |
269 | ||
270 | .RE | |
271 | ||
272 | ||
273 | .SH EXAMPLE | |
274 | DEVICE /dev/sd[bcdjkl]1 | |
275 | .br | |
276 | DEVICE /dev/hda1 /dev/hdb1 | |
277 | ||
278 | # /dev/md0 is known by it's UID. | |
279 | .br | |
280 | ARRAY /dev/md0 UUID=3aaa0122:29827cfa:5331ad66:ca767371 | |
281 | .br | |
282 | # /dev/md1 contains all devices with a minor number of | |
283 | .br | |
284 | # 1 in the superblock. | |
285 | .br | |
286 | ARRAY /dev/md1 superminor=1 | |
287 | .br | |
288 | # /dev/md2 is made from precisey these two devices | |
289 | .br | |
290 | ARRAY /dev/md2 devices=/dev/hda1,/dev/hdb1 | |
291 | ||
292 | # /dev/md4 and /dev/md5 are a spare-group and spares | |
293 | .br | |
294 | # can be moved between them | |
295 | .br | |
296 | ARRAY /dev/md4 uuid=b23f3c6d:aec43a9f:fd65db85:369432df | |
297 | .br | |
298 | spare-group=group1 | |
299 | .br | |
300 | ARRAY /dev/md5 uuid=19464854:03f71b1b:e0df2edd:246cc977 | |
301 | .br | |
302 | spare-group=group1 | |
303 | .br | |
304 | # /dev/md/home is created if need to be a partitionable md array | |
305 | .br | |
306 | # any spare device number is allocated. | |
307 | .br | |
308 | ARRAY /dev/md/home UUID=9187a482:5dde19d9:eea3cc4a:d646ab8b | |
309 | .br | |
310 | auto=part | |
311 | ||
312 | MAILADDR root@mydomain.tld | |
313 | .br | |
314 | PROGRAM /usr/sbin/handle-mdadm-events | |
315 | .br | |
316 | CREATE group=system mode=0640 auto=part-8 | |
317 | .br | |
318 | HOMEHOST <system> | |
319 | ||
320 | .SH SEE ALSO | |
321 | .BR mdadm (8), | |
322 | .BR md (4). | |
323 |