Tuesday, June 12, 2012

Cloud backup solution

Google Drive is released. So which is best, Google Drive, Dropbox, SkyDrive, etc? As I previously wrote, my interest is in having a backup solution that exactly backups files from Mac, including its data forks, extra attributes, finder flags etc.
So, it's time to take bbouncer out of the shelf again. Google Drive is said to be not preserving all of the above nooks and crannies of Mac file system, so I tried with Dropbox first, which was mentiond on Google searchland as faithful to Mac file system. I mounted the Dropbox drive (actually it is not a drive, just a directory), and then ran the following command to copy bbouncer's test files:

sudo rsync -aNHAXxvuPE --fileflags --protect-args --force-change  /Volumes/Src/   /Users/asiboro/Downloads/Dst

I then ran bbouncer to do the test:

./bbouncer verify -d /Volumes/Src/ ~asiboro/Downloads/Dst/

The result is as follows:

Verifying:    basic-permissions ... ok (Critical)
Verifying:           timestamps ... ok (Critical)
Verifying:             symlinks ... ok (Critical)
Verifying:    symlink-ownership ... ok
Verifying:            hardlinks ... ok (Important)
Verifying:       resource-forks ...
grep: ./some-file/rsrc: Not a directory
   Sub-test:             on files ... FAIL (Critical)
cmp: ./hl-rfork1/rsrc: Not a directory
   Sub-test:  on hardlinked files ... FAIL (Important)
Verifying:         finder-flags ... ok (Critical)
Verifying:         finder-locks ... ok
Verifying:        creation-date ... ok
Verifying:            bsd-flags ... ok
Verifying:       extended-attrs ...
   Sub-test:             on files ... ok (Important)
   Sub-test:       on directories ... ok (Important)
   Sub-test:          on symlinks ... ok
Verifying: access-control-lists ...
   Sub-test:             on files ... ok (Important)
   Sub-test:              on dirs ... ok (Important)
Verifying:                 fifo ... ok
Verifying:              devices ... ok
Verifying:          combo-tests ...
   Sub-test:  xattrs + rsrc forks ... ok
   Sub-test:     lots of metadata ... ok 
Ouch.. resource fork related test failed.
I tried copying not to Dropbox but regular directory on disk, the result is the same. OK, something fishy here. After some searching, I found out that the resource fork is there, only that it is not on /rsrc but /..namedfork/rsrc. I am running Mac OS X Lion, and it seems that /rsrc is deprecated and it won't work anymore.

So, I edited test.d/30-resource-forks.test from bbouncer distribution and change all /rsrc to /..namedfork/rsrc, ran the test again and now here is the result:

Verifying:    basic-permissions ... ok (Critical)
Verifying:           timestamps ... ok (Critical)
Verifying:             symlinks ... ok (Critical)
Verifying:    symlink-ownership ... ok 
Verifying:            hardlinks ... ok (Important)
Verifying:       resource-forks ... 
   Sub-test:             on files ... ok (Critical)
   Sub-test:  on hardlinked filez ... ok (Important)
Verifying:         finder-flags ... ok (Critical)
Verifying:         finder-locks ... ok 
Verifying:        creation-date ... ok 
Verifying:            bsd-flags ... ok 
Verifying:       extended-attrs ... 
   Sub-test:             on files ... ok (Important)
   Sub-test:       on directories ... ok (Important)
   Sub-test:          on symlinks ... ok 
Verifying: access-control-lists ... 
   Sub-test:             on files ... ok (Important)
   Sub-test:              on dirs ... ok (Important)
Verifying:                 fifo ... ok 
Verifying:              devices ... ok 
Verifying:          combo-tests ... 
   Sub-test:  xattrs + rsrc forks ... ok 
   Sub-test:     lots of metadata ... ok 

Cool.

But not yet. I just realized that I was just running the test against Dropbox directory on this Mac. It's not a volume, so it is probably just like any regular directory except that Dropbox is syncing it with the server...

No comments:

Post a Comment