버킷 비우기 - Amazon Simple Storage Service

버킷 비우기

Amazon S3 콘솔, AWS SDK 또는 AWS Command Line Interface(AWS CLI)를 사용하여 버킷의 콘텐츠를 비울 수 있습니다. 버킷을 비우면 모든 객체가 삭제되지만 버킷은 유지됩니다. 버킷을 비운 후에는 실행 취소할 수 없습니다. S3 버킷 버전 관리를 활성화한 상태로 또는 일시 중지된 상태로 버킷을 비우면 버킷에 있는 모든 객체의 모든 버전이 삭제됩니다. 자세한 내용은 버전 관리가 사용 설정된 버킷의 객체 작업 섹션을 참조하세요.

버킷에 객체 만료를 위한 수명 주기 구성을 지정하여 Amazon S3에서 객체를 삭제할 수 있습니다. 자세한 정보는 버킷에서 수명 주기 구성 설정 섹션을 참조하세요.

Troubleshooting

버킷 비우기 작업이 진행되는 동안 버킷에 추가된 객체도 삭제될 수 있습니다. 빈 버킷 작업이 진행되는 동안 새 객체가 버킷에 추가되지 않도록 하려면 AWS CloudTrail 추적이 버킷에 이벤트를 로깅하지 않도록 해야 할 수 있습니다. 자세한 내용은 AWS CloudTrail 사용 설명서추적에 대한 로깅 끄기를 참조하세요.

CloudTrail 트레일이 버킷에 추가되는 것을 중지하는 또 다른 방법은 버킷 정책에 거부 s3:PutObject 문을 추가하는 것입니다. 버킷에 새 객체를 저장하려면 버킷 정책에서 거부 s3:PutObject 문을 제거해야 합니다. 자세한 내용은 IAM 사용 설명서객체 작업 예제IAM JSON 정책 요소: 효과를 참조하세요.

Amazon S3 콘솔을 사용하여 버킷을 비울 수 있습니다. 버킷을 비우면 버킷은 삭제되지 않고 버킷의 모든 객체가 삭제됩니다.

S3 버킷을 비우려면

  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/에서 Amazon S3 콘솔을 엽니다.

  2. [버킷 이름(Bucket name)] 목록에서 비우려는 버킷의 이름 옆에 있는 옵션을 선택한 다음 [비우기(Empty)]를 선택합니다.

  3. 버킷 비우기 페이지에서 텍스트 필드에 버킷 이름을 입력하여 버킷을 비울 것인지 확인한 다음 Empty(비우기)를 선택합니다.

  4. [버킷 비우기: 상태(Empty bucket: Status)] 페이지에서 버킷 비우기 프로세스의 진행 상황을 모니터링합니다.

버킷 버전 관리가 사용되지 않은 경우에만 AWS CLI를 사용하여 버킷을 비울 수 있습니다. 버전 관리가 사용되지 않은 경우 rm(제거) AWS CLI 명령을 --recursive 파라미터와 함께 사용하여 버킷을 비우거나 특정 키 이름 접두사를 가진 객체의 하위 집합을 제거할 수 있습니다.

다음 rm 명령은 키 이름 접두사 doc가 있는 객체(예: doc/doc1doc/doc2)를 제거합니다.

$ aws s3 rm s3://bucket-name/doc --recursive

다음 명령을 사용하여 접두사를 지정하지 않고 모든 객체를 제거합니다.

$ aws s3 rm s3://bucket-name --recursive

자세한 내용은 AWS Command Line Interface 사용 설명서AWS CLI와 함께 상위 수준 S3 명령 사용을 참조하세요.

참고

버전 관리가 활성화된 버킷에서는 객체를 제거할 수 없습니다. 이 명령을 사용하면 객체를 삭제할 때 Amazon S3가 삭제 마커를 추가합니다. S3 버킷 버전 관리에 대한 자세한 내용은 S3 버킷에서 버전 관리 사용 섹션을 참조하세요.

AWS SDK를 사용하여 버킷을 비우거나 특정 키 이름 접두사를 가진 객체의 하위 집합을 제거할 수 있습니다.

AWS SDK for Java 제품을 사용하여 버킷을 비우는 방법의 예는 버킷 삭제 단원을 참조하십시오. 버킷의 버전 관리가 활성화되었는지 여부와 관계 없이 코드가 모든 객체를 삭제한 후 버킷을 삭제합니다. 버킷을 비우기만 하려면 버킷을 삭제하는 문을 제거해야 합니다.

그 밖의 AWS SDK 사용에 대한 자세한 내용은 Amazon Web Services용 도구를 참조하세요.

수명 주기 정책을 사용하여 버킷을 비우는 경우, 수명 주기 정책에는 최신 버전, 최신이 아닌 버전, 삭제 마커, 불완전 멀티파트 업로드가 포함되어야 합니다.

수명 주기 구성 규칙을 추가하여 특정 키 이름 접두사를 가진 모든 객체 또는 객체의 하위 집합에 대해 만료를 지정할 수 있습니다. 예를 들어, 버킷의 모든 객체를 제거하기 위해서는 생성 후 하루가 지나면 객체가 만료되도록 수명 주기 규칙을 설정할 수 있습니다.

이제 Amazon S3는 시작된 후 지정 일수 내에 완료되지 않은 멀티파트 업로드를 중단하는 데 사용할 수 있는 버킷 수명 주기 규칙을 지원합니다. 스토리지 비용을 최소화하려면 이 수명 주기 규칙을 구성하는 것이 좋습니다. 자세한 내용은 불완전한 멀티파트 업로드를 중단하도록 버킷 수명 주기 정책 구성 섹션을 참조하세요.

수명 주기 구성을 사용하여 버킷을 비우는 방법에 대한 자세한 내용은 버킷에서 수명 주기 구성 설정객체 만료 단원을 참조하세요.