跨平台云存储和同步 CLI?

跨平台云存储和同步 CLI?

我正在参与一个学术项目,该项目试图通过收集智能家居中的传感器数据来优化房主的能源效率。问题是他们必须从异构拼凑机器网络(一些 Windows 笔记本电脑、一些 Linux 服务器、一些 Raspberry Pi 等)上传传感器数据。

该解决方案需要具备以下特性:

  • 与 S3 同步/同步。我们已经在 S3 上获得了一些数据,但我们并不真正关心提供商,只要它看起来像目录并且是廉价且低故障的备用存储即可。

  • 单向、每个文件同步。它应该能够只上传特定文件的更改,而不是整个目录的更改。它还应该能够推送更改。

  • Delta 写道。文件会很大,我们不想每次都重新上传全部内容——我们只想上传更改的内容。

  • 单独存储元数据。我们需要能够读取远程端的文件,就像读取本地端的文件一样;如果文件被包裹在某种信封/容器中,那么使用它们就会变得更加困难。

  • 命令行界面。它需要可编写脚本,因为我们将使用外部脚本来驱动同步过程。

  • 跨平台。它应该可以在 Windows 7+ 和 Ubuntu 上运行。

  • 最小的外部依赖。理想情况下,“安装”包括将文件夹放到某处或下载包。

我考虑过但不得不拒绝的选项:

  • 直接使用s3fs写入:不支持增量写入;任何更改都要重新上传整个文件。哎哟!

  • rsync + s3rsync.com:价格过高,因为我们的 rsync 流会一直上传大量数据。此外,网站已停用(“版权所有 2010”),有很多差评。

  • 表里不一:不支持写入原始文件内容——每个文件都包裹在只有 Duplicity 才能理解的元数据中。

  • 同步:不支持单向、单文件同步。

相关内容