How a full fsck screwed up my SU+J filesystem

From: Garrett Cooper <yanegomi_at_gmail.com>
Date: Wed, 1 Dec 2010 01:28:06 -0800
	So... I was doing a portmaster -af today because vlc stopped playing audio (for some reason ... I kind of went on a pkg_cutleaves rampage and probably deinstalled too much stuff), and the machine hardlocked during an upgrade. I did a soft reboot and saw messages along the lines of "your journal and filesystem mount time mismatched; running a full fsck". I figured "ok, sure..." and let it do it's thing. Problem was that it pruned a lot of stuff from my /usr partition -- including the .sujournal !!! So now it's stuck at Mounting local file systems: stating:

Failed to find journal.   Use tunefs to create one
Failed to start journal: 2

	(I assume the 2 means ENOENT). All of the above were printf(9)'s from the kernel.
	Now the machine won't continue in multiuser mode (doesn't respond to interrupts, no panic, etc). Going into ddb, I don't see anything in info_threads (just a bunch of references to sched_switch, a few to fork_trampoline, cpustop_handler, and kdb_enter). I'm going to try and massage the machine back to life from single user mode, but the fact that this died in this way (i.e. .sujournal getting nuked by a full fsck) is a bit disheartening for SU+J :(... It would be nice if at least the fsck aborted before going and nuking the journal :/... (or at the very least if the file wasn't removable -- i.e. SF_NOUNLINK).
	Here's to hoping I can resuscitate the filesystem...
Thanks,
-Garrett
Received on Wed Dec 01 2010 - 08:28:11 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:09 UTC