Xref: utzoo comp.sys.amiga:75623 comp.sys.amiga.tech:17369 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!cbmvax!daveh From: daveh@cbmvax.commodore.com (Dave Haynie) Newsgroups: comp.sys.amiga,comp.sys.amiga.tech Subject: Re: HD Errors Message-ID: <17076@cbmvax.commodore.com> Date: 3 Jan 91 18:44:08 GMT References: <37492@cup.portal.com> <1991Jan2.190655.15790@jato.jpl.nasa.gov> <1991Jan3.141624.25450@forwiss.uni-passau.de> Reply-To: daveh@cbmvax.commodore.com (Dave Haynie) Organization: Commodore, West Chester, PA Lines: 50 In article <1991Jan3.141624.25450@forwiss.uni-passau.de> hessmann@unipas.fmi.uni-passau.de (Georg Hessmann) writes: >In article <1991Jan2.190655.15790@jato.jpl.nasa.gov> jdickson@jato.Jpl.Nasa.Gov (Jeff Dickson) writes: >First, I don't think so (UN*X fsck deletes the file and all is ok). >Second, if really all other systems has such an bad feature is this no reason >that the Amiga OS have this too. >| It'd be nice if C= would include some fsck program, but that they >|haven't isn't going to deter my interest from programming the Amiga. The >|meek possibility of this happening stresses the importance of backups. >Diskdoctor don't help and disksalv need's another disk :-(( The lesson of DiskDoctor, among other things, is that reconstructing damaged files in-place is very difficult, and sometimes impossible, to do correctly. If your program guesses wrong, you can make the situation worse, not better. The reason programs like fsck delete the offending files, rather than try to repair them, is exactly this. A program like DiskSalv can do more, since it is copying to another disk. For example, assume you have two files linked into the same data somehow. There is no way an fsck type program can give you two safe versions of that file; the best it can do is attempt to determine which of the two files really owns that data and unlink the other from the filesystem. DiskSalv can rebuild both of them, and let the user determine which of the two, if either, is correct. And DiskSalv can't possibly rebuild a file that's not a correct filesystem file, since it uses the actual filesystem to rebuild the files. I think that both types of tools are useful, though the worst tool you can run into is the one that actually causes damage. A real fsck-type program for the Amiga's SFS/FFS isn't all that difficult to do correctly. I think the main problem with such tools is that, so far, everyone who's written them has tried to fix too much in place, and as a result, has had problems with reliability. Judging whether a file can be recovered, in the DiskSalv context, is difficult enough. DiskSalv uses a number of small evaluation functions, which are basically little expect systems, to determine if a file is safe enough to try recovering (a really wacky file could crash the recovery program, and anything too messed up is highly unlikely to have any good stuff in it anyway). Not that DiskSalv V1.42 is the end of the line, either -- I have figured out how to recover a number of errors that neither DS V1.42 nor FixDisk can manage, though there's a great deal of work left before that technology will be ready for popular consumption. >| Jeff -- Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: hazy BIX: hazy "Don't worry, 'bout a thing. 'Cause every little thing, gonna be alright" -Bob Marley