On Thu, 2003-04-10 22:17:49 +0200, Hartvig Ekner <firstname.lastname@example.org>
wrote in message <3E95D16D.1671BA5A@ekner.info>:
> Jan-Benedict Glaw wrote:
[ext3 fs corruption after journal recovery]
> I can reproduce this anytime by just pushing the reset button and checking
> the filesystem
> at reboot after ext3 recovery has run. However, if I just do regular fsck's
> (without unclean
> shutdowns) nothing seems to be wrong. So I am pretty sure it is something
How do you invoce fsck?
> goes wrong in conjunction with the unclean shutdowns.
That's bad then:-(
> Is ext3 journal recovery really supposed to recover everything to a state
> where fsck returns no
> errors, or is it potentially leaving non-fatal errors in the filesystem (e.g.
> lost inodes which just
No. The concept is different.
Such a journal will log things like:
- File creation/deletion
- Owner/timestamp/access changes
These informations are restored during journal recovery. Most
filesystems do /not/ store the actual data you're writing to a file into
the journal. So, after you've issued a write() and presses the reset
button, the journal contains the new filesize, but by possibility
__not__ the data you've written to the file. So file size is okay, but
file content isn't. It's basically the job of the journal to keep your
filesystem intact, but not your data.
If you do this:
- Boot with / mounted r/o
- e2fsck -f /dev/your-root-device
- Boot with / mounted r/w
- Write something
You shouldn't see fsck failing (except it may replay the journal for
filesystems which hadn't been mounted on /).
If you see corruption here (ie. fsck finds problems after replaying the
journal), something is serverely broken.
> reduces capacity, but does not cause further corruption if the filesystem is
> used) which will then
> be picked up by a later fsck when one has time to run it?
It should present you a f/s with no *known* problems. If corruption
(broken DMA transfers, ...) took place, this hasn't eventually logget
into the journal so this isn't recovered:-)
> What does the error "Inodes that were part of a corrupted orphan linked list
> found." actually
> mean? Is this a fatal error, or a non-critical error along the lines I
> described above (an error
> which does not get any worse if the filesystem is used)?
I think this basically means that fsck found files of a (destroyed)
directory. But for exact statements here, read e2fsck's sources...
> Is there anybody with ext3 up and running who would volunteer to do a couple
> of unclean
> shutdowns and see if the recovery works without any fsck errors present
Jan-Benedict Glaw email@example.com . +49-172-7608481
"Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg
fuer einen Freien Staat voll Freier Bürger" | im Internet! | im Irak!
ret = do_actions((curr | FREE_SPEECH) & ~(IRAQ_WAR_2 | DRM | TCPA));
Description: PGP signature