如何以 rsync 形式备份到 s3

如何以 rsync 形式备份到 s3

我想将我的服务器备份到 s3,但我不想每次都上传整个容器。

现在我使用 s3cmd put --recursive,但是上传一切,我也不想浪费空间打电话。

我想要做的是将所有文件上传到 s3,然后使用 s3cmd 像 rsync 一样放置文件,仅上传更新的文件。

  1. 我应该使用什么命令
  2. 我必须授予什么权限?

答案1

Vladimir Mukhin 的所有回答都是正确的。不过,有一个工具可以帮助解决 1/ 问题,它叫做 Duplicity。它以 S3 作为备份目标并进行增量备份。http://duplicity.nongnu.org/duplicity.1.html

如果您发现 Duplicity 太复杂,Duply 是一个更简单的角度。

答案2

嗯,您可以在这里使用几种解决方案:

  1. 存储上传文件的元数据(MD5、时间戳等),并在开始上传之前检查文件是否已被修改。此操作没有特殊命令,您需要执行额外的脚本。
  2. 使用 S3 对象版本控制。在这种情况下,Amazon 将检查文件是否被修改,并将更改的文件作为单独的版本上传。更多信息请访问: http://docs.aws.amazon.com/AmazonS3/latest/UG/lifecycle-configuration-bucket-with-versioning.html
  3. 使用 awscli (https://aws.amazon.com/cli/)。这样您就可以运行aws s3 sync ...,它只会上传更改。

答案3

克隆可能就是您正在寻找的。

相关内容