Hi, This is probably way far unsupported, but here goes: I had been running ext3 0.0.3b for a while and found that I wanted to convert back to ext2 so I could still play with 2.4test kernels. Here is what I did: 1) boot the machine with kernel args init=/bin/bash 2) run debugfs on the root partition to remove the have_journal ext2 feature flag. 3) remount the root filesystem rw as ext2 Kernel Oopsville at that point. Why does ext3 even bother journaling when the filesystem is ro? 4) edit /etc/fstab so that / is ext2 5) sync the disks and reboot. 6) boot the machine with kernel args init=/bin/bash 7) fsck the / partition manually. Believe it or not, this worked fine except for the kernel Oops. The machine is fine now, running 2.4.0test10 (I'm using it as I type). --Matt -- "In Tyler We trust."
Hi, On Thu, Nov 02, 2000 at 01:49:26PM -0500, mgalgoci@redhat.com wrote:> > This is probably way far unsupported, but here goes: > > I had been running ext3 0.0.3b for a while and found that I wanted to > convert back to ext2 so I could still play with 2.4test kernels. > > Here is what I did: > > 1) boot the machine with kernel args init=/bin/bashBut the filesystem was still mounted, as ext3?> > 2) run debugfs on the root partition to remove the have_journal > ext2 feature flag. > > 3) remount the root filesystem rw as ext2You cannot change the filesystem type on remount. All this does is to remount the filesystem as readwrite, and you've been messing with its data underneath, so I'm not surprised it got upset at this point! What was the oops, though?> Kernel Oopsville at that point. Why does ext3 even bother journaling when > the filesystem is ro?It doesn't, but it _does_ do a journal log replay (because otherwise the filesystem is in an inconsistent state, and the kernel would be caching that unrecovered bad state from mount time). I'd just have left the filesystem as ext3, though --- you can mount a cleanly-unmounted ext3 filesystem as ext2 quite safely. Cheers, Stephen
> > > Nope. Not if you want to use a kernel that lacks ext3 support. > > Wil got it right --- ext3 is just ext2 with a journal file. If you > crash, then ext3 keeps a feature flag set in the superblock which > prevents you from mounting the filesystem as ext2 without first doing > a filesystem recovery, but if you unmount cleanly then you can remount > as ext2 without modifying the filesystem at all. >My experience has been the former. Is it possible for the state machine that manages this to get out of sync and always have the have_journal flag set? -- "In Tyler We trust."
To convert the filesystem back to ext2 you simple need to change ext3 back to ext2 in your /etc/fstab and reboot. That should be it (from my understanding). On Thu, 2 Nov 2000 mgalgoci@redhat.com wrote:> Hi, > > This is probably way far unsupported, but here goes: > > I had been running ext3 0.0.3b for a while and found that I wanted to > convert back to ext2 so I could still play with 2.4test kernels. > > Here is what I did: > > 1) boot the machine with kernel args init=/bin/bash > > 2) run debugfs on the root partition to remove the have_journal > ext2 feature flag. > > 3) remount the root filesystem rw as ext2 > > Kernel Oopsville at that point. Why does ext3 even bother journaling when > the filesystem is ro? > > 4) edit /etc/fstab so that / is ext2 > > 5) sync the disks and reboot. > > 6) boot the machine with kernel args init=/bin/bash > > 7) fsck the / partition manually. > > Believe it or not, this worked fine except for the kernel Oops. > > The machine is fine now, running 2.4.0test10 (I'm using it as I type). > > --Matt > >-- Will Harris <wil@redhat.com> Red Hat Inc. ------------------------------------------------------------------------- Most Failure is due to giving up, not realizing how close to success you were - Thomas Edison -------------------------------------------------------------------------