So if the (tiny 40GB) hard disk in the little daughter's old inherited iBook (G3, "Dual USB", I think) starts getting all upset while being the sole holder of a few important things like an almost-finished National Merit Scholarship Semifinalist essay, and a cover she did of a Billy Joel song, and a whole bunch of Adium logs covering many of the key events of her young life, what does one do?
Erase huge useless console logs of the sort that something (probably iTunes) likes to fill the disk up with now and then. This apparently buys a bit of time when the little daughter does it, but soon odd things happen again, and now the iBook even refuses to boot.
Try Disk Warrior; we've had good luck with this before, but this time it just hangs forever at like step 5, which is I dunno "locating catalogs" or something. At this point the problem is turned over to Level Two: me.
Try Disk Warrior again; doesn't work any better this time.
Try the Disk Utility from the OS X install disk, by holding down C while the machine boots. This says that, sure enough, some of the keys are in the wrong order in the catalog. The Repair button claims to have repaired it almost instantly, but verifying again says that some of the keys are in the wrong order, and indeed it boots no better than before.
Try to boot in single-user mode by holding down apple-S while the machine is coming up. This takes a very long time, and then fails with the same blinking questionmark as a normal boot fails with.
Try Target Disk Mode by holding down "t" while the iBook boots. This apparently works in the sense that the big Firewire symbol appears on the iBook's screen and moves around, but nothing ever appears on the machine at the other end of the Firewire cable. Presumably it's having a hard time reading the hard disk, and as we've seen before Firewire Target Disk Mode doesn't have much in the way of error checking or reporting.
Poke around in Open Firmware Mode by holding down apple-option-oh-eff while the machine is coming up. This enabled me to issue random commands in a quirky little FORTH environment which isn't very well documented out there on the Web or anywhere else that I could find, but which did allow me to see the machine's device tree, and the directory on the hard disk, including the name of the NMS essay that was the most vital thing to get back. So I had some hope that the file might actually still be there. (I also set boot-args to "-v" at this point, so future attempts to boot got lots of juicy if incomprehensible messages.)
Try to load the file using the Open Firmware "load" word. But this word is intended to load boot-command-file things in certain formats, none of which matched the little daughter's essay, so the machine just said "unrecognized Client Program format" at me, or other words to that effect, and as far as I can tell didn't load the contents into memory anywhere.
Try to boot in single-user mode from the CD. Holding down apple-S-C doesn't do this, but holding down just Option brings up a wordless menu containing only the CD, and clicking on that and then holding down S seemed promising. But after a bit of humming and clicking, the machine sat there saying "still waiting for root" or something like that over and over for a long time. Grrrr!
Go see "Across the Universe"; it's a good movie, and fun to go to with one's family all of whom are more or less Beatles fans. But the iBook is still broken when we get back.
Try to boot in single-user mode from the CD again in just the same way. This time it works! We have a shell prompt! And although we remember very little about the details of 'mount', we have Google!
Mount the frotzed hard drive readonly in single-user mode by typing (naturally) 'mount -t hfs -o rdonly /dev/disk0s5 /tmp'. Or something like that. (I don't know why there's a /tmp on the CD, but it's nice that it's there to use as a mount point.) The several variations on this command that I first tried didn't work, but this one (or something like it) finally did. Don't ask me how I knew that the filesystem I wanted was disk0s5; the string just passed by my eyes at some earlier step, and (Goddess be praised) it stuck in my mind.
Display the file's content on the screen using my elite "cd" and "cat" skills. It appears to actually be there!
Summon the little daughter and verify that these are indeed all and only the lost important words, accept her effusive thanks, and so on.
This took pretty much the whole afternoon and evening, but that smile at the end made it all worthwhile. (Yes, she has me wrapped around her finger; this is not news.)
And effusive thanks to M in turn, for having tolerated my absence from various house-cleaning and box-carrying duties for most of the day. *8)