After replacing the dead hard drive in my iMac, Apple installed a
fresh 10.4 "Tiger" system.
Apparently not fresh enough, as any attempt to connect to the
Personal File Sharing server a.k.a. AppleShare caused AppleFileServer
to crash.
I discovered this not by any sort of GUI notification (though this
might be a blessing in disguise) but by examining the Console log.
One might have hoped for a message like: "AppleFileServer: can't
open /Library/Preferences/com.apple.ByteRangeLocking.plist: no such
file or directory" but instead I was informed that it has crashed.
Googling the name of the routine it crashed in suggested that the
absence of the above configuration file might be the culprit, and
sure enough it was missing.
The solution of course, is to restore it from a known good copy.
Good thing I have another installation of Tiger just lying around on
an old laptop. I scped the file over and now all is well.
Or, was.
I have an application that walks a file tree. There are certain
hateful things about it, but it works within limitations that are
known and acceptable to me. It transparently works over AppleShare,
too. I use it to synchronize files between various OS 9 hosts and my
iMac.
Except that today I went to run this app on my iBook, which (a) is my
only Mac connected wirelessly and (b) hadn't been synchronized in a
while. I started a dry run to make sure the alias to the network
volume still resolved, and it ran at least half-way through before it
stopped producing output, and soon after the Finder crashed. Soon
after that, each of my other connected Macs beeped and posted 'the
server is AWOL' alerts.
Naturally, stopping and starting File Sharing doesn't fix things,
because (a) it's the obvious (or 'intuitive') thing to try, (b) it's
really easy, and (c) it would demonstrate that "it just works".
Killing the AppleFileServer process didn't work. Tweaking the
Network settings (to force an update) didn't work. Temporarily
disabling IPv4 and reenabling it also didn't work, with the
additional effect that it no longer talks to the DHCP server. I
guess Apple is trying to tell me that yes, I really do need to
restart to fix things, and I should stop trying to cheat my way out
of such obligations.
On the other hand, I should be glad I'm not running Linux, where you
have to resort to such hacks as `/etc/init.d/networking restart`. I
don't see why it should be that complicated.
Did I mention that Mac OS X is not Unix?
Josh