At 12:10 AM -0700 6/28/06, Jordan K. Hubbard wrote:
On Jun 27, 2006, at 12:17 PM, Dan Shoop wrote:
- rsync -aE doesn't preserve BSD flags, locked flag, modification
date of files with resource forks, ACLs (I'm sure there's
gazillions of rdars)
It also doesn't appear to be able to copy files with both ACLs and
resource forks. It appears to only work if you have one or the
other. At least that was the last time I checked.
That's not true. rsync copies all EAs, of which ACLs are simply
examples of. It also copies a couple of "synthetic EAs", namely the
old-style resource fork information and the finderInfo. As far as
rsync (and tar and anyone else using copyfile()) is concerned,
however, it's just a list of EAs scattered across several different
namespaces (for various reasons, ACL-containing EAs are logically
segregated). If you want to do more digging for yourself, simply
check out the source code for copyfile() and the behavior of the
getxattr() call.
If this was fixed then it was fixed extremely recently as the issue
has been well reported extensively.
Actually attempting to test this just now (under 10.4.6) consistently
leads to a rsync EXC_BAD_ACCESS crash in acl_from_text and copyfile.
Basically this seems to occur anytime I try to rsync a file with both
and ACL and EA.
The creation date information you and maurits have been referring to
(as copied by the Finder) is another bit of information in the HFS
catalog which isn't currently exposed via stat(), but we have other
ways to get at it and will probably end up storing it as another
"synthetic EA" for portability purposes, though that's not a firm
decision yet.
That is good news.
Thanks to everyone for sparking an interesting discussion. It's led
us to renew internal discussion on this topic and we're currently
engaged in trying to work out ways of making Finder copies and
tar/cp/rsync copies more genuinely equivalent as a result.
That is even better news!
-dhan
$ rsync -avE xyzzy/fileaclxattr xyzzy2/fileaclxattr
building file list ... done
fileaclxattr
._fileaclxattr
rsync: connection unexpectedly closed (99 bytes received so far) [generator]
rsync error: error in rsync protocol data stream (code 12) at
/SourceCache/rsync/rsync-24/rsync/io.c(359)
rsync: connection unexpectedly closed (52 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at
/SourceCache/rsync/rsync-24/rsync/io.c(359)
iWiring provides systems and networks support for Mac OS X, unix, and
Open Source application technologies at affordable rates.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/darwin-dev/email@hidden