- Joined
- Mar 6, 2014
- Messages
- 9,553
However, "cp -a" doesn't work any more, and rsync doesn't work any more. This is far to high a cost for a feature of little known utility.
rsync works. Some switches don't work as intended. Modify your rsync command accordingly. 'cp -a' doesn't work because it's trying to change mode bits. Specify the attributes that you want to preserve.
Note that this only applies to "windows" datasets, which are for samba shares. Presumably you want the files you copy or rsync to your samba share to be accessible by your samba users (and not break your permissions). This means that you do not want to preserve the mode bits from the source directory. You want the copied files to inherit the ACLs from the parent directory at their destination.
Note that samba on FreeBSD lacks the ability to use kernel oplocks (like samba on Linux does), this means that you really should avoid going behind samba's back (especially on a heavily-used samba server). This means that your 'cp' and 'rsync' process may not see when a user has a file open (because samba holds oplock info in locking.tdb), which can result in data corruption. So disabling samba's oplocks is probably also a good idea in the use-case you are mentioning.
Anyway, I use ACLs and find them very useful. Don't be so narrow-minded. :p