46 lines
1.7 KiB
Diff
46 lines
1.7 KiB
Diff
|
From f225f180e363a42307dfcdb962e751476dd1a210 Mon Sep 17 00:00:00 2001
|
||
|
From: Harald Hoyer <harald@redhat.com>
|
||
|
Date: Mon, 2 Jul 2012 18:51:20 +0200
|
||
|
Subject: [PATCH] usrmount/mount-usr.sh: give emergency_shell if /usr mount
|
||
|
failed
|
||
|
|
||
|
---
|
||
|
modules.d/98usrmount/mount-usr.sh | 22 +++++++++++++---------
|
||
|
1 file changed, 13 insertions(+), 9 deletions(-)
|
||
|
|
||
|
diff --git a/modules.d/98usrmount/mount-usr.sh b/modules.d/98usrmount/mount-usr.sh
|
||
|
index 5cf4eb8..3173241 100755
|
||
|
--- a/modules.d/98usrmount/mount-usr.sh
|
||
|
+++ b/modules.d/98usrmount/mount-usr.sh
|
||
|
@@ -74,17 +74,21 @@ mount_usr()
|
||
|
if [ "0" != "${_passno:-0}" ]; then
|
||
|
fsck_usr "$_dev" "$_fs" "$_opts"
|
||
|
_fsck_ret=$?
|
||
|
- echo $_fsck_ret >/run/initramfs/usr-fsck
|
||
|
+ [ $_fsck_ret -ne 255 ] && echo $_fsck_ret >/run/initramfs/usr-fsck
|
||
|
fi
|
||
|
fi
|
||
|
- if [ $_fsck_ret -ne 255 ]; then
|
||
|
- if getargbool 0 rd.usrmount.ro; then
|
||
|
- info "Mounting /usr (read-only forced)"
|
||
|
- mount -r "$NEWROOT/usr" 2>&1 | vinfo
|
||
|
- else
|
||
|
- info "Mounting /usr"
|
||
|
- mount "$NEWROOT/usr" 2>&1 | vinfo
|
||
|
- fi
|
||
|
+ if getargbool 0 rd.usrmount.ro; then
|
||
|
+ info "Mounting /usr (read-only forced)"
|
||
|
+ mount -r "$NEWROOT/usr" 2>&1 | vinfo
|
||
|
+ else
|
||
|
+ info "Mounting /usr"
|
||
|
+ mount "$NEWROOT/usr" 2>&1 | vinfo
|
||
|
+ fi
|
||
|
+ if ! ismounted /usr; then
|
||
|
+ warn "Mounting /usr to $NEWROOT/usr failed"
|
||
|
+ warn "*** Dropping you to a shell; the system will continue"
|
||
|
+ warn "*** when you leave the shell."
|
||
|
+ emergency_shell
|
||
|
fi
|
||
|
fi
|
||
|
}
|