Add accurate --hostonly checking for 95iscsi
parent
fb8923f681
commit
054e038512
|
@ -1,11 +1,35 @@
|
||||||
#!/bin/sh
|
#!/bin/bash
|
||||||
# We depend on network modules being loaded
|
# We depend on network modules being loaded
|
||||||
[ "$1" = "-d" ] && echo network
|
[ "$1" = "-d" ] && echo network
|
||||||
|
|
||||||
# If hostonly was requested, fail the check if we are not actually
|
|
||||||
# booting from root.
|
|
||||||
#[ "$1" = "-h" ] && ! egrep -q '/ /dev/nbd[0-9]*' /proc/mounts && exit 1
|
|
||||||
|
|
||||||
# If our prerequisites are not met, fail anyways.
|
# If our prerequisites are not met, fail anyways.
|
||||||
which iscsistart hostname iscsi-iname >/dev/null 2>&1 || exit 1
|
which iscsistart hostname iscsi-iname >/dev/null 2>&1 || exit 1
|
||||||
|
|
||||||
|
# If hostonly was requested, fail the check if we are not actually
|
||||||
|
# booting from root.
|
||||||
|
|
||||||
|
. $dracutfunctions
|
||||||
|
|
||||||
|
[[ $debug ]] && set -x
|
||||||
|
|
||||||
|
is_iscsi() (
|
||||||
|
[[ -L /sys/dev/block/$1 ]] || return
|
||||||
|
cd "$(readlink -f /sys/dev/block/$1)"
|
||||||
|
until [[ -d sys || -d iscsi_session ]]; do
|
||||||
|
cd ..
|
||||||
|
done
|
||||||
|
[[ -d iscsi_session ]]
|
||||||
|
)
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
-h) rootdev=$(find_root_block_device)
|
||||||
|
if [[ $rootdev ]]; then
|
||||||
|
# root lives on a block device, so we can be more precise about
|
||||||
|
# hostonly checking
|
||||||
|
check_block_and_slaves is_iscsi "$rootdev" || exit 1
|
||||||
|
else
|
||||||
|
exit 1
|
||||||
|
fi ;;
|
||||||
|
esac
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|
Loading…
Reference in New Issue