![如何将本地文件夹与远程同步?](https://linux22.com/image/827650/%E5%A6%82%E4%BD%95%E5%B0%86%E6%9C%AC%E5%9C%B0%E6%96%87%E4%BB%B6%E5%A4%B9%E4%B8%8E%E8%BF%9C%E7%A8%8B%E5%90%8C%E6%AD%A5%EF%BC%9F.png)
我想定期将一批文件上传到我的服务器并只在服务器上保留原始文件,即:
- 如果我删除本地文件夹,文件不会从服务器上删除。
- 如果本地文件被替换,则它们将被添加到远程。
- 如果在此过程中连接丢失,它应该恢复传输。
- 如果能在 Windows 上运行,则可获得加分
我认为 rsync 和 cron 作业应该可以解决问题,但我碰巧不知道如何使用它们(好吧,好吧...我对如何使用 cron 有一个想法)。
答案1
我推荐 Unison,它可以在 unix 和 windows 之间同步。它基于与 rsync 相同的技术构建,但设置起来要容易得多:
https://apps.ubuntu.com/cat/applications/quantal/unison2.27.57-gtk/
http://www.cis.upenn.edu/~bcpierce/unison/
它支持排除/包含列表、远程或本地同步、不删除模式以及许多其他常见选项。它可以很容易地从由于连接不良或其他原因导致的部分同步中恢复。
您可以使用 cron 以交互方式或作为批处理运行它。