42 lines
1.6 KiB
Diff
42 lines
1.6 KiB
Diff
|
---
|
||
|
multipath/multipath.rules | 22 +++++++++++++---------
|
||
|
1 file changed, 13 insertions(+), 9 deletions(-)
|
||
|
|
||
|
Index: multipath-tools/multipath/multipath.rules
|
||
|
===================================================================
|
||
|
--- multipath-tools.orig/multipath/multipath.rules
|
||
|
+++ multipath-tools/multipath/multipath.rules
|
||
|
@@ -1,19 +1,23 @@
|
||
|
# multipath wants the devmaps presented as meaninglful device names
|
||
|
# so name them after their devmap name
|
||
|
SUBSYSTEM!="block", GOTO="end_mpath"
|
||
|
-TEST!="/sbin/multipath", GOTO="check_usr"
|
||
|
-ENV{MPATH_GOT_HERE}="$env{DEVNAME}"
|
||
|
-PROGRAM=="/sbin/multipath -c /dev/$env{DEVNAME}", ENV{DM_MULTIPATH_DEVICE_PATH}="1"
|
||
|
-GOTO="skip_usr"
|
||
|
-LABEL="check_usr"
|
||
|
-ENV{MPATH_GOT_HERE} = "2"
|
||
|
-PROGRAM=="/usr/sbin/multipath -c /dev/$env{DEVNAME}", ENV{DM_MULTIPATH_DEVICE_PATH}="1"
|
||
|
-LABEL="skip_usr"
|
||
|
+
|
||
|
+ENV{MPATH_SBIN_PATH}="/sbin"
|
||
|
+TEST!="$env{MPATH_SBIN_PATH}/multipath", ENV{MPATH_SBIN_PATH}="/usr/sbin"
|
||
|
+
|
||
|
+ACTION=="add", ENV{DEVTYPE}!="partition", \
|
||
|
+ ENV{DM_MULTIPATH_DEVICE_PATH}!="1", \
|
||
|
+ PROGRAM=="$env{MPATH_SBIN_PATH}/multipath -c $tempnode", \
|
||
|
+ ENV{DM_MULTIPATH_DEVICE_PATH}="1"
|
||
|
+
|
||
|
+ENV{DM_MULTIPATH_DEVICE_PATH}=="1", ENV{DEVTYPE}!="partition", \
|
||
|
+ RUN+="/sbin/partx -d --nr 1-1024 $env{DEVNAME}"
|
||
|
+
|
||
|
RUN+="socket:/org/kernel/dm/multipath_event"
|
||
|
KERNEL!="dm-*", GOTO="end_mpath"
|
||
|
ACTION!="change", GOTO="end_mpath"
|
||
|
ENV{DM_SUSPENDED}=="1", GOTO="end_mpath"
|
||
|
ENV{DM_UUID}!="mpath-?*", GOTO="end_mpath"
|
||
|
ENV{DM_ACTION}=="PATH_FAILED", GOTO="end_mpath"
|
||
|
-RUN+="$env{DM_SBIN_PATH}/kpartx -a -p p $tempnode"
|
||
|
+RUN+="$env{MPATH_SBIN_PATH}/kpartx -a -p p $tempnode"
|
||
|
LABEL="end_mpath"
|