mdadm: Update config man regarding default files and multi-keyword behavior

Simplify default and alternative config file and directory location references
from mdadm(8) as references to mdadm.conf(5). Add FILE section in config man
and explain order and conditions in which default and alternative config files
and directories are used.

Update config man behavior regarding parsing order when multiple keywords/config
files are involved.

Signed-off-by: Lukasz Florczak <lukasz.florczak@linux.intel.com>
Acked-by: Coly Li <colyli@suse.de>
Signed-off-by: Jes Sorensen <jsorensen@fb.com>
This commit is contained in:
Lukasz Florczak 2022-03-18 09:26:06 +01:00 committed by Jes Sorensen
parent c23400377b
commit 24e075c659
2 changed files with 71 additions and 24 deletions

View File

@ -266,14 +266,11 @@ the exact meaning of this option in different contexts.
.TP
.BR \-c ", " \-\-config=
Specify the config file or directory. Default is to use
.B {CONFFILE}
and
.BR {CONFFILE}.d ,
or if those are missing then
.B {CONFFILE2}
and
.BR {CONFFILE2}.d .
Specify the config file or directory. If not specified, default config file
and default conf.d directory will be used. See
.BR mdadm.conf (5)
for more details.
If the config file given is
.B "partitions"
then nothing will be read, but
@ -2013,11 +2010,9 @@ The config file is only used if explicitly named with
.B \-\-config
or requested with (a possibly implicit)
.BR \-\-scan .
In the later case,
.B {CONFFILE}
or
.B {CONFFILE2}
is used.
In the later case, default config file is used. See
.BR mdadm.conf (5)
for more details.
If
.B \-\-scan
@ -3346,16 +3341,15 @@ on Monitor mode.
.SS {CONFFILE} (or {CONFFILE2})
The config file lists which devices may be scanned to see if
they contain MD super block, and gives identifying information
(e.g. UUID) about known MD arrays. See
Default config file. See
.BR mdadm.conf (5)
for more details.
.SS {CONFFILE}.d (or {CONFFILE2}.d)
A directory containing configuration files which are read in lexical
order.
Default directory containing configuration files. See
.BR mdadm.conf (5)
for more details.
.SS {MAP_PATH}
When

View File

@ -88,7 +88,8 @@ but only the major and minor device numbers. It scans
.I /dev
to find the name that matches the numbers.
If no DEVICE line is present, then "DEVICE partitions containers" is assumed.
If no DEVICE line is present in any config file,
then "DEVICE partitions containers" is assumed.
For example:
.IP
@ -272,6 +273,10 @@ catenated with spaces to form the address.
Note that this value cannot be set via the
.I mdadm
commandline. It is only settable via the config file.
There should only be one
.B MAILADDR
line and it should have only one address. Any subsequent addresses
are silently ignored.
.TP
.B PROGRAM
@ -286,7 +291,8 @@ device.
There should only be one
.B program
line and it should be give only one program.
line and it should be given only one program. Any subsequent programs
are silently ignored.
.TP
@ -295,7 +301,14 @@ The
.B create
line gives default values to be used when creating arrays, new members
of arrays, and device entries for arrays.
These include:
There should only be one
.B create
line. Any subsequent lines will override the previous settings.
Keywords used in the
.I CREATE
line and supported values are:
.RS 4
.TP
@ -475,8 +488,8 @@ The known metadata types are
.B AUTO
should be given at most once. Subsequent lines are silently ignored.
Thus an earlier config file in a config directory will over-ride
the setting in a later config file.
Thus a later config file in a config directory will not overwrite
the setting in an earlier config file.
.TP
.B POLICY
@ -594,6 +607,7 @@ The
line lists custom values of MD device's sysfs attributes which will be
stored in sysfs after the array is assembled. Multiple lines are allowed and each
line has to contain the uuid or the name of the device to which it relates.
Lines are applied in reverse order.
.RS 4
.TP
.B uuid=
@ -621,7 +635,46 @@ is running in
.B \-\-monitor
mode.
.B \-d/\-\-delay
command line argument takes precedence over the config file
command line argument takes precedence over the config file.
If multiple
.B MINITORDELAY
lines are provided, only first non-zero value is considered.
.SH FILES
.SS {CONFFILE}
The default config file location, used when
.I mdadm
is running without --config option.
.SS {CONFFILE}.d
The default directory with config files. Used when
.I mdadm
is running without --config option, after successful reading of the
.B {CONFFILE}
default config file. Files in that directory
are read in lexical order.
.SS {CONFFILE2}
Alternative config file that is read, when
.I mdadm
is running without --config option and the
.B {CONFFILE}
default config file was not opened successfully.
.SS {CONFFILE2}.d
The alternative directory with config files. Used when
.I mdadm
is runninng without --config option, after reading the
.B {CONFFILE2}
alternative config file whether it was successful or not. Files in
that directory are read in lexical order.
.SH EXAMPLE
DEVICE /dev/sd[bcdjkl]1