回答:
ジョブに適したツールはrsyncです(両方のコンピューターにインストールする必要があります)。ラップトップの音楽フォルダーをホームファイルサーバーと同期させるために使用しますが、これは状況にかなり似ています。rsyncは、ミラーコピーを最新の状態に保つことを専門としています。
次のようなコマンドラインが役立つ場合があります(Ubuntuから実行するとします)。
rsync -a --delete-before myMacMachineName:/MyMusic/ /mymusic/
Macから実行し、プルする代わりにUbuntuコンピューターにプッシュする場合は、上記の行を簡単に入れ替えることができます。
使用unison -force
:
マニュアル:
設定
-force root
を含めると、Unisonはrootを優先して すべての違い(競合しない変更を含む)を解決します。これは効果的にUnisonをシンクロナイザーからミラーリングユーティリティに変更します。また、-force newer
(または-force older
)を指定して、後から(以前の)modtimeのファイルをUnisonに選択させることもできます。この場合、-times
設定も有効にする必要があります。この設定は設定によって上書きされforcepartial
ます。この設定は、自分が何をしているのかわかっている場合にのみ使用してください。
例(ソケットモードを使用)。他のもののミラーにしたいディレクトリでunisonリスナーを起動します。unisonクライアントコールでそのソケットをターゲットにします。Forceは、指定されたルートからの変更をすべて一方向にします。
cd /target/mirror/directory
unison -socket 123456 &
他の場所または同じホスト上:
unison -silent -force /home/test/thing2 /home/test/thing2 socket://somehost:123456/
TheToasterThatCouldによる回答は「機能する」が、Macファイルシステムの「リソースフォーク」を正しくバックアップしないことに注意してください。
Mac OSXバージョンのrsyncはリソースフォークに対応していますが、Linuxバージョンのrsyncは対応していません(AppleバージョンのrsyncはOSX固有であり、他の端でrsyncへのリソースフォークを提示しないため非OSXバージョンのrsyncが処理できる方法)。この結果、MacとLinuxマシン間でリソースフォークがrsyncされなくなります。
特定のMacアプリは、リソースフォークを使用して、特定のファイルに関連するデータを保存します。同期しているファイルがリソースフォークを必要としないか使用していないことが確実な場合は、rsyncを使用しても問題ありません。
リソースフォークを同期する場合は、unisonがリソースフォークを同期できるため、unisonがより良いアプローチになります(unison docsによると)。
FreeFileSyncは、ディレクトリをミラーリングできるオープンソースアプリケーションです。一方向または双方向の同期、または「投稿」モードで実行できます。MicrosoftのSynctoyの役割を果たしていると言えるでしょう。FreeFileSyncは、Mac OS X、LinuxおよびWindowsで自由に使用できます。
force = /home/me/mysynchdir