]> git.ipfire.org Git - thirdparty/dracut.git/blobdiff - 51-dracut-rescue.install
ask for a password on readkey failure
[thirdparty/dracut.git] / 51-dracut-rescue.install
index 3f07a698f2f9b4b351184eccbe0657fadf4a4a4c..ef8afac18899c21faf465b562a0f2981b30d8241 100755 (executable)
@@ -63,7 +63,7 @@ if ! [[ ${BOOT_OPTIONS[*]} ]]; then
     exit 1
 fi
 
-if [[ -d "$BOOT_DIR_ABS" ]]; then
+if [[ -d "${BOOT_DIR_ABS%/*}" ]]; then
     BOOT_DIR="/${MACHINE_ID}/0-rescue"
     BOOT_ROOT=${BOOT_DIR_ABS%$BOOT_DIR}
     LOADER_ENTRY="$BOOT_ROOT/loader/entries/${MACHINE_ID}-0-rescue.conf"
@@ -71,10 +71,6 @@ if [[ -d "$BOOT_DIR_ABS" ]]; then
     INITRD="initrd"
 else
     BLS_DIR="/boot/loader/entries"
-    if [ -d /sys/firmware/efi ]; then
-       BLS_DIR="/boot/efi/EFI/${ID}/loader/entries"
-    fi
-
     BOOT_DIR_ABS="/boot"
     LOADER_ENTRY="$BLS_DIR/${MACHINE_ID}-0-rescue.conf"
     KERNEL="vmlinuz-0-rescue-${MACHINE_ID}"
@@ -102,11 +98,11 @@ case "$COMMAND" in
         fi
 
         if [[ ! -f "$BOOT_DIR_ABS/$INITRD" ]]; then
-            dracut --no-hostonly -a "rescue" "$BOOT_DIR_ABS/$INITRD" "$KERNEL_VERSION"
+            dracut -f --no-hostonly -a "rescue" "$BOOT_DIR_ABS/$INITRD" "$KERNEL_VERSION"
             ((ret+=$?))
         fi
 
-        if [[ -d "$BOOT_DIR" ]]; then
+        if [[ "${BOOT_DIR_ABS}" != "/boot" ]]; then
             {
                 echo "title      $PRETTY_NAME - Rescue Image"
                 echo "version    $KERNEL_VERSION"
@@ -132,6 +128,4 @@ case "$COMMAND" in
         ret=1;;
 esac
 
-((ret+=$?))
-
 exit $ret