iBook HD recovery




(Yes, I sent a similar post to alt.os.linux ; I got no replies there, so
I hope you enlightened folk can shed some light on the situation.)

My sister dropped her iBook. Bad sister. So we replaced the (40 GB)
hard drive (upgrading it to 100 GB in the process), and that seems to
have been most of the problem.

So now, I've got the old hard drive in my machine (2.6.15.1) and am
trying to make it other than a total loss.

First step (I think) is to copy a HD image to a file on my system. It's
been going over a day, and it's up to 1.6 GB. Needless to say, there
are lots of errors in this part of the disk. Occasionally it'll hit an
error-free patch, but not often. The errors look like this:

hde: task_in_intr: status=0x59 { DriveReady SeekComplete DataRequest Error }
hde: task_in_intr: error=0x40 { UncorrectableError }, LBAsect=3227166, high=0, low=3227166, sector=3227160
ide: failed opcode was: unknown
end_request: I/O error, dev hde, sector 3227160
Buffer I/O error on device hde, logical block 403395

There are 1213 erroring blocks so far (according to "grep 'hde.*error=0x'
/var/log/syslog | colrm 1 27 | sort -u | wc -l"), sometimes dozens of
iterations on the same block (according to "grep 'hde.*error=0x'
/var/log/syslog | colrm 1 27 | uniq -c | sort -n | colrm 8 | uniq -c |
sort -n"). There have been of 5637 errors so far.

The multiple errors is rather odd in my view, since the "copy" command is

dd if=/dev/hde bs=512 skip=xxx conv=noerror >> file.img

No mention of retries there; maybe the IDE subsystem orders the retries.

I had to reboot the system partway through, which is why the "skip=" and
">>" in that command. Yes, an integral number of 512-byte chunks got
written to the file.

DMA is turned off for her drive, since I got errors with it being on
(which forced the aforementioned reboot).

All she wants from this drive are some JPGs and MP3s. But, what can I
do with this drive once I've copied it? Run PearPC, tell it that file's
a hard drive, and run Disk First Aid on it? Are there other copies of
the partition table I could parse, and then have Linux mount the
appropriate chunk of the file?

I have access to a "Power Macintosh 7100/66 AV", but it's at least a
decade older than the system this drive came from, and I don't have any
HFS+ tools. I also don't have any >=40 GB SCSI drives.

So, am I on a fool's errand or what?

--
-eben QebWenE01R@xxxxxxxxxxxxxxxxx royalty.no-ip.org:81

An idea that is not dangerous is unworthy of
being called an idea at all. -Oscar Wilde
.



Relevant Pages

  • Re: [PATCH] scsi_lib.c: continue after MEDIUM_ERROR
    ... generate 3-4 retries. ... FWIW -- speaking generally -- I think there are inevitable areas where libata error handling combined with SCSI error handling results in suboptimal error handling. ... Mark has some patches that let us inject media errors, we also bring back failed drives and run them through testing and occasionally get to use analyzers, etc to inject odd ball errors. ...
    (Linux-Kernel)
  • Re: ad10: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=11441599
    ... Mike Tancsa wrote: ... > a drive tray and the actual drive. ... > retries left) LBA=391423 ... I also use trays for my drives (like I did with SCSI and SCA2 on our ...
    (freebsd-questions)
  • Re: ad10: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=11441599
    ... Mike Tancsa wrote: ... > a drive tray and the actual drive. ... > retries left) LBA=391423 ... I also use trays for my drives (like I did with SCSI and SCA2 on our ...
    (freebsd-stable)
  • Re: Driver retries disk errors.
    ... > should the autodetect get it wrong: We get drives that we want to ... If the kernel silently retries and succeeds, ... > won't notice a thing and continue using the drive (or MO media) until ... send the line "unsubscribe linux-kernel" in ...
    (Linux-Kernel)
  • Re: [PATCH] scsi_lib.c: continue after MEDIUM_ERROR
    ... Actually, it's possibly worse, since each failure in libata will ... drives, that's about 3 seconds per retry on average, or 12 seconds ... The number of retries is an entirely separate issue. ... SATA disks behind SAS infrastructure would also be ...
    (Linux-Kernel)