Path: utzoo!attcan!uunet!samsung!sol.ctr.columbia.edu!ira.uka.de!smurf!urlichs From: urlichs@smurf.sub.org (Matthias Urlichs) Newsgroups: comp.sys.mac.system Subject: Re: Bad Free Block Count? Message-ID: <="8rf2.n28@smurf.sub.org> Date: 29 Sep 90 14:55:32 GMT References: <4266@husc6.harvard.edu> <10438@goofy.Apple.COM> Distribution: world,usa Organization: University of Karlsruhe, FRG Lines: 84 (DFA == Disk First Aid, NDD == Norton Disk Doctor) In comp.sys.mac.system, article <10438@goofy.Apple.COM>, gandalf@apple.com (Martin Gannholm) writes: < > 3) How do I get my 1.2 Meg back, short of reinitializing the disk? < < I usually run DFA at least once a day if I've crashed at all, and 10% of < the time it fixes a problem. If you never run DFA or something like Norton < Disk Doctor (no endorsement intended although I personally like what I've < seen so far) I'd suggest you do it right away -- chances are you'll have < some error that could bite you later. < Be aware that if you ever used System 7.0 alpha/beta/anything on that disk, chances are that its catalog tree contains records which neither DFA nor NDD understand. The catalog tree is an HFS data structure which features "tagged" data types, so it's rather easy to add new features without breaking anything. Anything but disk repair tools, that is -- System 7.0 does it, and so do some copy-protected programs which have to be installed on your hard disk with a special program. :-( In the case of System 7.0, DFA will say "can't verify", NDD will say "Incompatible with System 7, call hotline at XXX-XXX-XXXX". I don't know about DFA, but NDD can be patched to treat these records as "unknown", and to continue. I did that patch last week, after not checking the disk prior to optimizing it (with Norton's optimizer). The reason for this is that the optimizer runs under A/UX, while NDD currently doesn't (it assumes too much about SCSI and/or the floppy disk driver). Result: Disk badly mangled, unfixable with anything but NDD. The patch involves hacking an in-code jump table entry. If there's demand for it, I'll recreate it next week. (Having been in a hurry, I didn't save the information on paper. :-( ) < If you leave these problems too long and they stack up, you're destined to < get weird problems with "folders from hell" and other strange behaviour < with files/folders. If DFA says "Unable to verify status of disk", I'd say < that such problems have accumulated past the point of simple repair and < your only bet is to reformat your disk. < Or some developer has tried System 7.0 on it... "Past repair" is not true, BTW. Norton's DD is far better at recovering from weird problems than DFA. < A side note to NDD, mentioned above: it seems as though there are some < problems which NDD can detect but not fix -- and in that one case that < I saw DFA was able to fix it instead! < Or vice versa -- it's a good idea to have two tools; they complement each other in that particular area. The primary difference is, of course, that NDD is a complete solution while DFA is a specific, and free, tool. Secondary is the fact that DFA just gives up when it can't fix your data structures without destroying anything, but NDD tries to patch up your data structures no matter what. I loke Norton's approach better because if the alternative is to unconditionally initialize a disk, you don't care much if some things break while trying a recovery. Another point is that NDD is very good at explaining to you what it's about to do, what the consequences of doing it are, and whether you want it to go ahead. DFA doesn't say anything at all unless the user presses Command-D (very undocumented) to bring up the logging window, which isn't exactly verbose either. NB: The most common problem after a crash is that some blocks are neither on the free list nor associated with any file. This is a benign problem; both DFA and NDD will repair these. Bad file counts (an empty folder contains 1 item :-( ) seem to be somewhat more common. NDD will fix these, DFA won't. Worst are, of course, mangled HFS data structures (which often prevent the disk from being mountable at all), and blocks belonging to the free list _and_ a file. NDD seems to have some problems with these, but usually it can get your data back. (It has some difficulties when disk blocks belong to more than one file. This is somewhat understandable. :-( ) NBNB: The origin of the above list is my development of SingleShare. In its early stages, it averaged ten crashes per day and one complete disk restore per week. I didn't have NDD at first, and what else do you do if DFA won't help you? -- Matthias Urlichs -- urlichs@smurf.sub.org -- urlichs@smurf.ira.uka.de /(o\ Humboldtstrasse 7 - 7500 Karlsruhe 1 - FRG -- +49+721+621127(0700-2330) \o)/