Subject: [netatalk-admins] 8.5 and Copying

From: "Mike Reiling" <[email-masked]>
Date: Sun, 15 Nov 1998 23:45:54 -0800

Whenever I copy a file, either to or from my netatalk box (RedHat 5.1,
pre-asun2.1.0a-6) it freezes.  I have to reboot, my mac since nothing
else will bring it back.  Both my Mac and my roomates mac do the same
thing.  Both G3s running 8.5....  any ideas?

Mike

---

From: PayPC System Mail Subscriber <[email-masked]>
Date: Mon, 16 Nov 1998 18:29:31 +1000

OOOOKay...  This one's interesting.

I have four shares (netatalk)... Applications, Projects, Public, and user's 
home. Netatalk 1.4b2+asun2.1.0a

I also have the exact same shared via Samba to WinDOZE clients. (Samba 
1.9.8p10 or whatever).

So, I had a user with two logins to the Public share (on different machines), 
one recurring user also logging into the same share, and two different 
Windows users also using that share.

Let's add a third user to the mix on a shell, modifying files on the Public 
share also.

So:

user1 (logged in twice on netatalk to Public on different machines, one is 
8.5, the other is 7.6 with ASIP 3.7.4)
user2 (logged into Public on samba)
user3 (also samba logged in)
user4 (logged into Public on netatalk)
user5 is using shell on netatalk/samba server - making some changes (creating 
directories mainly) within Public.

Well.... it was interesting.  user5 would create directories, and then all of 
a sudden, Icon\r files would be dumped into them.  Also, user1's trash would 
have some files in belonging to user4 [impossible "normally" since I use the 
"protected network trash" method of dealing with the Network Trash problem 
(see note(1) below for detailed explanation)].

Also in other weirdness, even though users 1 and 4 belong to the same group 
and Public is setup for ug+rwx by default... User1 had created some 
directories in Public, wrote some files.... and then AFTER user5 had created 
some directories [noting the weird Icon\r behaviours], he could no longer 
access the files he created in the directories he created earlier!  (He could 
see them in the Finder, but he couldn't copy them -- a quick check of privs 
showed he had rights to copy them, but the .AppleDouble counterparts looked 
weird and had a .Parent file in it -- I trashed the .Parent and chmod 
--recursive'ed his directories, and all was well)  

user1 had the "item cannot be left in trash, must delete it immediately" 
syndrome, despite the workaround in place.

[Many but not all of the directories in Public have custom icons, and 
Public's "root" does indeed have a customised icon].

I hope I've not confounded the issue here, or lost anyone by my inelegant 
explanation.

But this is terribly worrying.  Is there a recommended "policy" regarding 
multi-user access to shares managed by netatalk and other file services?

It's scary because files seemed to "replicate"/splat all over in illogical 
(and seemingly impossible) ways.  I'm sure it's an issue where netatalk had a 
certain "understanding" of the directory structure cached in memory, and 
failed to keep it coherent when it was being altered.

[I mention the samba users only to be complete, they were not actively 
altering the Public share directories at all].

VERY worrying things:

1) user1's network trash directory (trash can #3) had files owned by user5 in 
it.
2) Icon\r (and .Parent) files owned by other than the user who created (and 
the access-rights-owner) of the directory in question within a directory.
3) Access rights denial to users with otherwise full access rights/creator of 
the items themselves. (see #2 a bit)

It would be pretty difficult to replicate all of what I and my other users 
did.  I could try, and generate logs, but...  I have a sneaky feeling some of 
these problems are known design problems.

So, should I ensure all users are logged out of netatalk before altering 
directory structures from within the shell account?  So far, the samba and 
netatalk users have pretty much gotten along with each other -- netatalk 
users attempting to alter files in use by samba folk return the requisite 
access denied/file busy stuff.  At worst pretty weird errors are returned, 
but no data is ever compromised.

I am sorry I don't have more data (logs, etc)... I will probably try to 
replicate some of this in a "controlled" manner... but in casual attempts 
with just myself, I couldn't get it to act strangely.  Just how deadly is it 
to have two (or more) instances of the same user logged in?  Also, if I 
create an additional trash folder for users who login more than once (from 
diff machines), would that help with the "weird trash" problems they observe?

note(1): I use the "precreated locked-down Network Trash Folder" method of 
dealing with the Network Trash Folder "problem".  It involves setting the 
Network Trash Folder up as read-access only world, write to root only.  It 
contains a folders within it, each one owned by a particular netatalk user 
[currently 4 of them, so there are four folders] along with the usage map 
which is global write.  Each folder is read-write-access for the OWNER ONLY, 
no-access to all others.  It works well, so far... Each user has his own 
trash folder, and they don't intermingle... er, well, didn't until today.

No users have superuser rights or privs, and no superusers can connect to 
netatalk.

Oy, this is long enough...  I'd be delighted to clarify specifics of this, 
and/or try to do some logging... though as I've said, it's a tricky devil to 
try to replicate.

=Robert=