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

Re: ext3_readdir error



On Aug 10, 2002  22:14 +1000, Martial Herbaut wrote:
> I unmounted it and it returned:
> fsck.ext3 /dev/sda1
> e2fsck 1.26 (3-Feb-2002)
> Group descriptors look bad... trying backup blocks...
> Segmentation fault

Well, you might get some better behaviour from 1.27, but you might not.
The only way to really debug the oops is to run e2fsck under GDB, and
unless that is fixed there is not much that can be done to repair this
filesystem.

> the system has not been rebooted. would rather not..

Well, it is likely that any (bad) data in memory has been written to
disk already anyways.  It looks like someone/something overwrote your
disk with zeros.  Try something like:

od -Ax -tx4 -a /dev/sda1

to see if there is anything there at all worth saving, or if the whole
disk was overwritten.  If the backup superblock and group descriptors are
also gone (which are at an offset of 8MB into the filesystem) then there
is not much hope.  The only chance is that there _is_ data there and
e2fsck is just crashing when it is trying to read the backups...

If everything is gone, you may as well just make a new filesystem and
restore your /boot partition.  There is not much important data there,
just your kernel and maybe the initrd.  You can copy the kernel from
/usr/src/linux or another system another system and re-run mkinitrd,
or re-install your kernel RPM to get it back.  You need to re-run
lilo if you are using it and not grub.

>  Group  0: block bitmap at 0, inode bitmap at 0, inode table at 0
>            0 free blocks, 0 free inodes, 0 used directories
>  Group  1: block bitmap at 0, inode bitmap at 0, inode table at 0
>            0 free blocks, 0 free inodes, 0 used directories
>  Group  2: block bitmap at 0, inode bitmap at 0, inode table at 0
>            0 free blocks, 0 free inodes, 0 used directories

> > > lseek(5, 2048, SEEK_SET)                = 2048
> > > read(5, "\3\0\0\0\4\0\0\0\5\0\0\0\17\6\265\7\2\0\0\0\0\0\0\0\0\0"..., 
> > > 1024) = 1024
> > 
> > Reading the group descriptor table, OK.

What is interesting is that in your first message, it read the group
descriptor OK (it had block bitmap at block 3, inode bitmap at block 4,
and the inode table at block 5, along with the free block counts), and
now it looks like it also had problems reading the group descriptor.

Cheers, Andreas
--
Andreas Dilger
http://www-mddsp.enel.ucalgary.ca/People/adilger/
http://sourceforge.net/projects/ext2resize/





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