[tahoe-dev] Time Machine and Directory Hardlinks

Aleksandr Milewski zandr at allmydata.com
Fri Jan 11 18:12:03 PST 2008


With an eye towards eventual support of a Time Machine backups to a  
Tahoe mesh, I took a look at what Time Machine actually does. Ars  
wrote up a good description of it here:

http://arstechnica.com/reviews/os/mac-os-x-10-5.ars/14

The interesting bit is that it depends on directory hardlinks, which  
are usually in the Bad (as in "Don't Cross the Streams") category.  
Some poking around there lead me to:

http://lists.apple.com/archives/darwin-dev/2007/Dec/msg00029.html

Which says the following:
"The actual implementation of link() on 10.5 allows for directory hard  
links on HFS+ as long as they follow these rules:

- Source parent and destination parent cannot match
- A link is not permitted in the root directory
- Parent of 'pointed at' directory is not the root directory
- The 'pointed at' directory (source) is not an ancestor of the new  
directory hard link (destination).
- No ancestor of the new directory hard link (destination) is a  
directory hard link."

This should be supportable in Tahoe, though whether Apple will allow  
Time Machine backups to a Tahoe/FUSE target without iTimeMachine[1]  
like hijinks remains to be seen.

-Zandr

[1] http://www.xiotios.com/itimemachine.html


More information about the tahoe-dev mailing list