Re: [netatalk-admins] netatalk with PC MacLan?


Subject: Re: [netatalk-admins] netatalk with PC MacLan?
From: Jim Zajkowski (jamesez@umich.edu)
Date: Wed Mar 10 1999 - 03:00:58 EST


On Wed, 10 Mar 1999, Alex Yu wrote:

} What does .AppleDouble do? Can I turn it off?

In the land of the Macintosh (ok, so other OS's do it too, just none are a
serious) each file can have two separate parts, both having the same name.
On a Mac, they are called the resource fork and the data fork. The data
fork typically holds, well, data. Most kinds of data anyway. The resouce
fork on the other hand is a mini-filesystem of special kinds of standard
and unstandard "resource types". These include strings that appear in the
program, menu bars, windows, dialogs, sounds, and compiled program code.

Now how do you store both forks on a filesystem that doesn't do file
forks (UFS, VFAT, etc)? That's right: you split them in half and hide
one half and make the other visible. When the Mac asks for it you splice
the forks back together and it won't know the difference.

Now on the Net, Macs communication programs make use of MacBinary and
friends (AppleSingle comes to mind) which is a way to glue the data and
resource forks into a single data fork, so other computers can handle it.
That's not a realistic option when dealing with mounted servers, as no
user is going to bother to run their programs through StuffIt Expander
each time.

So the .AppleDouble directoy holds (mostly) the resource forks of the
files in the parent directory. That's not entirely true but close enough.

You don't want to get rid of .AppleDouble in most cases. If a user
uploads a Mac executable to the system then you're hosed, as you've
stripped off all the executable "stuff" when you threw away the resource
fork.

I think your situation was you were storing Windows files on a Unix server
through netatalk and a AppleShare mounter. An interesting solution. I
guess if you could figure out how to shut off .AppleDouble you could,
since nothing will have a real resource fork, but... if you do have even
one Mac you are in a much saner position to include the .AppleDoubles.

FYI, Winblows NT's NTFS can support multiforked files (as in more than two
forks). They call it a file stream, and each stream is given a nice name
like ::$Data. So if you had a file "foo", you can see its Data stream
by asking for the file "foo::$Data". If you want it's Bar stream then the
file to ask for is "foo::$Bar". Services for Macintosh, as well as being
unstable, makes use of these streams to store the fork, so the system
administrator needen't know the file is forked (since they will just see
the root name, "foo"). That's why SFM requires that shares be on NTFS
volumes only.

I hope that made sense. It's late, I should be asleezzzzzzzzzzzzzzzz

Jim



This archive was generated by hypermail 2b28 : Sat Dec 18 1999 - 16:16:24 EST