dracut/0167-Revert-Let-user-specif...

210 lines
7.4 KiB
Diff

From 687000767464401261f336d118de9bba7f50e88d Mon Sep 17 00:00:00 2001
From: "dyoung@redhat.com" <dyoung@redhat.com>
Date: Mon, 31 Aug 2015 10:43:20 +0800
Subject: [PATCH] Revert "Let user specify the action after fail"
This reverts commit 9d787df19674937e8c07bd295b5d282a63829209
action_on_fail is useless thus remove the commits for it one by one.
Signed-off-by: Dave Young <dyoung@redhat.com>
---
dracut.cmdline.7.asc | 4 ----
modules.d/95rootfs-block/mount-root.sh | 2 +-
modules.d/98dracut-systemd/dracut-initqueue.sh | 2 +-
modules.d/98dracut-systemd/dracut-mount.sh | 2 +-
modules.d/98selinux/selinux-loadpolicy.sh | 6 ++++--
modules.d/98usrmount/mount-usr.sh | 4 ++--
modules.d/99base/dracut-lib.sh | 22 ----------------------
modules.d/99base/init.sh | 12 ++++++------
8 files changed, 15 insertions(+), 39 deletions(-)
diff --git a/dracut.cmdline.7.asc b/dracut.cmdline.7.asc
index cd8cc66..d790afd 100644
--- a/dracut.cmdline.7.asc
+++ b/dracut.cmdline.7.asc
@@ -159,10 +159,6 @@ Misc
specify the controlling terminal for the console.
This is useful, if you have multiple "console=" arguments.
-**action_on_fail=**_{shell|continue}_::
- Specify the action after failure. By default it's emergency_shell.
- 'continue' means: ignore the current failure and go ahead.
-
[[dracutkerneldebug]]
Debug
~~~~~
diff --git a/modules.d/95rootfs-block/mount-root.sh b/modules.d/95rootfs-block/mount-root.sh
index 7e9c5bb..924393b 100755
--- a/modules.d/95rootfs-block/mount-root.sh
+++ b/modules.d/95rootfs-block/mount-root.sh
@@ -66,7 +66,7 @@ mount_root() {
warn "*** Warning -- the system did not shut down cleanly. "
warn "*** Dropping you to a shell; the system will continue"
warn "*** when you leave the shell."
- action_on_fail
+ emergency_shell
fi
fsckoptions="$AUTOFSCK_OPT $fsckoptions"
fi
diff --git a/modules.d/98dracut-systemd/dracut-initqueue.sh b/modules.d/98dracut-systemd/dracut-initqueue.sh
index 881f639..3ddc236 100755
--- a/modules.d/98dracut-systemd/dracut-initqueue.sh
+++ b/modules.d/98dracut-systemd/dracut-initqueue.sh
@@ -68,7 +68,7 @@ while :; do
main_loop=$(($main_loop+1))
if [ $main_loop -gt $RDRETRY ]; then
if ! [ -f /sysroot/etc/fstab ] || ! [ -e /sysroot/sbin/init ] ; then
- action_on_fail "Could not boot." && break
+ emergency_shell "Could not boot."
fi
warn "Not all disks have been found."
warn "You might want to regenerate your initramfs."
diff --git a/modules.d/98dracut-systemd/dracut-mount.sh b/modules.d/98dracut-systemd/dracut-mount.sh
index 11ba7bc..c4febfe 100755
--- a/modules.d/98dracut-systemd/dracut-mount.sh
+++ b/modules.d/98dracut-systemd/dracut-mount.sh
@@ -29,7 +29,7 @@ while :; do
done
i=$(($i+1))
- [ $i -gt 20 ] && action_on_fail "Can't mount root filesystem" && break
+ [ $i -gt 20 ] && emergency_shell "Can't mount root filesystem"
done
export -p > /dracut-state.sh
diff --git a/modules.d/98selinux/selinux-loadpolicy.sh b/modules.d/98selinux/selinux-loadpolicy.sh
index d0ac834..ca81a38 100755
--- a/modules.d/98selinux/selinux-loadpolicy.sh
+++ b/modules.d/98selinux/selinux-loadpolicy.sh
@@ -54,14 +54,16 @@ rd_load_policy()
if [ $ret -eq 3 -o $permissive -eq 0 ]; then
warn "Machine in enforcing mode."
warn "Not continuing"
- action_on_fail -n selinux || exit 1
+ emergency_shell -n selinux
+ exit 1
fi
return 0
elif [ $permissive -eq 0 -a "$SELINUX" != "disabled" ]; then
warn "Machine in enforcing mode and cannot execute load_policy."
warn "To disable selinux, add selinux=0 to the kernel command line."
warn "Not continuing"
- action_on_fail -n selinux || exit 1
+ emergency_shell -n selinux
+ exit 1
fi
}
diff --git a/modules.d/98usrmount/mount-usr.sh b/modules.d/98usrmount/mount-usr.sh
index d1a629c..1699604 100755
--- a/modules.d/98usrmount/mount-usr.sh
+++ b/modules.d/98usrmount/mount-usr.sh
@@ -40,7 +40,7 @@ fsck_usr()
warn "*** Warning -- the system did not shut down cleanly. "
warn "*** Dropping you to a shell; the system will continue"
warn "*** when you leave the shell."
- action_on_fail
+ emergency_shell
fi
_fsckoptions="$AUTOFSCK_OPT $_fsckoptions"
fi
@@ -103,7 +103,7 @@ mount_usr()
warn "Mounting /usr to $NEWROOT/usr failed"
warn "*** Dropping you to a shell; the system will continue"
warn "*** when you leave the shell."
- action_on_fail
+ emergency_shell
fi
fi
}
diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh
index 1ac9b3c..d3a7b59 100755
--- a/modules.d/99base/dracut-lib.sh
+++ b/modules.d/99base/dracut-lib.sh
@@ -1141,28 +1141,6 @@ emergency_shell()
fi
}
-action_on_fail()
-{
- local _action=$(getarg action_on_fail=)
- case "$_action" in
- continue)
- [ "$1" = "-n" ] && shift 2
- [ "$1" = "--shutdown" ] && shift 2
- warn "$*"
- warn "Not dropping to emergency shell, because 'action_on_fail=continue' was set on the kernel command line."
- return 0
- ;;
- shell)
- emergency_shell $@
- return 1
- ;;
- *)
- emergency_shell $@
- return 1
- ;;
- esac
-}
-
# Retain the values of these variables but ensure that they are unexported
# This is a POSIX-compliant equivalent of bash's "export -n"
export_n()
diff --git a/modules.d/99base/init.sh b/modules.d/99base/init.sh
index a59e8ea..e2e4029 100755
--- a/modules.d/99base/init.sh
+++ b/modules.d/99base/init.sh
@@ -85,7 +85,7 @@ if command -v kmod >/dev/null 2>/dev/null; then
done
fi
-trap "action_on_fail Signal caught!" 0
+trap "emergency_shell Signal caught!" 0
export UDEVVERSION=$(udevadm --version)
if [ $UDEVVERSION -gt 166 ]; then
@@ -214,7 +214,7 @@ while :; do
main_loop=$(($main_loop+1))
[ $main_loop -gt $RDRETRY ] \
- && { flock -s 9 ; action_on_fail "Could not boot." && break; } 9>/.console_lock
+ && { flock -s 9 ; emergency_shell "Could not boot."; } 9>/.console_lock
done
unset job
unset queuetriggered
@@ -249,7 +249,7 @@ while :; do
_i_mount=$(($_i_mount+1))
[ $_i_mount -gt 20 ] \
- && { flock -s 9 ; action_on_fail "Can't mount root filesystem" && break; } 9>/.console_lock
+ && { flock -s 9 ; emergency_shell "Can't mount root filesystem"; } 9>/.console_lock
done
{
@@ -283,7 +283,7 @@ done
[ "$INIT" ] || {
echo "Cannot find init!"
echo "Please check to make sure you passed a valid root filesystem!"
- action_on_fail
+ emergency_shell
}
if [ $UDEVVERSION -lt 168 ]; then
@@ -387,13 +387,13 @@ if [ -f /etc/capsdrop ]; then
warn "Command:"
warn capsh --drop=$CAPS_INIT_DROP -- -c exec switch_root "$NEWROOT" "$INIT" $initargs
warn "failed."
- action_on_fail
+ emergency_shell
}
else
unset RD_DEBUG
exec $SWITCH_ROOT "$NEWROOT" "$INIT" $initargs || {
warn "Something went very badly wrong in the initramfs. Please "
warn "file a bug against dracut."
- action_on_fail
+ emergency_shell
}
fi