*BSD News Article 90441


Return to BSD News archive

Path: euryale.cc.adfa.oz.au!newshost.carno.net.au!harbinger.cc.monash.edu.au!munnari.OZ.AU!news.ecn.uoknor.edu!feed1.news.erols.com!cpk-news-hub1.bbnplanet.com!su-news-hub1.bbnplanet.com!news.bbnplanet.com!news.sgi.com!enews.sgi.com!ames!purdue!oitnews.harvard.edu!fas-news.harvard.edu!giffin.student.harvard.edu!user
From: daniel@eecs.harvard.edu (Daniel B Giffin)
Newsgroups: comp.unix.bsd.freebsd.misc
Subject: how to recover from bad blocks?
Date: Thu, 06 Mar 1997 00:43:26 -0500
Organization: Harvard University, Cambridge, Massachusetts
Lines: 62
Message-ID: <daniel-0603970043260001@giffin.student.harvard.edu>
NNTP-Posting-Host: giffin.student.harvard.edu
Xref: euryale.cc.adfa.oz.au comp.unix.bsd.freebsd.misc:36616


I just took my FreeBSD box down to install some more memory (which,
from the PC's BIOS messages, appears to be fine) and, upon restarting,
found I had some bad blocks in my root partition (some of the log
messages are below).

I have been trying to fix the hard drive (it is IDE) with the fixit disk.
The relevant tools appear to be "bad144" and "badsect",
but I have not used these before and the documentation is very
confusing.

Invoking "bad144 /dev/wd0" gives me a list of what I
understand to be the bad-block forwarding information that the driver
has already written to the disk by itself (it is some twenty lines
long).  I don't understand what I need to do: add new bad blocks to
the list manually?  Rewrite the whole bad block list because it has
perhaps been damaged itself?  Further, badsect appears to offer a
different way of avoiding bad blocks and I don't understand the
difference.

Thanks for any help.

daniel
<daniel@eecs.harvard.edu>

----------------------------------------------------
WARNING: / was not properly dismounted
...
Automatic reboot in progress
/dev/rwd0a: PARTIALLY TRUNCATED INODE I=852 (SALVAGED)
/dev/rwd0a: 33722979 BAD I=852
/dev/rwd0a: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY
...
    [ here i say yes to all the fsck stuff and then reboot -n ]
...
[ what appears to be a successful boot ]
...
configuring syscons:Feb 28 14:55:01 meursault /kernel: pid 114 (sh),
uid 0: exited on signal 11
bad block 3133539, ino 852
bad block 3133539, ino 852
bad block 3133539, ino 852
bad block 3133539, ino 852
bad block 3133539, ino 852
...
bad block 1699939, ino 852
bad block 1699939, ino 852
bad block 1699939, ino 852
bad block 1699939, ino 852
bad block 1699939, ino 852
bad block 1699939, ino 852
bad block 1699939, ino 852
bad block 1699939, ino 852
bad block 3133539, ino 852
bad block 3133539, ino 852
bad block 3133539, ino 852
bad block 3133539, ino 852
...
[ hangs here, eventually tries to reboot itself ]
----------------------------------------------------

.daniel.