[ale] dd & unexpected soft update inconsistency, HUH ?
Courtney Thomas
ccthomas at joimail.com
Fri Apr 15 19:02:46 EDT 2005
On Fri, 2005-04-15 at 10:47, Greg Freemyer wrote:
> On 4/15/05, Courtney Thomas <ccthomas at joimail.com> wrote:
> > On Fri, 2005-04-15 at 08:49, Stephan Uphoff wrote:
> > > On Fri, 2005-04-15 at 09:25, Courtney Thomas wrote:
> > > > I've been using dd for years to mirror my server HD without problems.
> > > >
> > > > The command used is: dd if=< original HD > of=< mirror HD >
> > >
> > > I don't think dd is a good idea on a life file system ....
> > > ...but you probably know this so let's ignore this for now.
> > >
> >
> > Stephen,
> >
> > Thank you for your help :-)
> >
> > I'm not doing this on a live file system. I'm booting up with a CD and
> > doing this on unmounted filesystems.
> >
> > > > However, yesterday, for the first time, when I do this, I get the error:
> > > >
> > > > UNEXPECTED SOFT UPDATE INCONSISTENCY
> > > >
> > > > This happens to mirror HD /usr only.
> > > > Mirror HD / and /var do not exhibit this problem.
> > > >
> > > > If I fsck the mirror HD, all is OK except mirror HD /usr in which I get
> > > > a plethora of errors complaining about soft update inconsistencies.
> > > >
> > > > If I attempt to examine mirror HD /usr with ls -l, I see there's also a
> > > > raft of BAD FILE DESCRIPTORs.
> > > >
> > > > Further, the dd completion screen shows... an error coming from the
> > > > original HD, i.e. not the mirrored HD, drive. It only reports "[original
> > > > HD] input error". But when I fsck all partitions of that original HD,
> > > > all is reported as satisfactory.
> > >
> > > Looks like you have a bad sector somewhere on the disk.
> >
> > I agree it looks like it, maybe. But why doesn't fsck find this ?
> >
> > > Is there something in the log file?
> >
> > Which log file ?
> >
> > > The /usr partition is probably only partially copied.
> >
> > You are correct on this too.
> > >
> > > You can try the following:
> > > 1) tar up /usr so that all used data blocks will be read.
> > > This may indicate an unreadable file .. or you may be lucky and the
> > > bad sector is in unused space.
> >
> > tar needs a mounted filesystem right ? [I don't use tar.]
> >
> > > 2) Locate the defect sector (dd to /dev/null with offset,counts...)
> >
> > > 3) Write zeroes to the defect sector to "repair" it and fsck..
> >
> > I understand the writing zeroes to the bad sector using an offset, but
> > how do I exactly determine how many zeroes to write ?
> >
> > Also, I assume you recall that fsck gives no error message now.
> >
> > > 4) Restore the file that was not readable in 1)
> > >
> > > I believe that there are disk repair tools in the ports tree but never
> > > had the need to try them.
> > >
> > > > What's goin' on here and how can I remedy it. This is my gateway server
> > > > and I urgently need to resolve this.
> > > >
> > > > Appreciatively,
> > > >
> > > > Courtney
> > > >
>
> Basically it sounds like your disk crapped out.
>
> Trying to salvage the old disk itself is likely a waste of time and
> will lead to future problems.
>
> I know you were trying to make a backup, but do have a recent one you
> could use?
>
> If you do have to disk recovery of the data, I would reperform your dd as:
>
> dd if=/dev/orig of=/dev/target conv=noerror,sync
>
> Then run fsck etc. on the new disk. Or better yet on a cc copy of the
> new disk. ie. Save away the dd image for repeated recovery attempts.
>
> In the above, noerror says to continue copying even in the presence of
> errors. sync says to fill the failed read blocks with zeros.
> (Default behavior is to skip the block. Very bad if you need to
> reconstruct the filesytem because the offsets will be wrong.)
>
> You can also try dd_repair (I think). I have not used it, but it is
> designed to get data off of a failing disk.
>
> Greg
Greg,
Thank you so much for your kind attention.
I've already used dd with the conv=noerror, sync and the mirror is now
bootable but I don't know what I've lost, both from the original and the
mirror. BTW fsck was OK with both.
Do I understand correctly that now the mirror offsets will be wrong ?
Gratefully,
Courtney
More information about the Ale
mailing list