🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.amiga.tech
Article #5316

Re: Recovering data from hard disk

#5316
From: Dave Haynie
Date: Mon, 17 Sep 1990 19:12
66 lines
3593 bytes
In article <NIX.90Sep16231320@stekt.oulu.fi> nix@stekt.oulu.fi (Tero Manninen) writes:

>Now when I am trying to recover the files from the second partition
>I get DiskSalv errors (the block difference stays at 202 blocks):
> FILE ":LOOSE-BLOCKS/DIRBLK-20800/indent.doc.Z" Block Key Mismatch:
> 21066 != 20864

>With the first partition I get errors like this (diff 102 blocks):
> FILE ":LOOSE-BLOCKS/DIRBLK-10406/Calc" Block Key Mismatch:
> 10332 != 10434

>The recovered files are pure garbage.. I suspect that they are 202 and
>102 blocks off the real data.

It sure sounds like, somehow, your partition information is confused.

>Is there any way to change this block offset ?
>I already tried to change disk partitioning but it works by cylinders,
>not blocks..

DiskSalv thinks in terms of blocks, but it generates its block information
based on the environment vector for the drive in question, which is based
on cylinders.  Specifically, the formula used is:

	LoBlock = LoCylinder * NumHeads * NumSectors

The BYTE offset of a sector (block) on a partition (BYTE offsets are required 
by the device driver interface) are given by:

	ByteOffset = BLOCKSIZE * (LoBlock + sector)

If the partitions you're getting from your automounting drive don't look good
to DiskSalv, you may have one or more of these partition numbers corrupted.
It's a good idea to figure out what the device is logically formatted to; on
SCSI devices, the physical Head, Cylinder, and Sector numbers aren't always
used; the total number of blocks is what counts, and the Head, Cylinder, and
Sector numbers your device has been formatted to determines how stuff was
written on the disk.  You can write up a dummy partition, if you like, using
a Mountlist, and give that to DiskSalv instead of the automounting partitions,
if that's easier.  Just create a MountList entry, Mount it, and give that 
name to DiskSalv as an input file.  It probably wouldn't be too difficult to
write a small utility that does this automatically.

These errors from DiskSalv sometimes show up with disks that have had different
partitions on them over their lifetime.  In that case, there would probably be 
a number of bogus files along with the good ones, but there will be good ones.
If everything is consistently offset, you probably have bad partition 
information for your main disk.

>Oh, I was just to forget.. the DiskSalv is v1.42, very nice program.

Thanks!  DiskSalv V2.00, available possibly in early 1991, will be much nicer
I think.  While it's far from complete, an early DS V2.00 did recover 
everything from a disk that confused V1.42.  One of the flaws in V1.42 is that
it doesn't fully handle the problems that crop up on a disk with a long
history, where there may have been multiple partitions or other quirks that
develop on a disk that's been in use for many years.  This stuff just keeps
getting trickier....

>++Tero


-- 
Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
      Get that coffee outta my face, put a Margarita in its place!
Technical Details
Message-ID: <14491@cbmvax.commodore.com>
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!cbmvax!daveh
References: <NIX.90Sep16231320@stekt.oulu.fi>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!cbmvax!daveh
From: daveh@cbmvax.commodore.com (Dave Haynie)
Newsgroups: comp.sys.amiga.tech
Subject: Re: Recovering data from hard disk
Message-ID: <14491@cbmvax.commodore.com>
Date: 17 Sep 90 19:12:01 GMT
References: <NIX.90Sep16231320@stekt.oulu.fi>
Reply-To: daveh@cbmvax.commodore.com (Dave Haynie)
Distribution: comp
Organization: Commodore, West Chester, PA
Lines: 66