我想要使用 Amazon Simple Storage Service(Amazon S3)控制台上传一个 1 GB 或更大的文件。然而,上传不断失败,并且出现超时错误。
解决方案
**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI。
对于大文件,Amazon S3 可能会将文件分成多个小块后再上传,以最大限度提高上传速度。在这些小块文件上传的过程中,Amazon S3 控制台可能会因为会话超时而超时。如果您使用 Amazon S3 控制台,则上传的最大文件大小为 160 GB。要上传大于 160 GB 的文件,请使用 AWS CLI 或 AWS SDK。
AWS CLI
使用有权访问 Amazon S3 的 AWS Identity and Access Management (IAM) 用户或角色配置 AWS CLI。
要上传大文件,请运行以下 cp 命令:
aws s3 cp cat.png s3://docexamplebucket
**注意:**将 cat.png 替换为您的文件名,将 docexamplebucket 替换为您的 S3 存储桶。文件必须位于您从中运行命令的同一目录中。
当您运行高级别命令(例如 aws s3 cp)时,Amazon S3 会自动对大型对象执行分段上传。在分段上传中,一个大文件会被拆分成多个小块,分别上传到 Amazon S3。所有小块全部上传后,Amazon S3 会将这些小块合并为一个文件。分段上传可以加快上传速度,并降低大文件失败的几率。
有关分段上传的详细信息,请参阅如何使用 AWS CLI 将大文件分段上传到 Amazon S3?
AWS SDK
要以编程方式上传大文件,请使用 AWS SDK,例如适用于 Java 的 AWS SDK。有关操作示例,请参阅 AWS SDK 对于分段上传的支持。
**注意:**有关用于开发和管理的 AWS SDK 和编程工具包的完整列表,请参阅 Toolbox。
相关信息
在 AWS CLI 中使用 Amazon S3