1MULTIPATH.CONF(5)             File Formats Manual            MULTIPATH.CONF(5)
2
3
4

NAME

6       multipath.conf - multipath daemon configuration file.
7

DESCRIPTION

9       /etc/multipath.conf is the configuration file for the multipath daemon.
10       It is used to overwrite the built-in configuration table of multipathd.
11       Any line whose first non-white-space character is a '#' is considered a
12       comment line. Empty lines are ignored.
13
14       Currently used multipathd configuration can be displayed with the  mul‐
15       tipath -t or multipathd show config command.
16

SYNTAX

18       The configuration file contains entries of the form:
19
20              <section> {
21                     <attribute> <value>
22                     ...
23                     <subsection> {
24                            <attribute> <value>
25                            ...
26                     }
27              }
28
29       Each section contains one or more attributes or subsections. The recog‐
30       nized keywords for attributes or subsections depend on the  section  in
31       which they occur.
32
33       <attribute>  and  <value> must be on a single line.  <attribute> is one
34       of the keywords listed in this man page.  <value> is  either  a  simple
35       word (containing no whitespace and none of the characters '"', '#', and
36       '!') or one string enclosed in double quotes ("..."). Outside a  quoted
37       string,  text  starting  with '#', and '!' is regarded as a comment and
38       ignored until the end of the line. Inside a quoted string, '#' and  '!'
39       are  normal  characters,  and  whitespace is preserved.  To represent a
40       double quote character inside a double quoted string, use two  consecu‐
41       tive  double  quotes  ('""').  Thus '2.5" SSD' can be written as "2.5""
42       SSD".
43
44       Opening braces ('{') must follow the  (sub)section  name  on  the  same
45       line.  Closing braces ('}') that mark the end of a (sub)section must be
46       the only non-whitespace character on the line.  Whitespace  is  ignored
47       except  inside  double  quotes, thus the indentation shown in the above
48       example is helpful for human readers but not mandatory.
49
50       Note on regular expressions:  The  multipath.conf  syntax  allows  many
51       attribute  values to be specified as POSIX Extended Regular Expressions
52       (see regex(7)). These regular expressions are case  sensitive  and  not
53       anchored,  thus the expression "bar" matches "barbie", "rhabarber", and
54       "wunderbar", but not "Barbie". To  avoid  unwanted  substring  matches,
55       standard regular expression syntax using the special characters "^" and
56       "$" can be used.
57
58       The following section keywords are recognized:
59
60       defaults         This section defines  default  values  for  attributes
61                        which  are  used  whenever  no values are given in the
62                        appropriate device or multipath sections.
63
64       blacklist        This section defines which devices should be  excluded
65                        from the multipath topology discovery.
66
67       blacklist_exceptions
68                        This  section defines which devices should be included
69                        in the multipath  topology  discovery,  despite  being
70                        listed in the blacklist section.
71
72       multipaths       This  section  defines  the multipath topologies. They
73                        are indexed by  a  World  Wide  Identifier(WWID).  For
74                        details on the WWID generation see section WWID gener‐
75                        ation below.  Attributes  set  in  this  section  take
76                        precedence over all others.
77
78       devices          This  section  defines  the  device-specific settings.
79                        Devices are identified by vendor, product,  and  revi‐
80                        sion.
81
82       overrides        This section defines values for attributes that should
83                        override the device-specific settings for all devices.
84

defaults section

86       The defaults section recognizes the following keywords:
87
88       verbosity        Default verbosity. Higher  values  increase  the  ver‐
89                        bosity level. Valid levels are between 0 and 6.
90
91                        The default is: 2
92
93       polling_interval Interval between two path checks in seconds. For prop‐
94                        erly functioning paths, the  interval  between  checks
95                        will gradually increase to max_polling_interval.  This
96                        value will be overridden by the WatchdogSec setting in
97                        the multipathd.service definition if systemd is used.
98
99                        The default is: 5
100
101       max_polling_interval
102                        Maximal interval between two path checks in seconds.
103
104                        The default is: 4 * polling_interval
105
106       reassign_maps    Enable  reassigning  of  device-mapper maps. With this
107                        option multipathd will  remap  existing  device-mapper
108                        maps  to  always  point  to  multipath device, not the
109                        underlying block devices. Possible values are yes  and
110                        no.
111
112                        The default is: no
113
114       multipath_dir    Directory where the dynamic shared objects are stored.
115                        Defined at compile time, commonly /lib64/multipath/ or
116                        /lib/multipath/.
117
118                        The default is: <system dependent>
119
120       path_selector    The  default  path selector algorithm to use; they are
121                        offered by the  kernel  multipath  target.  There  are
122                        three selector algorithms:
123
124                        round-robin 0
125                                    Loop through every path in the path group,
126                                    sending the same amount of  I/O  to  each.
127                                    Some aspects of behavior can be controlled
128                                    with    the     attributes:     rr_min_io,
129                                    rr_min_io_rq and rr_weight.
130
131                        queue-length 0
132                                    (Since  2.6.31 kernel) Choose the path for
133                                    the next bunch of I/O based on the  amount
134                                    of outstanding I/O to the path.
135
136                        service-time 0
137                                    (Since  2.6.31 kernel) Choose the path for
138                                    the next bunch of I/O based on the  amount
139                                    of  outstanding  I/O  to  the path and its
140                                    relative throughput.
141
142                        The default is: service-time 0
143
144       path_grouping_policy
145                        The default path grouping policy to apply to  unspeci‐
146                        fied multipaths. Possible values are:
147
148                        failover    One path per priority group.
149
150                        multibus    All paths in one priority group.
151
152                        group_by_serial
153                                    One priority group per serial number.
154
155                        group_by_prio
156                                    One  priority  group  per  priority value.
157                                    Priorities are determined by callout  pro‐
158                                    grams  specified  as  a  global,  per-con‐
159                                    troller or  per-multipath  option  in  the
160                                    configuration file.
161
162                        group_by_node_name
163                                    One  priority  group per target node name.
164                                    Target   node   names   are   fetched   in
165                                    /sys/class/fc_transport/target*/node_name.
166
167                        The default is: failover
168
169       uid_attrs        Setting this option activates merging uevents by WWID,
170                        which may improve uevent  processing  effiency.  More‐
171                        over, it's an alternative method to configure the udev
172                        properties to use for determining unique path  identi‐
173                        fiers (WWIDs).
174
175                        The  value of this option is a space separated list of
176                        records  like  "type:ATTR",  where  type  is   matched
177                        against  the  beginning  of the device node name (e.g.
178                        sd:ATTR matches sda), and ATTR is the name of the udev
179                        property to use for matching devices.
180
181                        If  this  option  is configured and matches the device
182                        node name of a device, it overrides any other  config‐
183                        ured   methods  for  determining  the  WWID  for  this
184                        device.
185
186                        The default is: <unset>. To enable uevent merging, set
187                        it e.g. to "sd:ID_SERIAL dasd:ID_UID nvme:ID_WWN".
188
189       uid_attribute    The  udev attribute providing a unique path identifier
190                        (WWID). If uid_attribute is set to the  empty  string,
191                        WWID  determination  is  done  using  the sysfs method
192                        rather then using udev (not recommended in production;
193                        see WWID generation below).
194
195                        The default is: ID_SERIAL, for SCSI devices
196
197                        The default is: ID_UID, for DASD devices
198
199                        The default is: ID_WWN, for NVMe devices
200
201       getuid_callout   (Superseded  by uid_attribute) The default program and
202                        args to callout to obtain a  unique  path  identifier.
203                        Should be specified with an absolute path.
204
205                        The default is: <unset>
206
207       prio             The  name  of the path priority routine. The specified
208                        routine should return a numeric value  specifying  the
209                        relative  priority  of this path. Higher number have a
210                        higher priority.  "none" is a valid  value.  Currently
211                        the following path priority routines are implemented:
212
213                        const       Return a constant priority of 1.
214
215                        sysfs       Use  the sysfs attributes access_state and
216                                    preferred_path to generate the path prior‐
217                                    ity. This prioritizer accepts the optional
218                                    prio_arg exclusive_pref_bit.
219
220                        emc         (Hardware-dependent)  Generate  the   path
221                                    priority  for DGC class arrays as CLARiiON
222                                    CX/AX and EMC VNX and Unity families.
223
224                        alua        (Hardware-dependent)  Generate  the   path
225                                    priority  based  on  the  SCSI-3 ALUA set‐
226                                    tings.  This   prioritizer   accepts   the
227                                    optional prio_arg exclusive_pref_bit.
228
229                        ontap       (Hardware-dependent)   Generate  the  path
230                                    priority for NetApp ONTAP  class  and  OEM
231                                    arrays as IBM NSeries.
232
233                        rdac        (Hardware-dependent)   Generate  the  path
234                                    priority for LSI/Engenio/NetApp RDAC class
235                                    as  NetApp SANtricity E/EF Series, and OEM
236                                    arrays from IBM DELL SGI STK and SUN.
237
238                        hp_sw       (Hardware-dependent)  Generate  the   path
239                                    priority   for   HP/COMPAQ/DEC  HSG80  and
240                                    MSA/HSV arrays  with  Active/Standby  mode
241                                    exclusively.
242
243                        hds         (Hardware-dependent)   Generate  the  path
244                                    priority  for  Hitachi  AMS  families   of
245                                    arrays other than AMS 2000.
246
247                        random      Generate  a  random priority between 1 and
248                                    10.
249
250                        weightedpath
251                                    Generate the path priority  based  on  the
252                                    regular  expression  and the priority pro‐
253                                    vided as argument. Requires prio_args key‐
254                                    word.
255
256                        path_latency
257                                    Generate  the  path  priority  based  on a
258                                    latency  algorithm.   Requires   prio_args
259                                    keyword.
260
261                        ana         (Hardware-dependent)   Generate  the  path
262                                    priority based on the NVMe ANA settings.
263
264                        datacore    (Hardware-dependent)  Generate  the   path
265                                    priority for some DataCore storage arrays.
266                                    Requires prio_args keyword.
267
268                        iet         (iSCSI only) Generate  path  priority  for
269                                    iSCSI   targets   based   on  IP  address.
270                                    Requires prio_args keyword.
271
272                        The default depends on  the  detect_prio  setting:  If
273                        detect_prio  is  yes  (default),  the default priority
274                        algorithm is sysfs (except for NetAPP E-Series,  where
275                        it  is alua). If detect_prio is no, the default prior‐
276                        ity algorithm is const.
277
278       prio_args        Arguments to pass to to the prio function.  This  only
279                        applies to certain prioritizers:
280
281                        weighted    Needs  a  value  of  the  form "<hbtl|dev‐
282                                    name|serial|wwn> <regex1> <prio1> <regex2>
283                                    <prio2> ..."
284
285                                    hbtl    Regex  can be of SCSI H:B:T:L for‐
286                                            mat.  For   example:   1:0:.:.   ,
287                                            *:0:0:.
288
289                                    devname Regex  can  be of device name for‐
290                                            mat. For example: sda , sd.e
291
292                                    serial  Regex can be of serial number for‐
293                                            mat.  For  example:  .*J1FR.*324 .
294                                            The  serial  can  be   looked   up
295                                            through sysfs or by running multi‐
296                                            pathd show paths format "%z".  For
297                                            example: 0395J1FR904324
298
299                                    wwn     Regex   can   be   of   the   form
300                                            "host_wwnn:host_wwpn:tar‐
301                                            get_wwnn:target_wwpn" these values
302                                            can be looked up through sysfs  or
303                                            by  running  multipathd show paths
304                                            format "%N:%R:%n:%r". For example:
305                                            0x200100e08ba0aea0:0x210100e08ba0aea0:.*:.*
306                                            ,       .*:.*:iqn.2009-10.com.red‐
307                                            hat.msp.lab.ask-06:.*
308
309                        path_latency
310                                    Needs  a  value  of  the form "io_num=<20>
311                                    base_num=<10>"
312
313                                    io_num  The number of read IOs sent to the
314                                            current path continuously, used to
315                                            calculate   the    average    path
316                                            latency.   Valid  Values: Integer,
317                                            [2, 200].
318
319                                    base_num
320                                            The base number value of logarith‐
321                                            mic  scale, used to partition dif‐
322                                            ferent priority ranks. Valid  Val‐
323                                            ues:  Integer,  [2,  10].  And Max
324                                            average latency value is 100s, min
325                                            average latency value is 1us.  For
326                                            example: If base_num=10, the paths
327                                            will be grouped in priority groups
328                                            with  path  latency  <=1us,  (1us,
329                                            10us],   (10us,   100us],  (100us,
330                                            1ms], (1ms, 10ms], (10ms,  100ms],
331                                            (100ms,   1s],  (1s,  10s],  (10s,
332                                            100s], >100s.
333
334                        alua        If exclusive_pref_bit is set,  paths  with
335                                    the  preferred path bit set will always be
336                                    in their own path group.
337
338                        sysfs       If exclusive_pref_bit is set,  paths  with
339                                    the  preferred path bit set will always be
340                                    in their own path group.
341
342                        datacore
343
344                                    preferredsds
345                                            (Mandatory)  The  preferred   "SDS
346                                            name".
347
348                                    timeout (Optional)  The  timeout  for  the
349                                            INQUIRY, in ms.
350
351                        iet
352
353                                    preferredip=...
354                                            (Mandatory)   Th   preferred    IP
355                                            address,  in  dotted decimal nota‐
356                                            tion, for iSCSI targets.
357
358                        The default is: <unset>
359
360       features         Specify any device-mapper features to be used.  Syntax
361                        is  num list where num is the number, between 0 and 8,
362                        of features in list.  Possible values for the  feature
363                        list are:
364
365                        queue_if_no_path
366                                    (Deprecated,  superseded by no_path_retry)
367                                    Queue I/O if no path is active.  Identical
368                                    to  the no_path_retry with queue value. If
369                                    both this feature  and  no_path_retry  are
370                                    set,  the  latter  value takes precedence.
371                                    See KNOWN ISSUES.
372
373                        pg_init_retries <times>
374                                    (Since kernel 2.6.24) Number of  times  to
375                                    retry  pg_init,  it  must be between 1 and
376                                    50.
377
378                        pg_init_delay_msecs <msecs>
379                                    (Since  kernel  2.6.38)  Number  of  msecs
380                                    before pg_init retry, it must be between 0
381                                    and 60000.
382
383                        queue_mode <mode>
384                                    (Since kernel 4.8) Select the the queueing
385                                    mode  per multipath device.  <mode> can be
386                                    bio, rq or mq, which corresponds  to  bio-
387                                    based, request-based, and block-multiqueue
388                                    (blk-mq) request-based, respectively.  The
389                                    default  depends  on  the kernel parameter
390                                    dm_mod.use_blk_mq. It is mq if the  latter
391                                    is set, and rq otherwise.
392
393                        The default is: <unset>
394
395       path_checker     The  default method used to determine the paths state.
396                        Possible values are:
397
398                        readsector0 (Deprecated) Read the first sector of  the
399                                    device.  This checker is being deprecated,
400                                    please use tur instead.
401
402                        tur         Issue a TEST UNIT  READY  command  to  the
403                                    device.
404
405                        emc_clariion
406                                    (Hardware-dependent)   Query  the  DGC/EMC
407                                    specific EVPD page 0xC0 to  determine  the
408                                    path  state for CLARiiON CX/AX and EMC VNX
409                                    and Unity arrays families.
410
411                        hp_sw       (Hardware-dependent) Check the path  state
412                                    for HP/COMPAQ/DEC HSG80 and MSA/HSV arrays
413                                    with Active/Standby mode exclusively.
414
415                        rdac        (Hardware-dependent) Check the path  state
416                                    for   LSI/Engenio/NetApp   RDAC  class  as
417                                    NetApp SANtricity  E/EF  Series,  and  OEM
418                                    arrays from IBM DELL SGI STK and SUN.
419
420                        directio    (Deprecated)  Read  the  first sector with
421                                    direct I/O. If you have a large number  of
422                                    paths,  or many AIO users on a system, you
423                                    may need to use sysctl to increase fs.aio-
424                                    max-nr.  This checker is being deprecated,
425                                    it  could  cause  spurious  path  failures
426                                    under high load. Please use tur instead.
427
428                        cciss_tur   (Hardware-dependent)  Check the path state
429                                    for  HP/COMPAQ  Smart  Array(CCISS)   con‐
430                                    trollers.
431
432                        none        Do  not  check the device, fallback to use
433                                    the values retrieved from sysfs
434
435                        The default is: tur
436
437       alias_prefix     The user_friendly_names prefix.
438
439                        The default is: mpath
440
441       failback         Tell multipathd how to manage path group failback.  To
442                        select  immediate  or a value, it's mandatory that the
443                        device has support for a working prioritizer.
444
445                        immediate   Immediately failback to the highest prior‐
446                                    ity pathgroup that contains active paths.
447
448                        manual      Do not perform automatic failback.
449
450                        followover  Used   to  deal  with  multiple  computers
451                                    accessing the same Active/Passive  storage
452                                    devices.  Only  perform automatic failback
453                                    when the first path of a pathgroup becomes
454                                    active.  This  keeps  a  cluster node from
455                                    automatically failing  back  when  another
456                                    node requested the failover.
457
458                        values > 0  Deferred  failback  (time to defer in sec‐
459                                    onds).
460
461                        The default is: manual
462
463       rr_min_io        Number of I/O requests  to  route  to  a  path  before
464                        switching  to the next in the same path group. This is
465                        only for Block I/O(BIO) based multipath and only apply
466                        to round-robin path_selector.
467
468                        The default is: 1000
469
470       rr_min_io_rq     Number  of  I/O  requests  to  route  to a path before
471                        switching to the next in the same path group. This  is
472                        only  for  Request  based  multipath and only apply to
473                        round-robin path_selector.
474
475                        The default is: 1
476
477       max_fds          Specify the maximum number of  file  descriptors  that
478                        can  be  opened  by  multipath and multipathd. This is
479                        equivalent to ulimit -n. A value of max will set  this
480                        to the system limit from /proc/sys/fs/nr_open. If this
481                        is not set, the maximum number of open  fds  is  taken
482                        from  the  calling  process. It is usually 1024. To be
483                        safe, this should be set  to  the  maximum  number  of
484                        paths plus 32, if that number is greated than 1024.
485
486                        The default is: max
487
488       rr_weight        If  set  to priorities the multipath configurator will
489                        assign path weights as "path prio * rr_min_io". Possi‐
490                        ble  values are priorities or uniform .  Only apply to
491                        round-robin path_selector.
492
493                        The default is: uniform
494
495       no_path_retry    Specify what to do when all paths are  down.  Possible
496                        values are:
497
498                        value > 0   Number of retries until disable I/O queue‐
499                                    ing.
500
501                        fail        For immediate failure (no I/O queueing).
502
503                        queue       For never stop I/O  queueing,  similar  to
504                                    queue_if_no_path. See KNOWN ISSUES.
505
506                        The default is: fail
507
508       queue_without_daemon
509                        If set to no , when multipathd stops, queueing will be
510                        turned off  for  all  devices.   This  is  useful  for
511                        devices  that  set no_path_retry. If a machine is shut
512                        down while all paths to a device are down, it is  pos‐
513                        sible  to  hang  waiting  for  I/O  to return from the
514                        device after multipathd has been stopped. Without mul‐
515                        tipathd   running,  access  to  the  paths  cannot  be
516                        restored, and the kernel cannot be told to stop queue‐
517                        ing  I/O.  Setting queue_without_daemon to no , avoids
518                        this problem.
519
520                        The default is: no
521
522       checker_timeout  Specify the timeout to use for path checkers and  pri‐
523                        oritizers  that  issue  SCSI commands with an explicit
524                        timeout, in seconds.
525
526                        The default is: in /sys/block/sd<x>/device/timeout
527
528       flush_on_last_del
529                        If set to yes , multipathd will disable queueing  when
530                        the last path to a device has been deleted.
531
532                        The default is: no
533
534       user_friendly_names
535                        If  set  to  yes , using the bindings file /etc/multi‐
536                        path/bindings to assign a persistent and unique  alias
537                        to  the  multipath, in the form of mpath<n>. If set to
538                        no use the WWID as the alias. In either case  this  be
539                        will be overridden by any specific aliases in the mul‐
540                        tipaths section.
541
542                        The default is: no
543
544       fast_io_fail_tmo Specify the number of seconds the SCSI layer will wait
545                        after  a problem has been detected on a FC remote port
546                        before failing I/O to devices  on  that  remote  port.
547                        This should be smaller than dev_loss_tmo. Setting this
548                        to off will disable the timeout.
549
550                        The default is: 5
551
552       dev_loss_tmo     Specify the number of seconds the SCSI layer will wait
553                        after  a problem has been detected on a FC remote port
554                        before removing it from the system. This can be set to
555                        "infinity"   which   sets  it  to  the  max  value  of
556                        2147483647 seconds, or 68 years. It will be  automati‐
557                        cally   adjusted   to   the   overall  retry  interval
558                        no_path_retry  *  polling_interval  if  a  number   of
559                        retries  is  given  with no_path_retry and the overall
560                        retry  interval   is   longer   than   the   specified
561                        dev_loss_tmo  value.   The  Linux kernel will cap this
562                        value to 600 if fast_io_fail_tmo is not set. See KNOWN
563                        ISSUES.
564
565                        The default is: 600
566
567       bindings_file    The  full pathname of the binding file to be used when
568                        the user_friendly_names option is set.
569
570                        The default is: /etc/multipath/bindings
571
572       wwids_file       The full pathname of the WWIDs file, which is used  by
573                        multipath  to  keep track of the WWIDs for LUNs it has
574                        created multipath devices on in the past.
575
576                        The default is: /etc/multipath/wwids
577
578       prkeys_file      The full pathname of the prkeys file, which is used by
579                        multipathd to keep track of the persistent reservation
580                        key used for a specific WWID, when reservation_key  is
581                        set to file.
582
583                        The default is: /etc/multipath/prkeys
584
585       log_checker_err  If  set  to  once  ,  multipathd  logs  the first path
586                        checker error at logging level 2. Any later errors are
587                        logged at level 3 until the device is restored. If set
588                        to always , multipathd always logs  the  path  checker
589                        error at logging level 2.
590
591                        The default is: always
592
593       reservation_key  This  is  the  service  action reservation key used by
594                        mpathpersist. It must be set for all multipath devices
595                        using persistent reservations, and it must be the same
596                        as the RESERVATION KEY field of the PERSISTENT RESERVE
597                        OUT parameter list which contains an 8-byte value pro‐
598                        vided by the application client to the  device  server
599                        to identify the I_T nexus. If the --param-aptpl option
600                        is used when registering the  key  with  mpathpersist,
601                        :aptpl  must be appended to the end of the reservation
602                        key.
603
604                        Alternatively, this can be set  to  file,  which  will
605                        store  the  RESERVATION KEY registered by mpathpersist
606                        in the prkeys_file. multipathd will then use this  key
607                        to register additional paths as they appear.  When the
608                        registration  is  removed,  the  RESERVATION  KEY   is
609                        removed  from  the  prkeys_file.  The prkeys file will
610                        automatically keep track of whether the key was regis‐
611                        tered with --param-aptpl.
612
613                        The default is: <unset>
614
615       all_tg_pt        Set the 'all targets ports' flag when registering keys
616                        with mpathpersist. Some arrays automatically  set  and
617                        clear  registration  keys  on  all target ports from a
618                        host,  instead  of  per  target  port  per  host.  The
619                        ALL_TG_PT  flag must be set to successfully use mpath‐
620                        persist on these arrays. Setting this option is  iden‐
621                        tical to calling mpathpersist with --param-alltgpt
622
623                        The default is: no
624
625       retain_attached_hw_handler
626                        (Obsolete  for  kernels  >= 4.3) If set to yes and the
627                        SCSI layer has already attached a hardware_handler  to
628                        the device, multipath will not force the device to use
629                        the hardware_handler specified  by  mutipath.conf.  If
630                        the  SCSI  layer  has not attached a hardware handler,
631                        multipath will continue to use its configured hardware
632                        handler.
633
634                        The default is: yes
635
636                        Important  Note:  Linux  kernel  4.3  or  newer always
637                        behaves as  if  "retain_attached_hw_handler  yes"  was
638                        set.
639
640       detect_prio      If  set  to  yes , multipath will try to detect if the
641                        device supports SCSI-3 ALUA. If so,  the  device  will
642                        automatically   use   the  sysfs  prioritizer  if  the
643                        required  sysf  attributes   access_state   and   pre‐
644                        ferred_path  are supported, or the alua prioritizer if
645                        not. If set to no , the prioritizer will  be  selected
646                        as usual.
647
648                        The default is: yes
649
650       detect_checker   if  set  to  yes , multipath will try to detect if the
651                        device supports SCSI-3 ALUA. If so,  the  device  will
652                        automatically  use the tur checker. If set to no , the
653                        checker will be selected as usual.
654
655                        The default is: yes
656
657       force_sync       If set to yes , multipathd will call the path checkers
658                        in  sync  mode only.  This means that only one checker
659                        will run at a time.  This is useful in the case  where
660                        many  multipathd  checkers  running in parallel causes
661                        significant CPU pressure.
662
663                        The default is: no
664
665       strict_timing    If set to yes ,  multipathd  will  start  a  new  path
666                        checker  loop  after  exactly one second, so that each
667                        path check will occur at exactly polling_interval sec‐
668                        onds.  On  busy  systems path checks might take longer
669                        than one  second;  here  the  missing  ticks  will  be
670                        accounted  for  on  the next round.  A warning will be
671                        printed if path checks take longer than polling_inter‐
672                        val seconds.
673
674                        The default is: no
675
676       deferred_remove  If  set  to yes , multipathd will do a deferred remove
677                        instead of a regular remove when the last path  device
678                        has  been  deleted.   This means that if the multipath
679                        device is still in use, it will be freed when the last
680                        user  closes  it.   If  path is added to the multipath
681                        device before the last user closes  it,  the  deferred
682                        remove will be canceled.
683
684                        The default is: no
685
686       partition_delimiter
687                        This  parameter  controls  how  multipath  chooses the
688                        names of partition devices of multipath maps if a mul‐
689                        tipath map is renamed (e.g. if a map alias is added or
690                        changed). If this parameter is set to a  string  other
691                        than  "/UNSET/"  (even  the  empty  string), multipath
692                        inserts that string between device name and  partition
693                        number to construct the partition device name.  Other‐
694                        wise (i.e. if this parameter is unset or has the value
695                        "/UNSET/"),  the  behavior depends on the map name: if
696                        it ends in a digit, a "p" is inserted between name and
697                        partition  number;  otherwise, the partition number is
698                        simply appended.  Distributions  may  use  a  non-null
699                        default  value for this option; in this case, the user
700                        must set  it  to  "/UNSET/"  to  obtain  the  original
701                        <unset>  behavior.  Use multipath -T to check the cur‐
702                        rent settings.
703
704                        The default is: <unset>
705
706       config_dir       If set to  anything  other  than  "",  multipath  will
707                        search  this  directory alphabetically for file ending
708                        in ".conf" and it will read configuration  information
709                        from  them,  just as if it was in /etc/multipath.conf.
710                        config_dir must either be  ""  or  a  fully  qualified
711                        directory name.
712
713                        The default is: /etc/multipath/conf.d/
714
715       san_path_err_threshold
716                        If  set  to  a  value  greater than 0, multipathd will
717                        watch paths and check how many times a path  has  been
718                        failed  due  to  errors.If the number of failures on a
719                        particular    path     is     greater     then     the
720                        san_path_err_threshold,  then  the path will not rein‐
721                        state  till  san_path_err_recovery_time.  These   path
722                        failures   should  occur  within  a  san_path_err_for‐
723                        get_rate checks, if not we will consider the  path  is
724                        good  enough  to reinstantate. See "Shaky paths detec‐
725                        tion" below.
726
727                        The default is: no
728
729       san_path_err_forget_rate
730                        If set to a value  greater  than  0,  multipathd  will
731                        check  whether  the  path  failures  has exceeded  the
732                        san_path_err_threshold within  this  many  checks  i.e
733                        san_path_err_forget_rate  .  If  so  we will not rein‐
734                        stante the path till  san_path_err_recovery_time.  See
735                        "Shaky paths detection" below.
736
737                        The default is: no
738
739       san_path_err_recovery_time
740                        If set to a value greater than 0, multipathd will make
741                        sure  that  when  path  failures  has   exceeded   the
742                        san_path_err_threshold within san_path_err_forget_rate
743                        then the path will  be  placed  in  failed  state  for
744                        san_path_err_recovery_time               duration.Once
745                        san_path_err_recovery_time has timeout  we will  rein‐
746                        stante  the  failed path .  san_path_err_recovery_time
747                        value should be in secs.  See "Shaky paths  detection"
748                        below.
749
750                        The default is: no
751
752       marginal_path_double_failed_time
753                        One  of  the  four parameters of supporting path check
754                        based on accounting  IO  error  such  as  intermittent
755                        error.  When  a path failed event occurs twice in mar‐
756                        ginal_path_double_failed_time seconds  due  to  an  IO
757                        error and all the other three parameters are set, mul‐
758                        tipathd will fail the path and enqueue this path  into
759                        a queue of which members are sent a couple of continu‐
760                        ous direct reading asynchronous IOs at a fixed  sample
761                        rate of 10HZ to start IO error accounting process. See
762                        "Shaky paths detection" below.
763
764                        The default is: no
765
766       marginal_path_err_sample_time
767                        One of the four parameters of  supporting  path  check
768                        based  on  accounting  IO  error  such as intermittent
769                        error. If it is set to a value no less than 120,  when
770                        a  path  fail event occurs twice in marginal_path_dou‐
771                        ble_failed_time second due to an IO error,  multipathd
772                        will  fail the path and enqueue this path into a queue
773                        of which members  are  sent  a  couple  of  continuous
774                        direct reading asynchronous IOs at a fixed sample rate
775                        of 10HZ to start the IO  accounting  process  for  the
776                        path  will last for marginal_path_err_sample_time.  If
777                        the rate of IO error on a particular path  is  greater
778                        than  the  marginal_path_err_rate_threshold,  then the
779                        path    will     not     reinstate     for     margin‐
780                        al_path_err_recheck_gap_time  seconds  unless there is
781                        only    one     active     path.     After     margin‐
782                        al_path_err_recheck_gap_time expires, the path will be
783                        requeueed for rechecking. If checking result  is  good
784                        enough,  the path will be reinstated. See "Shaky paths
785                        detection" below.
786
787                        The default is: no
788
789       marginal_path_err_rate_threshold
790                        The error rate threshold as a permillage (1/1000). One
791                        of  the four parameters of supporting path check based
792                        on accounting IO error  such  as  intermittent  error.
793                        Refer to marginal_path_err_sample_time. If the rate of
794                        IO errors on a particular path is  greater  than  this
795                        parameter,  then  the path will not reinstate for mar‐
796                        ginal_path_err_recheck_gap_time seconds  unless  there
797                        is  only  one active path. See "Shaky paths detection"
798                        below.
799
800                        The default is: no
801
802       marginal_path_err_recheck_gap_time
803                        One of the four parameters of  supporting  path  check
804                        based  on  accounting  IO  error  such as intermittent
805                        error. Refer to marginal_path_err_sample_time. If this
806                        parameter  is set to a positive value, the failed path
807                        of  which the IO error rate  is  larger  than  margin‐
808                        al_path_err_rate_threshold  will  be  kept  in  failed
809                        state for marginal_path_err_recheck_gap_time  seconds.
810                        When     marginal_path_err_recheck_gap_time    seconds
811                        expires, the path will be requeueed for  checking.  If
812                        checking result is good enough, the path will be rein‐
813                        stated, or else it will keep failed. See "Shaky  paths
814                        detection" below.
815
816                        The default is: no
817
818       delay_watch_checks
819                        This    option    is   deprecated,   and   mapped   to
820                        san_path_err_forget_rate.  If this is set to  a  value
821                        greater  than  0  and no san_path_err options are set,
822                        san_path_err_forget_rate will be set to the  value  of
823                        delay_watch_checks  and san_path_err_threshold will be
824                        set  to  1.   See  the  san_path_err_forget_rate   and
825                        san_path_err_threshold   options,   and  "Shaky  paths
826                        detection" below for more information.
827
828                        The default is: no
829
830       delay_wait_checks
831                        This   option   is   deprecated,   and    mapped    to
832                        san_path_err_recovery_time.  If this is set to a value
833                        greater than 0 and no san_path_err  options  are  set,
834                        san_path_err_recovery_time will be set to the value of
835                        delay_wait_checks  times  max_polling_interval.   This
836                        will   give   approximately  the  same  wait  time  as
837                        delay_wait_checks     previously      did.       Also,
838                        san_path_err_threshold  will  be  set  to  1.  See the
839                        san_path_err_recovery_time and  san_path_err_threshold
840                        options,  and  "Shaky  paths detection" below for more
841                        information.
842
843                        The default is: no
844
845       marginal_pathgroups
846                        If set to no, the delay_*_checks, marginal_path_*, and
847                        san_path_err_* options will keep marginal, or "shaky",
848                        paths from being reinstated until they have been moni‐
849                        tored  for  some time. This can cause situations where
850                        all non-marginal paths are  down,  and  no  paths  are
851                        usable  until multipathd detects this and reinstates a
852                        marginal path. If the multipath device is not  config‐
853                        ured  to queue IO in this case, it can cause IO errors
854                        to occur, even though there are marginal paths  avail‐
855                        able.  However, if this option is set to yes, when one
856                        of the marginal path detecting methods determines that
857                        a  path  is marginal, it will be reinstated and placed
858                        in a seperate pathgroup that will only be  used  after
859                        all the non-marginal pathgroups have been tried first.
860                        This prevents the possibility of  IO  errors  occuring
861                        while  marginal paths are still usable. After the path
862                        has been monitored for the  configured  time,  and  is
863                        declared  healthy,  it  will be returned to its normal
864                        pathgroup. See "Shaky paths detection" below for  more
865                        information.
866
867                        The default  is: no
868
869       find_multipaths  This  option controls whether multipath and multipathd
870                        try to  create  multipath  maps  over  non-blacklisted
871                        devices  they encounter. This matters a) when a device
872                        is encountered by multipath -u during udev  rule  pro‐
873                        cessing  (a  device is blocked from further processing
874                        by higher layers - such as LVM - if and only  if  it´s
875                        considered a valid multipath device path), and b) when
876                        multipathd detects a new device. The following  values
877                        are possible:
878
879                        strict    Both  multipath  and  multipathd  treat only
880                                  such devices as multipath devices which have
881                                  been part of a multipath map previously, and
882                                  which   are   therefore   listed   in    the
883                                  wwids_file. Users can manually set up multi‐
884                                  path maps using the multipathd add map  com‐
885                                  mand.  Once  set  up  manually,  the  map is
886                                  remembered in the wwids file and will be set
887                                  up automatically in the future.
888
889                        no        Multipath  behaves  like  strict. Multipathd
890                                  behaves like greedy.
891
892                        yes       Both multipathd and multipath treat a device
893                                  as  multipath  device  if the conditions for
894                                  strict are met, or  if  at  least  two  non-
895                                  blacklisted  paths  with  the same WWID have
896                                  been detected.
897
898                        greedy    Both multipathd and  multipath  treat  every
899                                  non-blacklisted  device  as multipath device
900                                  path.
901
902                        smart     This differs from find_multipaths  yes  only
903                                  in  the  way it treats new devices for which
904                                  only one path has been  detected  yet.  When
905                                  such  a  device  is  first encounted in udev
906                                  rules, it is treated as a multipath  device.
907                                  multipathd  waits  whether  additional paths
908                                  with the same WWID appears. If that happens,
909                                  it  sets  up  a multipath map. If it doesn´t
910                                  happen until a timeout expires, or  if  set‐
911                                  ting up the map fails, a new uevent is trig‐
912                                  gered for the device; at second encounter in
913                                  the  udev  rules, the device will be treated
914                                  as non-multipath and passed on to upper lay‐
915                                  ers.   Note:  this  may  cause delays during
916                                  device detection if  there  are  single-path
917                                  devices which aren´t blacklisted.
918
919                        The default is: strict
920
921       find_multipaths_timeout
922                        Timeout,  in  seconds,  to  wait  for additional paths
923                        after detecting  the  first  one,  if  find_multipaths
924                        "smart"  (see above) is set. If the value is positive,
925                        this timeout is used for all unknown,  non-blacklisted
926                        devices  encountered. If the value is negative (recom‐
927                        mended), it's only applied  to  "known"  devices  that
928                        have an entry in multipath's hardware table, either in
929                        the built-in table  or  in  a  device  section;  other
930                        ("unknown")  devices will use a timeout of only 1 sec‐
931                        ond to avoid booting delays. The value  0  means  "use
932                        the  built-in  default". If find_multipath has a value
933                        other than smart, this option has no effect.
934
935                        The default is: -10 (10s for known and 1s for  unknown
936                        hardware)
937
938       uxsock_timeout   CLI  receive  timeout in milliseconds. For larger sys‐
939                        tems CLI commands might timeout before the  multipathd
940                        lock is released and the CLI command can be processed.
941                        This will result in  errors  like  "timeout  receiving
942                        packet"  to  be  returned from CLI commands.  In these
943                        cases it is recommended to increase the CLI timeout to
944                        avoid those issues.
945
946                        The default is: 1000
947
948       retrigger_tries  Sets  the  number  of  times  multipathd  will  try to
949                        retrigger a uevent to get the WWID.
950
951                        The default is: 3
952
953       retrigger_delay  Sets the amount of time, in seconds, to  wait  between
954                        retriggers.
955
956                        The default is: 10
957
958       missing_uev_wait_timeout
959                        Controls  how many seconds multipathd will wait, after
960                        a new multipath device is created, to receive a change
961                        event  from  udev for the device, before automatically
962                        enabling device reloads. Usually multipathd will delay
963                        reloads  on a device until it receives a change uevent
964                        from the initial table load.
965
966                        The default is: 30
967
968       skip_kpartx      If set to yes , kpartx will not  automatically  create
969                        partitions on the device.
970
971                        The default is: no
972
973       disable_changed_wwids
974                        This  option is deprecated and ignored. If the WWID of
975                        a path suddenly changes, multipathd handles it  as  if
976                        it was removed and then added again.
977
978       remove_retries   This  sets how may times multipath will retry removing
979                        a device that is in-use.  Between each attempt, multi‐
980                        path will sleep 1 second.
981
982                        The default is: 0
983
984       max_sectors_kb   Sets  the  max_sectors_kb device parameter on all path
985                        devices and the  multipath  device  to  the  specified
986                        value.
987
988                        The default is: <device dependent>
989
990       ghost_delay      Sets  the  number  of seconds that multipath will wait
991                        after creating a device with only ghost  paths  before
992                        marking  it  ready  for use in systemd. This gives the
993                        active paths time to appear before the multipath  runs
994                        the  hardware  handler  to  switch  the ghost paths to
995                        active ones. Setting this to 0 or on  makes  multipath
996                        immediately  mark  a  device  with only ghost paths as
997                        ready.
998
999                        The default is: no
1000
1001       enable_foreign   Enables or disables  foreign  libraries  (see  section
1002                        FOREIGN MULTIPATH SUPPORT below). The value is a regu‐
1003                        lar expression; foreign libraries are loaded if  their
1004                        name (e.g. "nvme") matches the expression. By default,
1005                        no foreign libraries are enabled. Set this  to  "nvme"
1006                        to  enable  NVMe  native multipath support, or ".*" to
1007                        enable all foreign libraries.
1008
1009                        The default is: "NONE"
1010
1011

blacklist and blacklist_exceptions sections

1013       The blacklist section is used to exclude specific devices from the mul‐
1014       tipath  topology.  It  is  most commonly used to exclude local disks or
1015       non-disk devices (such as LUNs for the storage array  controller)  from
1016       being handled by multipath-tools.
1017
1018       In  the  blacklist and blacklist_exceptions sections, starting a quoted
1019       value with an exclamation mark "!" will invert the matching of the rest
1020       of  the  regular  expression.  For instance, "!^sd[a-z]" will match all
1021       values that do not start with "sd[a-z]". The exclamation  mark  can  be
1022       escaped "\!" to match a literal ! at the start of a regular expression.
1023       Note: The exclamation mark must be inside quotes, otherwise it will  be
1024       treated as starting a comment.
1025
1026       The  blacklist_exceptions  section is used to revert the actions of the
1027       blacklist section. This allows one to selectively include ("whitelist")
1028       devices  which  would normally be excluded via the blacklist section. A
1029       common usage is to blacklist "everything"  using  a  catch-all  regular
1030       expression,  and create specific blacklist_exceptions entries for those
1031       devices that should be handled by multipath-tools.
1032
1033       The following keywords are recognized in both  sections.  The  defaults
1034       are empty unless explicitly stated.
1035
1036       devnode          Regular  expression  matching  the  device nodes to be
1037                        excluded/included.
1038
1039                        The default blacklist consists of the regular  expres‐
1040                        sion  "!^(sd[a-z]|dasd[a-z]|nvme[0-9])".  This  causes
1041                        all device types other than scsi, dasd, and nvme to be
1042                        excluded from multipath handling by default.
1043
1044       wwid             Regular  expression for the World Wide Identifier of a
1045                        device to be excluded/included.
1046
1047       device           Subsection for the device description. This subsection
1048                        recognizes  the  vendor and product keywords. Both are
1049                        regular expressions. For a full description  of  these
1050                        keywords please see the devices section description.
1051
1052       property         Regular  expression  for an udev property. All devices
1053                        that   have   matching   udev   properties   will   be
1054                        excluded/included.   The handling of the property key‐
1055                        word  is  special,  because  if  a   property   black‐
1056                        list_exception  is set, devices must have at least one
1057                        whitelisted udev property; otherwise  they're  treated
1058                        as  blacklisted,  and  the  message "blacklisted, udev
1059                        property missing" is displayed in the logs.  For exam‐
1060                        ple,   setting  the  property  blacklist_exception  to
1061                        (SCSI_IDENT_|ID_WWN),  will  cause  well-behaved  SCSI
1062                        devices  and  devices  that  provide a WWN (World Wide
1063                        Number) to be included, and all others to be excluded.
1064                        This works to exclude most non-multipathable devices.
1065
1066                        Note:  The behavior of this option has changed in mul‐
1067                        tipath-tools  0.8.2  compared  to  previous  versions.
1068                        Blacklisting  by missing properties is only applied to
1069                        devices  which  do  have  the  property  specified  by
1070                        uid_attribute (e.g. ID_SERIAL) set. Previously, it was
1071                        applied to every device, possibly causing  devices  to
1072                        be  blacklisted  because of temporary I/O error condi‐
1073                        tions.
1074
1075       protocol         Regular expression for the protocol of a device to  be
1076                        excluded/included.
1077
1078                        The  protocol  strings  that  multipath recognizes are
1079                        scsi:fcp,  scsi:spi,  scsi:ssa,  scsi:sbp,   scsi:srp,
1080                        scsi:iscsi, scsi:sas, scsi:adt, scsi:ata, scsi:unspec,
1081                        ccw, cciss, nvme, and undef.  The protocol that a path
1082                        is  using  can  be  viewed  by running multipathd show
1083                        paths format "%d %P"
1084
1085       For every device, these 5 blacklist criteria are evaluated in  the  the
1086       order  "property,  devnode,  device, protocol, wwid". If a device turns
1087       out to be blacklisted by any criterion, it's excluded from handling  by
1088       multipathd,  and the later criteria aren't evaluated any more. For each
1089       criterion, the whitelist takes  precedence  over  the  blacklist  if  a
1090       device matches both.
1091
1092       Note:  Besides the blacklist and whitelist, other configuration options
1093       such as find_multipaths have an impact on whether or not a given device
1094       is handled by multipath-tools.
1095

multipaths section

1097       The multipaths section allows setting attributes of multipath maps. The
1098       attributes that are set via the multipaths  section  (see  list  below)
1099       take  precedence over all other configuration settings, including those
1100       from the overrides section.
1101
1102       The only recognized attribute for the multipaths section is the  multi‐
1103       path subsection. If there are multiple multipath subsections matching a
1104       given WWID, the contents of these sections  are  merged,  and  settings
1105       from later entries take precedence.
1106
1107       The multipath subsection recognizes the following attributes:
1108
1109       wwid             (Mandatory)  World Wide Identifier. Detected multipath
1110                        maps are matched agains this  attribute.   Note  that,
1111                        unlike  the  wwid  attribute in the blacklist section,
1112                        this is not a regular expression or a substring; WWIDs
1113                        must match exactly inside the multipaths section.
1114
1115       alias            Symbolic name for the multipath map. This takes prece‐
1116                        dence over a an entry for the same WWID in  the  bind‐
1117                        ings_file.
1118
1119       The  following  attributes  are optional; if not set the default values
1120       are taken from the overrides, devices, or defaults section:
1121
1122              path_grouping_policy
1123              path_selector
1124              prio
1125              prio_args
1126              failback
1127              rr_weight
1128              no_path_retry
1129              rr_min_io
1130              rr_min_io_rq
1131              flush_on_last_del
1132              features
1133              reservation_key
1134              user_friendly_names
1135              deferred_remove
1136              san_path_err_threshold
1137              san_path_err_forget_rate
1138              san_path_err_recovery_time
1139              marginal_path_err_sample_time
1140              marginal_path_err_rate_threshold
1141              marginal_path_err_recheck_gap_time
1142              marginal_path_double_failed_time
1143              delay_watch_checks
1144              delay_wait_checks
1145              skip_kpartx
1146              max_sectors_kb
1147              ghost_delay
1148

devices section

1150       multipath-tools have a built-in device table with  reasonable  defaults
1151       for  more than 100 known multipath-capable storage devices. The devices
1152       section can be used to override these settings. If there  are  multiple
1153       matches  for a given device, the attributes of all matching entries are
1154       applied to it.  If an attribute is specified in several matching device
1155       subsections,  later  entries  take  precedence.  Thus, entries in files
1156       under config_dir (in  reverse  alphabetical  order)  have  the  highest
1157       precedence,  followed  by entries in multipath.conf; the built-in hard‐
1158       ware table has the lowest  precedence.  Inside  a  configuration  file,
1159       later entries have higher precedence than earlier ones.
1160
1161       The  only  recognized  attribute  for the devices section is the device
1162       subsection. Devices detected in the  system  are  matched  against  the
1163       device  entries  using  the vendor, product, and revision fields, which
1164       are all POSIX Extended regular expressions (see regex(7)).
1165
1166       The vendor, product, and revision fields that multipath  or  multipathd
1167       detect  for  devices  in  a  system depend on the device type. For SCSI
1168       devices, they correspond to the respective fields of the  SCSI  INQUIRY
1169       page.  In  general,  the command 'multipathd show paths format "%d %s"'
1170       command can be used to see the detected properties for all  devices  in
1171       the system.
1172
1173       The device subsection recognizes the following attributes:
1174
1175       vendor           (Mandatory)  Regular  expression  to  match the vendor
1176                        name.
1177
1178       product          (Mandatory) Regular expression to  match  the  product
1179                        name.
1180
1181       revision         Regular  expression  to match the product revision. If
1182                        not specified, any revision matches.
1183
1184       product_blacklist
1185                        Products with the given vendor  matching  this  string
1186                        are  blacklisted. This is equivalent to a device entry
1187                        in the blacklist section with the vendor attribute set
1188                        to  this entry's vendor, and the product attribute set
1189                        to the value of product_blacklist.
1190
1191       alias_prefix     The user_friendly_names prefix to use for this  device
1192                        type, instead of the default "mpath".
1193
1194       vpd_vendor       The  vendor  specific  vpd page information, using the
1195                        vpd page abbreviation.  The vpd page abbreviation  can
1196                        be  found  by  running  sg_vpd -e. multipathd will use
1197                        this information to gather device specific information
1198                        that can be displayed with the %g wilcard for the mul‐
1199                        tipathd show maps format  and  multipathd  show  paths
1200                        format commands. Currently only the hp3par vpd page is
1201                        supported.
1202
1203       hardware_handler The hardware handler to use for this device type.  The
1204                        following hardware handler are implemented:
1205
1206                        1 emc       (Hardware-dependent)  Hardware handler for
1207                                    DGC class arrays as CLARiiON CX/AX and EMC
1208                                    VNX and Unity families.
1209
1210                        1 rdac      (Hardware-dependent)  Hardware handler for
1211                                    LSI/Engenio/NetApp RDAC  class  as  NetApp
1212                                    SANtricity  E/EF  Series,  and  OEM arrays
1213                                    from IBM DELL SGI STK and SUN.
1214
1215                        1 hp_sw     (Hardware-dependent) Hardware handler  for
1216                                    HP/COMPAQ/DEC  HSG80  and  MSA/HSV  arrays
1217                                    with Active/Standby mode exclusively.
1218
1219                        1 alua      (Hardware-dependent) Hardware handler  for
1220                                    SCSI-3 ALUA compatible arrays.
1221
1222                        1 ana       (Hardware-dependent)  Hardware handler for
1223                                    NVMe ANA compatible arrays.
1224
1225                        The default is: <unset>
1226
1227                        Important Note: Linux kernels 4.3 and newer  automati‐
1228                        cally  attach a device handler to known devices (which
1229                        includes all devices supporting SCSI-3 ALUA) and  dis‐
1230                        allow  changing  the handler afterwards. Setting hard‐
1231                        ware_handler for such devices on these kernels has  no
1232                        effect.
1233
1234       The  following  attributes  are optional; if not set the default values
1235       are taken from the defaults section:
1236
1237              path_grouping_policy
1238              uid_attribute
1239              getuid_callout
1240              path_selector
1241              path_checker
1242              prio
1243              prio_args
1244              features
1245              failback
1246              rr_weight
1247              no_path_retry
1248              rr_min_io
1249              rr_min_io_rq
1250              fast_io_fail_tmo
1251              dev_loss_tmo
1252              flush_on_last_del
1253              user_friendly_names
1254              retain_attached_hw_handler
1255              detect_prio
1256              detect_checker
1257              deferred_remove
1258              san_path_err_threshold
1259              san_path_err_forget_rate
1260              san_path_err_recovery_time
1261              marginal_path_err_sample_time
1262              marginal_path_err_rate_threshold
1263              marginal_path_err_recheck_gap_time
1264              marginal_path_double_failed_time
1265              delay_watch_checks
1266              delay_wait_checks
1267              skip_kpartx
1268              max_sectors_kb
1269              ghost_delay
1270              all_tg_pt
1271

overrides section

1273       The overrides section recognizes the following optional attributes;  if
1274       not set the values are taken from the devices or defaults sections:
1275
1276              path_grouping_policy
1277              uid_attribute
1278              getuid_callout
1279              path_selector
1280              path_checker
1281              alias_prefix
1282              features
1283              prio
1284              prio_args
1285              failback
1286              rr_weight
1287              no_path_retry
1288              rr_min_io
1289              rr_min_io_rq
1290              flush_on_last_del
1291              fast_io_fail_tmo
1292              dev_loss_tmo
1293              user_friendly_names
1294              retain_attached_hw_handler
1295              detect_prio
1296              detect_checker
1297              deferred_remove
1298              san_path_err_threshold
1299              san_path_err_forget_rate
1300              san_path_err_recovery_time
1301              marginal_path_err_sample_time
1302              marginal_path_err_rate_threshold
1303              marginal_path_err_recheck_gap_time
1304              marginal_path_double_failed_time
1305              delay_watch_checks
1306              delay_wait_checks
1307              skip_kpartx
1308              max_sectors_kb
1309              ghost_delay
1310              all_tg_pt
1311

WWID generation

1313       Multipath  uses  a  World Wide Identification (WWID) to determine which
1314       paths belong to the same device. Each path presenting the same WWID  is
1315       assumed to point to the same device.
1316
1317       The WWID is generated by four methods (in the order of preference):
1318
1319       uid_attrs        The  WWID  is derived from udev attributes by matching
1320                        the device node name; cf uid_attrs above.
1321
1322       getuid_callout   Use the specified external program; cf  getuid_callout
1323                        above.   Care  should be taken when using this method;
1324                        the external program needs to be loaded from disk  for
1325                        execution,  which might lead to deadlock situations in
1326                        an all-paths-down scenario.
1327
1328       uid_attribute    Use the value of  the  specified  udev  attribute;  cf
1329                        uid_attribute  above.  This  method  is  preferred  to
1330                        getuid_callout as multipath does not need to call  any
1331                        external programs here. However, under certain circum‐
1332                        stances  udev  might  not  be  able  to  generate  the
1333                        requested variable.
1334
1335       sysfs            Try  to determine the WWID from sysfs attributes.  For
1336                        SCSI devices, this means  reading  the  Vital  Product
1337                        Data (VPD) page "Device Identification" (0x83).
1338
1339       The  default settings (using udev and uid_attribute configured from the
1340       built-in hardware table) should work fine in most scenarios. Users  who
1341       want to enable uevent merging must set uid_attrs.
1342

Shaky paths detection

1344       A common problem in SAN setups is the occurence of intermittent errors:
1345       a path is unreachable, then reachable again for a  short  time,  disap‐
1346       pears again, and so forth. This happens typically on unstable intercon‐
1347       nects. It is undesirable to switch  pathgroups  unnecessarily  on  such
1348       frequent,  unreliable events. multipathd supports three different meth‐
1349       ods for detecting this situation and dealing with it. All methods share
1350       the  same  basic mode of operation: If a path is found to be "shaky" or
1351       "flipping", and appears to be in healthy status, it is  not  reinstated
1352       (put  back  to use) immediately. Instead, it is placed in the "delayed"
1353       state and watched for some time, and only  reinstated  if  the  healthy
1354       state  appears to be stable.  If the marginal_pathgroups option is set,
1355       the path will reinstated immediately, but placed in a special pathgroup
1356       for  marginal  paths.  Marginal  pathgroups  will not be used until all
1357       other pathgroups have been tried. At the time when the path would  nor‐
1358       mally  be  reinstated, it will be returned to its normal pathgroup. The
1359       logic of determining "shaky" condition, as well as the  logic  when  to
1360       reinstate, differs between the three methods.
1361
1362       "delay_checks" failure tracking
1363               This  method  is  deprecated  and  mapped to the "san_path_err"
1364               method.   See  the  delay_watch_checks  and   delay_wait_checks
1365               options above for more information.
1366
1367
1368       "marginal_path" failure tracking
1369               If  a second failure event (good->bad transition) occurs within
1370               marginal_path_double_failed_time seconds after a failure, high-
1371               frequency  monitoring  is started for the affected path: I/O is
1372               sent at a rate of 10 per  second.  This  is  done  for  margin‐
1373               al_path_err_sample_time  seconds.  During this period, the path
1374               is not reinstated. If the rate of errors remains below  margin‐
1375               al_path_err_rate_threshold  during  the  monitoring period, the
1376               path is reinstated. Otherwise, it is kept in failed  state  for
1377               marginal_path_err_recheck_gap_time, and after that, it is moni‐
1378               tored again. For this method, time intervals  are  measured  in
1379               seconds.
1380
1381       "san_path_err" failure tracking
1382               multipathd  counts path failures for each path. Once the number
1383               of failures exceeds the value given by  san_path_err_threshold,
1384               the  path is not reinstated for san_path_err_recovery_time sec‐
1385               onds. While counting failures, multipathd  "forgets"  one  past
1386               failure  every "san_path_err_forget_rate" ticks; thus if errors
1387               don't occur more often then once in the forget  rate  interval,
1388               the  failure  count doesn't increase and the threshold is never
1389               reached. Ticks are the time between path checks by  multipathd,
1390               which  is  variable  and controlled by the polling_interval and
1391               max_polling_interval parameters.
1392
1393               This method is deprecated in favor of the "marginal_path" fail‐
1394               ure  tracking method, and only offered for backward compatibil‐
1395               ity.
1396
1397       See the documentation of the individual options above for details.   It
1398       is  strongly  discouraged to use more than one of these methods for any
1399       given multipath map, because the two concurrent methods may interact in
1400       unpredictable  ways.  If  the  "marginal_path"  method  is  active, the
1401       "san_path_err" parameters are implicitly set to 0.
1402

FOREIGN MULTIPATH SUPPORT

1404       multipath and multipathd can load "foreign" libraries  to  add  support
1405       for  other  multipathing  technologies besides the Linux device mapper.
1406       Currently this support is  limited  to  printing  detected  information
1407       about  multipath  setup.  In topology output, the names of foreign maps
1408       are prefixed by the foreign library name in square brackets, as in this
1409       example:
1410
1411       # multipath -ll
1412       uuid.fedcba98-3579-4567-8765-123456789abc [nvme]:nvme4n9 NVMe,Some NVMe controller,FFFFFFFF
1413       size=167772160 features='n/a' hwhandler='ANA' wp=rw
1414       |-+- policy='n/a' prio=50 status=optimized
1415       | `- 4:38:1    nvme4c38n1 0:0     n/a   optimized    live
1416       `-+- policy='n/a' prio=50 status=optimized
1417         `- 4:39:1    nvme4c39n1 0:0     n/a   optimized    live
1418
1419       The  "nvme"  foreign  library  provides  support for NVMe native multi‐
1420       pathing in the kernel. It is part of the standard multipath package.
1421

KNOWN ISSUES

1423       The usage of queue_if_no_path option can  lead  to  D  state  processes
1424       being  hung  and  not killable in situations where all the paths to the
1425       LUN go offline.  It  is  advisable  to  use  the  no_path_retry  option
1426       instead.
1427
1428       The  use  of queue_if_no_path or no_path_retry might lead to a deadlock
1429       if the dev_loss_tmo setting results in a device being removed while I/O
1430       is still queued. The multipath daemon will update the dev_loss_tmo set‐
1431       ting accordingly to avoid this deadlock. Hence if both values are spec‐
1432       ified  the  order  of  precedence  is  no_path_retry, queue_if_no_path,
1433       dev_loss_tmo.
1434

SEE ALSO

1436       udev(8), dmsetup(8), multipath(8), multipathd(8).
1437

AUTHORS

1439       multipath-tools was developed by Christophe Varoqui,  <christophe.varo‐
1440       qui@opensvc.com> and others.
1441
1442
1443
1444Linux                             2018-05-21                 MULTIPATH.CONF(5)
Impressum