]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - mdadm.conf.5
imsm: fix activate_spare off-by-one
[thirdparty/mdadm.git] / mdadm.conf.5
index 7654f5f95b3e16567f79033df304e4b667071c06..002e2b37f85050c5c295c854b11c71b1624c011d 100644 (file)
@@ -63,7 +63,7 @@ will cause
 .I mdadm
 to look for assembled CONTAINER arrays and included them as a source
 for assembling further arrays.
-.PP
+
 The word
 .I partitions
 will cause
@@ -86,7 +86,7 @@ DEVICE /dev/hda* /dev/hdc*
 .br
 DEV    /dev/sd*
 .br
-DEVICE /dev/discs/disc*/disc
+DEVICE /dev/disk/by-path/pci*
 .br
 DEVICE partitions
 
@@ -95,21 +95,26 @@ DEVICE partitions
 The ARRAY lines identify actual arrays.  The second word on the line
 may be the name of the device where the array is normally
 assembled, such as
-.BR  /dev/md1 .
+.B /dev/md1
+or
+.BR /dev/md/backup .
+If the name does not start with a slash
+.RB (' / '),
+it is treated as being in
+.BR /dev/md/ .
 Alternately the word
 .B <ignore>
 (complete with angle brackets) can be given in which case any array
 which matches the rest of the line will never be automatically assembled.
 If no device name is given,
 .I mdadm
-will use various heuristic to determine an appropriate name.
-.PP
+will use various heuristics to determine an appropriate name.
+
 Subsequent words identify the array, or identify the array as a member
 of a group. If multiple identities are given,
 then a component device must match ALL identities to be considered a
 match.  Each identity word has a tag, and equals sign, and some value.
 The tags are:
-
 .RS 4
 .TP
 .B uuid=
@@ -154,6 +159,7 @@ this is mainly for compatibility with the output of
 .TP
 .B spares=
 The value is a number of spare devices to expect the array to have.
+The sole use of this keyword and value is as follows:
 .B mdadm \-\-monitor
 will report an array if it is found to have fewer than this number of
 spares when
@@ -176,10 +182,15 @@ or missing drive but no spare.
 
 .TP
 .B auto=
-This option declares to
+This option is rarely needed with mdadm-3.0, particularly if use with
+the Linux kernel v2.6.28 or later.
+It tells
 .I mdadm
-that it should try to create the device file of the array if it
-doesn't already exist, or exists but with the wrong device number.
+whether to use partitionable array or non-partitionable arrays and,
+in the absence of
+.IR udev ,
+how many partition devices to create.  From 2.6.28 all md array
+devices are partitionable, hence this option is not needed.
 
 The value of this option can be "yes" or "md" to indicate that a
 traditional, non-partitionable md array should be created, or "mdp",
@@ -214,12 +225,12 @@ Specify that this array is a member array of some container.  The
 value given can be either a path name in /dev, or a UUID of the
 container array.
 
-.IP
+.TP
 .B member=
 Specify that this array is a member array of some container.  Each
 type of container has some way to enumerate member arrays, often a
 simple sequence number.  The value identifies which member of a
-container the array is.  It will usually accompany a 'container=' word.
+container the array is.  It will usually accompany a "container=" word.
 .RE
 
 .TP
@@ -326,18 +337,72 @@ The
 .B homehost
 line gives a default value for the
 .B --homehost=
-option to mdadm.  There should be exactly one other word on the line.
-It should either exactly
+option to mdadm.  There should normally be only one other word on the line.
+It should either be a host name, or one of the special words
 .B <system>
-or a host name.
+and
+.BR <ignore> .
 If
 .B <system>
 is given, then the
 .BR gethostname ( 2 )
 systemcall is used to get the host name.
+
+If
+.B <ignore>
+is given, then a flag is set so that when arrays are being
+auto-assembled the checking of the recorded
+.I homehost
+is disabled.
+If
+.B <ignore>
+is given it is also possible to give an explicit name which will be
+used when creating arrays.  This is the only case when there can be
+more that one other word on the
+.B HOMEHOST
+line.
+
 When arrays are created, this host name will be stored in the
-metadata.  When arrays are assembled using auto-assembly, only arrays
-with this host name stored in the metadata will be considered.
+metadata.  When arrays are assembled using auto-assembly, arrays which
+do not record the correct homehost name in their metadata will be
+assembled using a "foreign" name.  A "foreign" name alway ends with a
+digit string preceded by an underscore to differentiate it
+from any possible local name. e.g.
+.B /dev/md/1_1
+or
+.BR /dev/md/home_0 .
+.TP
+.B AUTO
+A list of names of metadata format can be given, each preceded by a
+plus or minus sign.  Also the word
+.I all
+preceded by plus or minus is allowed and is usually last.
+
+When
+.I mdadm
+is auto-assembling an array, with via
+.I --assemble
+or
+.I --incremental
+and it finds metadata of a given type, it checks that metadata type
+against those listed in this line.  The first match wins, where
+.I all
+matches anything.
+If a match is found that was preceded by a plus sign, the auto
+assembly is allowed.  If the match was preceded by a minus sign, the
+auto assembly is disallowed.  If no match is found, the auto assembly
+is allowed.
+
+This can be used to disable all auto-assembly (so that only arrays
+explicitly listed in mdadm.conf or on the command line are assembled),
+or to disable assembly of certain metadata types which might be
+handled by other software.
+
+The known metadata types are
+.BR 0.90 ,
+.BR 1.x ,
+.BR ddf ,
+.BR imsm .
 
 .SH EXAMPLE
 DEVICE /dev/sd[bcdjkl]1
@@ -385,6 +450,8 @@ PROGRAM /usr/sbin/handle\-mdadm\-events
 CREATE group=system mode=0640 auto=part\-8
 .br
 HOMEHOST <system>
+.br
+AUTO +1.x -all
 
 .SH SEE ALSO
 .BR mdadm (8),