![推荐一个命令行工具来备份到 Amazon S3](https://linux22.com/image/577881/%E6%8E%A8%E8%8D%90%E4%B8%80%E4%B8%AA%E5%91%BD%E4%BB%A4%E8%A1%8C%E5%B7%A5%E5%85%B7%E6%9D%A5%E5%A4%87%E4%BB%BD%E5%88%B0%20Amazon%20S3%20.png)
我已经阅读了这里的其他几个帖子,但我正在寻找一个可靠的解决方案,将 Windows 2008 服务器备份到 Amazon S3,我想每天将我的文件更改同步到亚马逊。
我尝试了一个名为“S3.exe”的工具(http://http://s3.codeplex.com) 但似乎不起作用。我尝试使用 put 命令,但一直收到 404 错误。我还注意到上次更新是在 2010 年 6 月。亚马逊可能更新了他们的 API。
有人还有其他建议吗?我尝试了一些其他工具,但它们似乎根本不起作用,并且无法很好地报告实际问题。
- 网络鸭
- 龙盘
这两个软件安装都没有问题,但都没有将文件上传到 S3,也没有报告问题可能是什么。我可以列出我的存储桶和文件夹。我甚至尝试使用管理员权限运行它们。
我更喜欢命令行应用程序,但 GUI 也可以。
根据评论,我已将命令行包含在我的批处理文件脚本中:
s3 auth KEY SECRET
s3 put BUCKETNAME/backups/Ares.server1.com/ d:\webroot\ /sub /verbose
出于安全目的,我已删除 KEY、SECRET 和 BUCKETNAME。
我收到错误:
s3.exe 版本 1.7 - 检查更新http://s3.codeplex.com
使用 MIME 类型 text/plain backups/Ares.server1.com/!Backups/Websites/Ad/Ad/WWWRO OT/1GSHR6-bSt323SLa6cgsVCTlWPA.txt WebException(远程服务器返回错误:(404)未找到。)状态代码为 404 远程服务器返回错误:(404)未找到。在 System.Net.HttpWebRequest.GetResponse() 在 com.amazon.s3.Response..ctor(WebRequest request) 在 com.amazon.s3.AWSAuthConnection.put(String bucket, String key, Stream str, SortedList headers, Int64 startByte, Int64 bytes) 在 com.amazon.s3.AWSAuthConnection.put(String bucket, String key, Stream str, SortedList headers) 在 s3.Commands.Put.Execute() 在 s3.Program.Main(String[] originalArgs)
我还能够使用 Cyberduck(没有同步功能)放置文件,而且可以正常工作。因此,我认为这不是权限问题。谢谢!
答案1
S3 AUTH KEY SECRET 无法通过批处理脚本运行。使用带有 /key: 和 /secret: 选项的 S3 PUT。对于备份来说,效果非常好,尤其是使用 /sync 选项时。