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...