如何重命名AWS S3存储桶

问题描述 投票:0回答:4

经过所有艰苦的迁移工作后,我刚刚意识到我需要使用 CNAME 来提供内容(例如 media.abc.com)。存储桶名称需要以 media.abc.com/S3/amazon.com 开头,以确保其正常工作。

我刚刚意识到 S3 不允许从控制台直接重命名。

有什么办法可以解决这个问题吗?

amazon-web-services amazon-s3 cname
4个回答
357
投票

解决方案

aws s3 mb s3://[new-bucket]
aws s3 sync s3://[old-bucket] s3://[new-bucket]
aws s3 rb --force s3://[old-bucket]

说明

S3 没有重命名存储桶功能,因为从技术上讲,S3 中没有文件夹,因此我们必须处理存储桶中的每个文件。

上面的代码将 1. 创建一个新存储桶,2. 复制文件,3. 删除旧存储桶。就是这样。

如果您的存储桶中有大量文件并且您担心成本,请继续阅读。在幕后发生的事情是,存储桶中的所有文件首先被复制,然后被删除。如果您有几千个文件,那么花费应该是微不足道的。否则请检查此答案,看看这对您有何影响。

示例

在以下示例中,我们创建并填充旧存储桶,然后将文件同步到新存储桶。检查命令的输出以了解 AWS 执行的操作。

> # bucket suffix so we keep it unique
> suffix="ieXiy2"  # used `pwgen -1 -6` to get this
>
> # populate old bucket
> echo "asdf" > asdf.txt
> echo "yxcv" > yxcv.txt
> aws s3 mb s3://old-bucket-$suffix
make_bucket: old-bucket-ieXiy2
> aws s3 cp asdf.txt s3://old-bucket-$suffix/asdf.txt
upload: ./asdf.txt to s3://old-bucket-ieXiy2/asdf.txt
> aws s3 cp yxcv.txt s3://old-bucket-$suffix/yxcv.txt
upload: ./yxcv.txt to s3://old-bucket-ieXiy2/yxcv.txt
>
> # "rename" to new bucket
> aws s3 mb s3://new-bucket-$suffix
make_bucket: new-bucket-ieXiy2
> aws s3 sync s3://old-bucket-$suffix s3://new-bucket-$suffix
copy: s3://old-bucket-ieXiy2/yxcv.txt to s3://new-bucket-ieXiy2/yxcv.txt
copy: s3://old-bucket-ieXiy2/asdf.txt to s3://new-bucket-ieXiy2/asdf.txt
> aws s3 rb --force s3://old-bucket-$suffix
delete: s3://old-bucket-ieXiy2/asdf.txt
delete: s3://old-bucket-ieXiy2/yxcv.txt
remove_bucket: old-bucket-ieXiy2

135
投票

我认为唯一的方法是创建一个具有正确名称的新存储桶,然后将所有对象从旧存储桶复制到新存储桶。您可以使用 Aws CLI 来完成此操作。


59
投票

可能更高版本的 AWS CLI 工具包提供了

mv
选项。

$ aws --version
aws-cli/1.15.30 Python/3.6.5 Darwin/17.6.0 botocore/1.10.30

我使用以下命令重命名存储桶:

aws s3 mb s3://new-bucket
aws s3 mv s3://old-bucket s3://new-bucket --recursive
aws s3 rb s3://old-bucket

0
投票

还有另一种方式可以更新存储桶的名称,即自动方式。 使用Kubia ChatGPT 进行 DevOps。 通过使用 Kubia,您只需通过简单的短信要求 Kubia 更新您的存储桶名称。 假设您的旧存储桶名称是 Goldy,用于存储鱼的图像,现在您的 Goldy 鱼不再存在,因此您的存储桶名称是 MissUGoldy,现在只需这样询问 Kubia:“将我的 S3 存储桶名称从 Goldy 更改为 MissUGoldy”,Kubia 就会为你做这项工作😉.

这是您可以关注的参考视频 YouTube

© www.soinside.com 2019 - 2024. All rights reserved.