三地之间文件同步?

三地之间文件同步?

我需要一种方法来在 3 个地方之间同步文件,所有文件都可以被修改。

所有地方都在 Linux 上,同步工具必须从 cronjob 运行 - 而不是手动!

我尝试过unison,但是无法让它在 3 个不同的地方工作(我尝试使用 a<=>b 和 b<=>c 同步进行配置,但是不起作用)。

有什么工具可以做这样的事情吗?

答案1

你尝试过 Linux 版 Dropbox 吗?

答案2

Unison 会执行此操作。在存储同步数据的 Unison 文件夹内(osx 路径:~/Library/Application Support/Unison),创建两个 .prf 文件。

例子1.prf

# Unison preferences file

root =  /Users/XXXX/Desktop/a 

root = /Users/XXXX/Desktop/b

perms = 0

#confirmbigdel = false

例子2.prf

# Unison preferences file

root =  /Users/XXXX/Desktop/b 

root = /Users/XXXX/Desktop/c

perms = 0

#confirmbigdel = false

现在运行“unison example1”和“unison example2”,所有文件夹将同步。

如果您从最新的 svn 构建 unison,则可以更进一步,让所有文件夹在文件更改时立即更新。使用最新的 svn,您可以使用标志“-repeat watch”(例如“unison exampleX -repeat watch”)来监视文件夹的更改,前提是 fsmonitor.py 文件位于您执行 Unison 的同一 bin 目录中。

如果所有机器上都安装了相同的版本,这也可以通过 ssh 工作...基本上就是一个私人的 Dropbox。设置一个服务器可能会有好处,它始终连接到互联网以随时接受更改,所有计算机都会连接到该服务器以查找更改。

答案3

NFS或者Samba,不需要 cron 作业。

答案4

使用像 projectlocker 或 cvsdude 这样的免费服务,Subversion 怎么样?它的扩展性非常好。

相关内容