freebsd-questions Digest, Vol 638, Issue 4

Dave B g8kbvdave at googlemail.com
Thu Aug 25 12:26:39 UTC 2016


I think you're going to need something that can read/write to the drive, 
at a sector by sector level, well away from any operating system.

Even then, chances are it's a hardware failure, not a surface 
corruption, in which case sadly it's a door stop, or a job for a 
professional hard disk recovery facility, who can repair/replace (for 
example) the head read amplifiers in the drive.

The only software I know of that has any chance of rescuing drives like 
that without taking the covers off (so long as the surface can be read 
in some way) is Spinrite by Steve Gibson (Google it.)  Not free, but 
*Very* good.  It recently pulled an old XP laptop back from the brink, 
when that was stuck in a boot loop, showing unrecoverable hard disk 
errors. (It was dropped while working!)

In reality, in that case it was one sector damaged, the rest of the 
drive was fine.  It "Recovered" as much of the faulty sector (save for 
21 bits that were the problem, and that took an hour+) after that, the 
system booted as normal, the drive's SMART data was not effected, even 
chkdsk was OK..

Be careful with some of the FLOS disk testing and imaging tools, many 
will not accept any read errors from the source drive, dying, halting or 
otherwise not completing the task.  Some will hammer the faulty drive to 
it's final end.  There is nothing wrong in what they do, just that they 
don't actually "do" what many people expect.

Regards.

Dave B.

NO affiliation whatsoever to grc.com, other than a long time owner of a 
copy of Spinrite.


On 25/08/16 13:00, freebsd-questions-request at freebsd.org wrote:
> Subject:
> recoverdisk strategy
> From:
> "Christoph P.U. Kukulies" <kuku at kukulies.org>
> Date:
> 24/08/16 16:46
>
> To:
> "freebsd-questions at freebsd.org" <freebsd-questions at freebsd.org>
>
>
> Presently I'm again in the situation to have to recover a hard disk 
> that has a Windows NTFS on it, refused to
> boot Windows 7 and has a lot of I/O-Errors.
>
> I connected the disk to my FreeBSD system and now I'm trying to create 
> a dump of it using "recoverdisk".
>
> But it gives I/O-errors lots and lots and this quite slowly:
>
>
> (ada2:ahcich0:0:0:0): CAM status: ATA Status Error
> (ada2:ahcich0:0:0:0): ATA status: 00 ()
> (ada2:ahcich0:0:0:0): RES: 00 00 00 00 00 00 00 00 00 00 00
> (ada2:ahcich0:0:0:0): Error 5, Retries exhausted
> (ada2:ahcich0:0:0:0): FLUSHCACHE48. ACB: ea 00 00 00 00 40 00 00 00 00 
> 00 00
> (ada2:ahcich0:0:0:0): CAM status: ATA Status Error
> (ada2:ahcich0:0:0:0): ATA status: 71 (DRDY DF SERV ERR), error: 04 
> (ABRT )
> (ada2:ahcich0:0:0:0): RES: 71 04 9d 00 32 40 00 00 00 04 00
> (ada2:ahcich0:0:0:0): Retrying command
> (ada2:ahcich0:0:0:0): FLUSHCACHE48. ACB: ea 00 00 00 00 40 00 00 00 00 
> 00 00
> (ada2:ahcich0:0:0:0): CAM status: ATA Status Error
> (ada2:ahcich0:0:0:0): ATA status: 71 (DRDY DF SERV ERR), error: 04 
> (ABRT )
> (ada2:ahcich0:0:0:0): RES: 71 04 9d 00 32 40 00 00 00 04 00
> (ada2:ahcich0:0:0:0): Error 5, Retries exhausted
> (ada2:ahcich0:0:0:0): Synchronize cache failed
>
> Setting
> sysctl kern.cam.ada.retry_count=0
>
> seems to run faster but still it's not gathering any percentage. Still 
> staying at 0.00000 after running some 10 minutes or so.
>
> What else could I do? Skipping disk blocks/cylinders?
>
> The aim is to produces an image of the disk that contains as much as 
> possible sane sectors with the rest filled wth 0,
> so that the dump still keeps a mirror of the disk (with holes in it, 
> of course). Once being done, I'd apply a
>
> program like "testdisk" that can do a deep search and can try to 
> recover the partition information and the file system (hopefully).
>
>
> -- 
>
> Christoph



More information about the freebsd-questions mailing list