Jump to content

Usage of ext3 in Mandrake 9.1


neutro
 Share

Recommended Posts

In my understanding, the ext3 journalling filesystem was supposed to prevent lengthy (and frightening) fsck checks after crashes / hard reset. I'm running Mandrake 9.1 on ext3 filesystems, yet after hard resets, I get the following message on the following bootup:

Your system appears to have shut down uncleanly. Press Y within 5 seconds to force filesystem integrity check

If I press Y, fsck starts for a first pass, fixing small errors such as inode dtimes. Then it asks me if I want to repair errors, and if I press Y again, fsck run a second time, deleting inodes, etc. Exactly what I thought ext3 would prevent.

 

After some discussion with a friend, I realized that ext3 support is not compiled in the mdk9.1's stock kernel, but rather compiled as a kernel module. Thus, when the root filesystem is mounted in r-o mode at boot-up, the ext3 module is not yet loaded, and thus is mounted as an ext2 filesystem. And if it was not cleanly unmounted, fsck is triggered, before the journal could have been replayed.

 

On an obscure forum :D, I read that one should answer 'N' to fsck in order to wait for the ext3 module to be loaded. When remounting the root filesystem in rw mode, ext3 would then be loaded and the journal could then be replayed, without any need to run fsck.

 

Thus, I made a test. I *purposely* did a hard reset just to see. When I was asked the above question, I didn't press Y. I then got:

Checking root filesystem

/dev/hda1 was not cleanly unmounted, check forced.

This is, as far as I can tell, the habitual first fsck pass where inode dtimes are fixed. Afterwards I get:

(...)

/dev/hda1: ***** REBOOT LINUX *****

(...)

Failed to check filesystem. Do you want to repair the errors? (Y/N)

(beware, you can lose data).

First of all... What does the "reboot linux" mean? That Linux just rebooted? That would be surprising. That I have to reboot linux? Well, I'm certainly not hard-resetting my computer between two fsck passes! Second, what should a Mandrake 9.1 + ext3 user answer to this question? I was too chicken to risk running my system with a corrupted filesystem, so I pressed Y.

 

The interesting thing here is that, unlike when I press Y within 5 seconds at the first question, I got no second fsck pass there (maybe there just wasn't any error?). The boot-up just continued normally, remounting the root filesystem in rw mode. And later:

/dev/hda5 Recovering journal

/dev/hda7 Recovering journal

 

Well. Can someone tell me what's going on? Should I press Y or N to fsck questions? If I should press N, does that mean that it's something that Mandrake overlooked?

Link to comment
Share on other sites

Just don't press anything, and it will check if it can recover the journal. If it can, all is fine.

That's thanks to ext3.

And yes, it is in the kernel, not a module.

 

The forced check is an option that people would shout about if it weren't there, but really afaics not necessary.

Link to comment
Share on other sites

Just don't press anything, and it will check if it can recover the journal. If it can, all is fine.

That's thanks to ext3.

And yes, it is in the kernel, not a module.

 

The forced check is an option that people would shout about if it weren't there, but really afaics not necessary.

What do you do if it doesn't recover? I had a breaker blow last Saturday and when I fixed that and powered the box back up I got the error bad Supermount. I tried knoppix and e2fsck but I get the error still bad supermount. I tried the -b options but still the same.

 

I'm starting to think that it's royally fried and theres only one thing left to do. Reinstall.

Link to comment
Share on other sites

Just don't press anything, and it will check if it can recover the journal. If it can, all is fine.

 

Ok, so if I do that but end up with the "Failed to check filesystem. Do you want to repair the errors" message, that would mean that the journal failed to be recovered, and I should press Y?

 

And yes, it is in the kernel, not a module.

 

Huh, nope. In Mandrake 9.1 it's a kernel module:

# lsmod | grep ext3
ext3                   64704   2  (autoclean)
jbd                    48532   2  (autoclean) [ext3]

 

The forced check is an option that people would shout about if it weren't there

 

Obviously!

 

Thanks for your input.

Edited by neutro
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...