if fsck exits with error code 4 no way for non-experts to recover

Bug #385882 reported by Michael Vogt on 2009-06-11
This bug affects 1 person
Affects Status Importance Assigned to Milestone
mountall (Ubuntu)

Bug Description

Binary package hint: sysvinit

When mounting the rootfs fails because of fsck exiting with error code >= 4 the user sees a message that he/she needs to manually run a file system check. It does not tell the user how to do that. A non-expert is left in the dark at this point how to restore his system.

Booting into recovery mode (and use the fsck option there) does not work either because the checkroot.sh is still run and drops to a shell.

I would like to improve the error output to contain instructions what the user needs to do, something like:
--- sysvinit-2.86.ds1/debian/initscripts/etc/init.d/checkroot.sh 2009-06-11 13:14:03.000000000 +0200
+++ sysvinit-2.86.ds1/debian/initscripts/etc/init.d/checkroot.sh 2009-06-11 13:14:05.000000000 +0200
@@ -320,9 +320,10 @@
                # Surprise! Re-directing from a HERE document (as in "cat << EOF")
                # does not work because the root is currently read-only.
                log_failure_msg "An automatic file system check (fsck) of the root filesystem failed.
-A manual fsck must be performed, then the system restarted.
+A manual fsck must be performed, then the system restarted.
 The fsck should be performed in maintenance mode with the
 root filesystem mounted in read-only mode."
+ log_failure_msg "Please run \"fsck $rootdev\" manually to fix the problem."
                log_warning_msg "The root filesystem is currently mounted in read-only mode.
 A maintenance shell will now be started.
 After performing system maintenance, press CONTROL-D

In addition we may consider ignoring this failure and continue booting in ro-mode when the user selects the recovery option and/or check for /usr/share/recovery-mode/recovery-menu and use that in favor of sulogin (if available).

Steve Langasek (vorlon) on 2013-05-17
affects: sysvinit (Ubuntu) → mountall (Ubuntu)
Changed in mountall (Ubuntu):
assignee: nobody → Dmitrijs Ledkovs (xnox)
Anders (eddiedog988) on 2014-03-13
Changed in mountall (Ubuntu):
status: New → Confirmed
Dimitri John Ledkov (xnox) wrote :

mountall is no longer used in xenial, with switch to systemd

Changed in mountall (Ubuntu):
status: Confirmed → Invalid
Changed in mountall (Ubuntu Precise):
status: New → Confirmed
Changed in mountall (Ubuntu Trusty):
status: New → Confirmed
Changed in mountall (Ubuntu Vivid):
status: New → Confirmed
Changed in mountall (Ubuntu):
assignee: Dimitri John Ledkov (xnox) → nobody
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers