Comment 2 for bug 209416

Revision history for this message
Theodore Ts'o (tytso) wrote :

This looks like an upstart bug. There are certain bugs which e2fsck will not fix automatically, but where it wants a human to look at the filesystem and decide what the right thing is before just going ahead and blindly fixing the problem. (For example, the filesystem corruption might result in an access control list file for sudo or some firewall to go missing, and that might leave the system unprotected.) In those cases, e2fsck will print a message:

 fprintf(stderr, _("\n\n%s: UNEXPECTED INCONSISTENCY; "
  "RUN fsck MANUALLY.\n\t(i.e., without -a or -p options)\n"),
        ctx->device_name);

And then exit with an error code of 4 (filesystem errors left uncorrected) OR'ed into the exit code. See the fsck man page for more details about the error code reporting convention.

This error:

/dev/sda9: Inodes that were not part of a corrupted orphan linked list found. fsck died with exit status 4

is one that will result in e2fsck calling preenhalt(). But it appears that upstart isn't making the message be visible (maybe because it's only paying attention to stdout and not stderr?). And if then reboots, the same thing will happen again, and again....