You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
2.0 KiB
52 lines
2.0 KiB
6 years ago
|
From 4fde4d06474cdf321958592edf3f856446927d29 Mon Sep 17 00:00:00 2001
|
||
|
From: Alexander Tsoy <alexander@tsoy.me>
|
||
|
Date: Sun, 29 Sep 2013 01:31:01 +0400
|
||
|
Subject: [PATCH] mdraid/module-setup.sh: fixes for mdadm-3.2.6+
|
||
|
|
||
|
mdadm-3.2.6+:
|
||
|
Incremental assembly rule contains "--offroot" arg. Update
|
||
|
regexp to catch this variant.
|
||
|
|
||
|
mdadm-3.3+:
|
||
|
Rules was splitted into two files: 63-md-raid-arrays.rules
|
||
|
and 64-md-raid-assembly.rules. Install them both and edit
|
||
|
the latter.
|
||
|
---
|
||
|
modules.d/90mdraid/module-setup.sh | 11 ++++++++++-
|
||
|
1 file changed, 10 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/modules.d/90mdraid/module-setup.sh b/modules.d/90mdraid/module-setup.sh
|
||
|
index 45767c67..34aae1e3 100755
|
||
|
--- a/modules.d/90mdraid/module-setup.sh
|
||
|
+++ b/modules.d/90mdraid/module-setup.sh
|
||
|
@@ -59,6 +59,7 @@ cmdline() {
|
||
|
}
|
||
|
|
||
|
install() {
|
||
|
+ local rule rule_path
|
||
|
inst_multiple cat
|
||
|
inst_multiple -o mdmon
|
||
|
inst $(command -v partx) /sbin/partx
|
||
|
@@ -67,12 +68,20 @@ install() {
|
||
|
cmdline >> "${initdir}/etc/cmdline.d/90mdraid.conf"
|
||
|
echo >> "${initdir}/etc/cmdline.d/90mdraid.conf"
|
||
|
|
||
|
+ # <mdadm-3.3 udev rule
|
||
|
inst_rules 64-md-raid.rules
|
||
|
+ # >=mdadm-3.3 udev rules
|
||
|
+ inst_rules 63-md-raid-arrays.rules 64-md-raid-assembly.rules
|
||
|
# remove incremental assembly from stock rules, so they don't shadow
|
||
|
# 65-md-inc*.rules and its fine-grained controls, or cause other problems
|
||
|
# when we explicitly don't want certain components to be incrementally
|
||
|
# assembled
|
||
|
- sed -i -r -e '/RUN\+?="[[:alpha:]/]*mdadm[[:blank:]]+(--incremental|-I)[[:blank:]]+(\$env\{DEVNAME\}|\$tempnode)"/d' "${initdir}${udevdir}/rules.d/64-md-raid.rules"
|
||
|
+ for rule in 64-md-raid.rules 64-md-raid-assembly.rules; do
|
||
|
+ rule_path="${initdir}${udevdir}/rules.d/${rule}"
|
||
|
+ [ -f "${rule_path}" ] && sed -i -r \
|
||
|
+ -e '/RUN\+?="[[:alpha:]/]*mdadm[[:blank:]]+(--incremental|-I)[[:blank:]]+(\$env\{DEVNAME\}|\$tempnode|\$devnode)/d' \
|
||
|
+ "${rule_path}"
|
||
|
+ done
|
||
|
|
||
|
inst_rules "$moddir/65-md-incremental-imsm.rules"
|
||
|
|