Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby S3:我的多部分上传程序不适用于大于5GB的文件_Ruby_Linux_Amazon S3 - Fatal编程技术网

Ruby S3:我的多部分上传程序不适用于大于5GB的文件

Ruby S3:我的多部分上传程序不适用于大于5GB的文件,ruby,linux,amazon-s3,Ruby,Linux,Amazon S3,我正在尝试使用多部分上载功能将许多30GB以上的大型文件上载到S3存储桶 这是代码。我把它放在一个要点中,以避免弄乱这一页: 上传小于5GB的文件时不会出现问题。根据S3管理控制台中对象的大小,大于5GB的文件似乎被剪裁为5GB 在上传过程中,我没有收到任何异常或错误消息。我在文档中也没有发现任何迹象表明我做错了什么 有人能看出我做错了什么吗 编辑:我从AWS支持中了解到,Ruby SDK中还不支持多部分上载。S3有一个策略文档,授权表单并对可以上载的文件施加限制。其中一个限制是内容长度。逐字记

我正在尝试使用多部分上载功能将许多30GB以上的大型文件上载到S3存储桶

这是代码。我把它放在一个要点中,以避免弄乱这一页:

上传小于5GB的文件时不会出现问题。根据S3管理控制台中对象的大小,大于5GB的文件似乎被剪裁为5GB

在上传过程中,我没有收到任何异常或错误消息。我在文档中也没有发现任何迹象表明我做错了什么

有人能看出我做错了什么吗


编辑:我从AWS支持中了解到,Ruby SDK中还不支持多部分上载。S3有一个策略文档,授权表单并对可以上载的文件施加限制。其中一个限制是内容长度。逐字记录:

内容长度规则,用于检查上载文件的大小 介于给定的最小值和最大值之间。如果此规则不适用 包含在策略文档中,用户将能够上载 S3规定的最大5GB限制的任何大小


S3有一个授权表单的策略文档,并对可以上传的文件施加限制。其中一个限制是内容长度。逐字记录:

内容长度规则,用于检查上载文件的大小 介于给定的最小值和最大值之间。如果此规则不适用 包含在策略文档中,用户将能够上载 S3规定的最大5GB限制的任何大小


根据AWS,Ruby SDK不支持多部分上传

然而,我发现了一个基于python boto的多部分上传脚本


编辑:Ruby SDK现在支持多部分上传

根据AWS,Ruby SDK不支持多部分上传

然而,我发现了一个基于python boto的多部分上传脚本



编辑:Ruby SDK现在支持多部分上传

谢谢你的提示。但是,文档中不清楚如何以编程方式应用这样的策略。我已尝试将内容长度规则添加到bucket策略,但不支持/不允许这样做。您可以将该策略分配给正在使用的S3 bucket。为什么您需要务实地分配它?此外,请尝试使用生成策略以测试其是否按预期工作。我也尝试使用策略生成器,但无法指定内容长度条件。我试图通过在JSON策略文档中指定它并通过管理控制台应用它来实现这一点,但我得到了一个错误,该错误表示这是不允许的。这个问题的答案证实了:您是否尝试将它添加到表单中,如前所述?感谢提示。但是,文档中不清楚如何以编程方式应用这样的策略。我已尝试将内容长度规则添加到bucket策略,但不支持/不允许这样做。您可以将该策略分配给正在使用的S3 bucket。为什么您需要务实地分配它?此外,请尝试使用生成策略以测试其是否按预期工作。我也尝试使用策略生成器,但无法指定内容长度条件。我试图通过在JSON策略文档中指定它并通过管理控制台应用它来实现这一点,但我得到一个错误,该错误表示这是不允许的。这个问题的答案证实了:您是否尝试将它添加到表单中,如前所述?对于那些好奇的人,我从AWS支持部门了解到Ruby SDK的问题。对于那些好奇的人,我从AWS支持部门了解到Ruby SDK的问题。我可以确认Ruby SDK AWS SDK gem确实支持多部分上传。8根据文档,但它在5GB以上不能工作。我只是在本地运行了一个测试,并上传了一个6GB的文件,没有问题。我怀疑你的水桶遇到了政策问题。@trevorrow这个问题肯定不是政策问题。这是由于AWS SDK for Ruby中的一个bug造成的。我可以确认Ruby SDK AWS SDK gem确实支持多部分上传。8根据文档,它支持多部分上传,但在5GB之后无法工作。我只是在本地运行了一个测试,上传了一个6GB的文件,没有问题。我怀疑你的水桶遇到了政策问题。@trevorrow这个问题肯定不是政策问题。这是由于AWS Ruby SDK中的一个bug造成的。