2012-10-19 61 views
6

我有一個27GB文件,我正嘗試從AWS Linux EC2遷移到S3。我已經嘗試了'S3put'命令和'S3cmd put'命令。兩者都使用測試文件。既不適用於大文件。沒有錯誤,命令立即返回,但沒有任何反應。從ec2到s3的大文件

s3cmd put bigfile.tsv s3://bucket/bigfile.tsv 
+0

我認爲新的S3CMD工具支持多部分自動上傳,至少它在Ubuntu中提供它的版本。 – Maziyar

+0

看到http://stackoverflow.com/questions/5774808/s3cmd-failed-too-many-times/22107084#22107084, 我建議: http://stackoverflow.com/a/ 22107084/116293 – user116293

+0

有時需要root權限'sudo s3cmd put ...' – tarikakyol

回答

5

雖然你可以上傳對象與尺寸高達5TB到S3,S3擁有5GB的大小限制爲單個PUT操作。

爲了加載大於5GB的文件(甚至是大於100MB的文件),您將要使用S3的分段上傳功能。

http://docs.amazonwebservices.com/AmazonS3/latest/dev/UploadingObjects.html

http://aws.typepad.com/aws/2010/11/amazon-s3-multipart-upload.html

(忽略在上述博客帖子5GB對象限制的過時的描述。該電流限制是5TB。)

在boto庫用於Python支持分段上傳,最新的boto軟件包含一個「s3multiput」命令行工具,可以爲您處理複雜問題,甚至可以並行處理部分上傳。

https://github.com/boto/boto

+0

啊,這看起來就像我即將要面臨的下一個問題。我會重新生成flie,看看我如何使用s3multiput。謝謝。 – waigani

0

該文件不存在,衛生署。我意識到這一點通過添加-v標籤運行在詳細模式下S3命令後:

s3cmd put -v bigfile.tsv s3://bucket/bigfile.tsv 
0

s3cmd 1.1.0版本支持多部分上傳的「放」命令的一部分,但其仍處於測試階段(目前)