删除目录存储桶 - Amazon Simple Storage Service

删除目录存储桶

您只能删除空的 Amazon S3 目录桶。在删除目录桶之前,必须删除桶中的所有对象并中止所有正在进行的分段上传。

要清空目录存储桶,请参阅清空目录存储桶。要中止正在进行的分段上传,请参阅中止分段上传

要删除通用存储桶,请参阅删除存储桶

清空目录桶并中止所有正在进行的分段上传后,您可以删除桶。

  1. 登录到AWS Management Console,然后通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. 在左侧导航窗格中,选择存储桶

  3. 选择目录桶选项卡。

  4. 目录桶列表中,选择要删除的桶旁边的选项按钮。

  5. 选择 删除

  6. 删除桶页面上,在文本字段中输入桶的名称以确认删除您的桶。

    重要

    无法撤消删除目录存储桶的操作。

  7. 要删除您的目录存储桶,请选择删除存储桶

以下示例使用 AWS SDK for Java 2.x 和 AWS SDK for Python (Boto3) 删除目录桶。

SDK for Java 2.x
public static void deleteBucket(S3Client s3Client, String bucketName) { try { DeleteBucketRequest del = DeleteBucketRequest.builder() .bucket(bucketName) .build(); s3Client.deleteBucket(del); System.out.println("Bucket " + bucketName + " has been deleted"); } catch (S3Exception e) { System.err.println(e.awsErrorDetails().errorMessage()); System.exit(1); } }
SDK for Python
import logging import boto3 from botocore.exceptions import ClientError def delete_bucket(s3_client, bucket_name): ''' Delete a directory bucket in a specified Region :param s3_client: boto3 S3 client :param bucket_name: Bucket to delete; for example, 'doc-example-bucket--usw2-az1--x-s3' :return: True if bucket is deleted, else False ''' try: s3_client.delete_bucket(Bucket = bucket_name) except ClientError as e: logging.error(e) return False return True if __name__ == '__main__': bucket_name = 'BUCKET_NAME' region = 'us-west-2' s3_client = boto3.client('s3', region_name = region)

此示例说明如何使用 AWS CLI 删除目录存储桶。要使用该命令,请将用户输入占位符 替换为您自己的信息。

aws s3api delete-bucket --bucket bucket-base-name--azid--x-s3 --region us-west-2

有关更多信息,请参阅 AWS Command Line Interface 中的 delete-bucket