Bugzilla – Bug 121946
fsck during boot: no progress
Last modified: 2006-10-16 14:28:21 UTC
There's no progress during fsck which is run during boot (missing -C?), but only during the first one (probably /), the next fsck is with progress.
/etc/init.d/boot.rootfsck: # # If we use a serial console, don't use the fsck progress bar # FSCK_PROGRESSBAR="-V" [ -x /sbin/showconsole ] && [ "`/sbin/showconsole`" = "/dev/tty1" ] && FSCK_PROGRESSBAR="-C" [...] echo "Checking root file system..." fsck $FSCK_PROGRESSBAR -a $FSCK_FORCE $ROOTFS_BLKDEV If your file system supports this and you're not running the boot on a serial console you'll see a progress bar.
I have seen that code, of course, have you tried that? It seems like something initrd related, that first fsck without progress is probably even before init starts.
If I'm correct, something like the code in comment #1 seems to be missing in /sbin/initrd.
That is correct. However, I'm a bit loath to add a program to the initrd just to get a nice display. Especially as only ext2 / ext3 support such a thing. You're right about the '-V', of course. I'll be adding the option '-V' to Preview3.
Well, as ext2/ext3 are the most used filesystems in Linux, I'd say it'd be good. IMHO having the user wait for 10 minutes without any progress is not nice. Andreas? BTW how about other FSes, xfs, jfs, etc?
We need to have something here so that the users is informed about what's going on.
The issue is still present. If you pass the maximum mount count, the rootfs is checked during boot. But unlike all other fses which are checked later (and with progress), root is checked early, without any progress. With nowadays disk sizes user could wait significantly long time, which is really ugly. I suggest two things: 1. Add '-C' to fsck args 2. Ask the user if he wants to skip fsck this boot (with some timeout).
# grep fsck boot.crypto fsck -a -t $filesys $loopdev -> fsck of encrypted filesystems also lacks the progress bar BTW: I like both suggestions from comment #7 ;-)
Added '-C' to fsck flags in mkinitrd. Afraid we can't do the second suggestion from comment #7 as we don't necessary have a keyboard (USB modules are not loaded by default). Someone should convince gregkh to leave the USB BIOS emulation running until the USB drivers are loaded; then we can do this.
OK, thanks, will ask Greg what we could do about this. Rudi, you might want to also fix this in boot.crypto (aaa_base), see comment #8.
-C is bad. check boot.rootfsck for the correct fix. If in doubt, try it with 9600 serial console on a 42TB ext2 array.
Ok, did so. New mkinitrd rpm submitted for autobuild.