Browse Source
If multipath isn't installed, don't use it. If we're in hostonly mode, only install the multipath module if it's used for / . Otherwise, if the user was dumb enough to install it, they get it during bootup.master


1 changed files with 27 additions and 0 deletions
@ -0,0 +1,27 @@
@@ -0,0 +1,27 @@
|
||||
#!/bin/bash |
||||
|
||||
# if there's no multipath binary, no go. |
||||
which multipath >/dev/null 2>&1 || exit 1 |
||||
|
||||
[[ $1 = -d ]] && exit 0 |
||||
|
||||
. $dracutfunctions |
||||
[[ $debug ]] && set -x |
||||
|
||||
is_mpath() { |
||||
[ -e /sys/dev/block/$1/dm/uuid ] || return 1 |
||||
[[ $(cat /sys/dev/block/$1/dm/uuid) =~ ^mpath- ]] && return 0 |
||||
return 1 |
||||
} |
||||
|
||||
# If we're in hostonly mode, do mpath if we appear to be using it for / |
||||
if [[ $1 = -h ]]; then |
||||
rootdev=$(find_root_block_device) |
||||
if [[ $rootdev ]]; then |
||||
check_block_and_slaves is_mpath "$rootdev" && exit 0 |
||||
fi |
||||
exit 1 |
||||
fi |
||||
|
||||
# the user installed it, they get it... |
||||
exit 0 |
Loading…
Reference in new issue