Usa unison -force
:
Manuale:
Inclusa la preferenza
-force root
fa in modo che Unison risolva tutte le differenze (anche le modifiche non in conflitto) a favore di root. Questo cambia efficacemente Unison da asynchronizer in un'utilità di mirroring. Puoi anche specificare-force newer
(o-force older
) per forzare Unison a scegliere il file con il modtime successivo (precedente). In questo caso,-times
anche la preferenza deve essere abilitata. Questa preferenza è sovrascritta dalforcepartial
preferenza. Questa preferenza dovrebbe essere usata solo se sei sicuro di sapere cosa stai facendo!
Per esempio. (utilizzando la modalità presa). Avvia il listener all'unisono nella directory che vuoi essere un mirror di qualcos'altro. Scegli come target quel socket nella chiamata client all'unisono. Force fa sì che le modifiche siano tutte in ONE WAY dalla radice data.
cd /target/mirror/directory
unison -socket 123456 &
Altrove o sullo stesso host:
unison -silent -force /home/test/thing2 /home/test/thing2 socket://somehost:123456/
Anche se la risposta di TheToasterThatCould "funzionerà", tieni presente che non eseguirà correttamente il backup del file system Mac "Resource Forks"
Mentre la versione Mac OSX di rsync è a conoscenza dei fork delle risorse, le versioni Linux di rsync non lo sono (e probabilmente non lo saranno mai, perché la versione Apple di rsync è specifica per OSX e non presenta quei fork delle risorse a rsync dall'altra parte in un modo che una versione non OSX di rsync può gestire). Il risultato è che i fork delle risorse non verranno sincronizzati tra macchine Mac e Linux.
Alcune app Mac utilizzano i fork delle risorse per archiviare i dati relativi al file specifico. Se sei certo che i tuoi file che stai sincronizzando non hanno bisogno o non usano i fork delle risorse, allora dovrebbe essere OK usare rsync.
Se vuoi sincronizzare i fork delle risorse, l'unisono sarà l'approccio migliore perché (secondo i documenti unison) può sincronizzare i fork delle risorse.