I'm looking for the best way to sync my home directory to and from a 120GB USB drive. The catch is that I use bind mounts (which I don't want to be followed) and hard links (which I do want to be preserved). Rsync can do this but it is one directional, whereas I have changes on both sides.
Unison looks like it can intelligently handle bidirectional synchronisation but I can't find any option to restrict it to one-filesystem or ignore bind-mounts and the documentation says "Unison does not understand hard links". However, by default unison uses rsync to do it's transfer. Is there a way to use rsync's understanding of hard links and bind mounts?
Alternatively can someone point me to an example of doing bidirectional synchronisation manually using rsync and diff? Or something similar?
Note: I've used FreeFileSync in the past but something went wrong and I nearly lost both my files and backup! It was possibly my fault but I'm now frightened of using FreeFileSync.