osx 10.6 strange rsync errors

Benjamin R. Haskell rsync at benizi.com
Tue Apr 6 07:14:06 MDT 2010


On Mon, 5 Apr 2010, Robert DuToit wrote:

> Hi Matt,
> 
> I set up a simple test with a nest of directories ( aa > bb > cc > dd 
> &ee) with 1 file in each.  running rsync from OS 10.6 to another Mac 
> with OS10.5 there seems to be no problem. When doing the reverse I am 
> seeing the odd behavior.
> 
> Below is the log from running the options
> 
> -aHAXN --fileflags --force-change -stats -vvv  
> 
> note that the lines 
> 
> "rsync: mkstemp "/Volumes/xxx/testaaa/aa/..DS_Store.gnG29l" failed: No 
> such file or directory (2)" 
> 
> are correct in that there are no such files but why does it think 
> there are?

Those files are rsync's temporary files, which it transfers first, then 
atomically moves into place.  Note the many other entries like:

/path/to/.ORIGINALNAME.XXXXXX

e.g.: ORIGINALNAME = splittersize.h and XXXXXX = hVRihb in the following:
> set modtime of aa/bb/cc/dd/.splittersize.h.hVRihb to (1236212797) Wed Mar  4 19:26:37 2009
> renaming aa/bb/cc/dd/.splittersize.h.hVRihb to aa/bb/cc/dd/splittersize.h

So, it appears something has changed between 10.5 and 10.6 with how the 
annoying-to-non-OSX users .DS_Store file is handled.  I just ran into 
__MACOSX/.DS_Store files in a ZIP file the other day.  Annoying because 
they force me to have to filter out the garbage files:
unzip file.zip -x '__MACOSX/*'

A possibly interesting (probably not) experiment would be to create ZIP 
files on each machine, then open them on a non-OSX machine to see 
whether 10.6 creates a file without the .DS_Store files.

See: http://en.wikipedia.org/wiki/.DS_Store  for the purpose of the 
files.  (basically, per-folder Finder preferences)


> They don't exist on source or dest. They do however get created on the 
> destination. It seems in my test that there is one created for every 
> directory. However, the original .DS_Store files are not copied over 
> just the new ones with the odd extra dot prefix and the cryptic 
> extension on the end. The new odd .DS_Store files take the place of 
> the normal ones that should be created by the finder.
> 
> I don't know if this sheds any light at all on this. Others have 
> reported that these files get created by the thousands on the 
> destination. Not only .DS_Store files but other hidden files.

My guess is that one ..DS_Store.XXXXXX file is created per-directory 
per-transfer.  Other hidden files are likely created during failed 
transfers.

If something changed between 10.5 and 10.6 regarding default permissions 
on .DS_Store files, that might explain it.  And maybe the files are 
created automatically at an earlier time (so can't be overwritten by the 
rename). But I'm not sure what the best solution would be.  The 
.DS_Store files may or may not be something each user would want to 
keep.

-- 
Best,
Ben


More information about the rsync mailing list