pro*_*eek 28 rsync synchronization
我碰巧知道 rsyn,我使用 rsync 在我的 mac 和 linux 服务器之间进行同步,如下所示。
rsync -r -t -v MAC LINUX
rsync -r -t -v LINUX MAC
Run Code Online (Sandbox Code Playgroud)
我希望运行第一个命令进行同步,但是当在 LINUX 中进行更改时,我也需要第二个命令。
我错过了什么吗?rsync 是否可以选择在两个目录之间进行同步?
jmt*_*mtd 25
你想要双向同步。看看统一,它这样做:http : //www.cis.upenn.edu/~bcpierce/unison/
例如,在 Debian/Ubuntu 上:
$ sudo apt-get install unison
$ unison MAC/ LINUX/
Run Code Online (Sandbox Code Playgroud)
如果您在权限方面遇到问题(例如 ext4 -> FAT):
$ unison -perms 0 vlc-2.2.0/ /media/sf_vlc/vlc
Contacting server...
Looking for changes
Reconciling changes
vlc-2.2.0 vlc
new dir ----> / [f]
Proceed with propagating updates? [] y
Propagating updates
Run Code Online (Sandbox Code Playgroud)
小智 13
有人声称其开发人员不建议将 rsync 用于双向同步,但缺乏此声明的来源。
已经推荐的统一实用程序将是您更好的解决方案。
还请记住,在使用 rsync 时,您可能必须处理许多特定于 Mac 的 HFS+ 内容。因此,请务必在 Mac 上使用正确打补丁的 rsync3 或预计会出现修改日期问题(使用 Mac OS X 提供的 rsync 2.6.9 时。)如果您不知道如何为 Mac 构建正确打补丁的 rsync 3,获取 mlbackup,其中仅包含该内容。(完全披露:我是 mlbackup 的作者。)从 github 获取它并确保从下载中下载完整的包。(在这种情况下,mlbackup 存储库不包括您想要的 rsync 3。) http://github.com/MacLemon/mlbackup