[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Warning mounting ext3 as ext2

On Fri, 02 Jan 2004 10:12:30 +0100, David Baron wrote:

> <<To get a list of filesystems supported by your kernel, from the command
> line type;
> cat /proc/filesystems
> So here it the output of this:
> nodev   rootfs
> nodev   bdev
> nodev   proc
> nodev   sockfs
> nodev   tmpfs
> nodev   shm
> nodev   pipefs
>         ext2
> nodev   ramfs
>         vfat
>         iso9660
> nodev   devpts
> nodev   usbdevfs
> nodev   usbfs
>         msdos
>         ntfs
>         ext3
> nodev   autofs#
> Can I assume that ext3 is, as I suspected, supported here?
> I notice there are several fsck flavors around includeing the fsck we run 
> manually (hopefully I no longer need to use it) and an e2fsck which may be 
> the one running on boot (and maybe giving that warning). There are also 
> fsck.*****  files for each file system as well.
> BTW, Knoppix is a Debian distribution. Knoppix provides a CD image and 
> autoconfigures a KDE desktop. I apologize for any duplicated off-list 
> mailings. I am not clear as to what should be on-list and what is better 
> off-list.


I feel like I owe you one for being a bit crabby in my last post, so, here
we go.

Knoppix is *not* a Debian distribution, by the way, so if you are going to
ask questions about knoppix, you need to indicate that you are running a
knoppix distribution.  Knoppix is loosely based on debian unstable, but it
is *not* the debian unstable distribution.

A linux 2.4 kernel may be configured in one of two ways:

1.  Everything it needs to know to start the system is compiled into the
kernel binary.
2.  Only some of what it needs to know to start the system is compiled
into the binary;  the other stuff it needs (modules) is stored on a small
filesystem image called an initrd (initial ram disk).

On boot, if the kernel is configured like (1), it starts up and eventually
does the first ro mount of the root filesystem based on both /etc/fstab
and what is compiled in.  In your case, if ext3 is not compiled in to the
kernel, it will mount the root fs as ext2.

If the kernel is configured as (2) above, it will load the initrd image
into ram and use it as a small root filesystem.  When it does the first ro
mount of the root filesystem, it will mount it as ext3 if either ext3 is
compiled into the kernel or the ext3 module is present on the initrd image.

After the boot is complete, the kernel can use the modules on the real
root filesystem to remount the root filesystem as ext3.

OK, I hope that makes sense so far.

>From your report, it appears that the first ro mount of the root
filesystem is as ext2.  This means that your kernel does not have ext3
either compiled in (1 above) or it's not on the initrd (2 above).

I suspect the following:

Your kernel does not have ext3 compiled in, and it also does not use
initrd or does not have ext3 module on the initrd.  Particularly as your
kernel version is set as -xfs;  that would imply that it's a kernel
intended mainly for a root filesystem of type xfs, not ext3.

You need either to recompile your kernel to add compiled-in ext3
support, or you may need to recompile it to add initrd support if you
prefer that, or the simplest solution is to use a kernel which has ext3
support provided, like the debian 2.4... kernels.


Programming without a hex editor is like watchmaking without a hammer.

Reply to: