Date: Sun, 24 Aug 2003 21:26:11 +0200 From: Thomas Gutzler <giggel@hadiko.de> To: FreeBSD Current <freebsd-current@freebsd.org> Subject: recover superblock Message-ID: <20030824192611.GA14668@brain.hadiko.de>
next in thread | raw e-mail | index | archive | help
Hi, I just lost all of my filesystems on my 5.1 box. I was running mnogosearch's indexer on my website while several errors occured. I guess there were 320 of these errors, cause the last message was "last message repeated 320 times". Unfortunately /var is lost as well, so I don't have more error messages. kernel: swap_pager: indefinite wait buffer: device: ad0s1b, blkno: 23536, size: 4096 kernel: ad0: WRITE command timeout tag=0 serv=0 - resetting kernel: ata0: resetting devices .. kernel: done kernel: bad block 4190320178290426368, ino 402986 kernel: pid 42 (syncer), uid 0 inumber 402986 on /usr: bad block I decided to reboot into singleuser and run fsck. I noticed, that the buffers couldn't be flushed before restarting and the system couldn't boot. It said: "not ufs" I plugged the harddisk into another computer and tried to run fsck. It couldn't find a superblock, used an alternative one and coredumped while trying to repair the first error. Before dumping, it said something like "Couldnt allocate 3900000000 bytes for inoinfo". I can only remember the value of around 3.9G. This happened on all filesystems of ad0. I could mount the filesystem but not access it, but df said: Used: -2.8T (on a 40G disk). I surrendered on that and ran newfs. I don't know why, but fsck works on ad1. fsck said something like "softupdate inconsistency" while trying to repair the filesystem which obviously didn't completely work. # fsck /dev/ad1s1e ** /dev/ad1s1e Cannot find file system superblock LOOK FOR ALTERNATE SUPERBLOCKS? [yn] y USING ALTERNATE SUPERBLOCK AT 32 ** Last Mounted on ** Phase 1 - Check Blocks and Sizes ** Phase 2 - Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups 19093 files, 42115174 used, 33631703 free (6471 frags, 4203154 blocks, 0.0% fragmentation) # mount /dev/ad1s1e /mnt/ mount: /dev/ad1s1e on /mnt: incorrect super block same thing using fsck -b 32 or any other alternative Google somewhere advised to use tunefs, but: # tunefs -A /dev/ad1s1e tunefs: /dev/ad1s1e: could not read superblock to fill out disk Even trying to copy an alternate superblock using dd faied. Do you have any ideas, how I could recover the data on this disk ? Cheers, Tom
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030824192611.GA14668>