버전 관리를 사용하는 버킷의 객체 목록
이 섹션에서는 버전 관리를 사용하는 버킷의 객체 버전을 나열하는 예제를 제공합니다. Amazon S3에서는 객체 버전 정보를 버킷에 연결된 versions 하위 리소스에 저장합니다. 자세한 내용은 버킷 구성 옵션 단원을 참조하십시오. 버전 관리가 활성화된 버킷의 객체를 나열하려면 ListBucketVersions
권한이 필요합니다.
다음 단계에 따라 Amazon S3 콘솔을 사용하여 객체의 여러 버전을 확인합니다.
객체의 여러 버전 보기
AWS Management Console에 로그인한 후 https://console.aws.amazon.com/s3/
에서 Amazon S3 콘솔을 엽니다. -
버킷(Buckets) 목록에서 객체가 포함된 버킷의 이름을 선택합니다.
-
버킷에 있는 객체 버전 목록을 확인하려면 버전 표시 스위치를 선택합니다.
각 객체 버전에 대해 콘솔에 고유한 버전 ID, 객체 버전이 생성된 날짜/시간 및 기타 속성이 표시됩니다. (버전 관리 상태로 설정하기 전에 버킷에 저장된 객체의 버전 ID는 null이 됩니다.)
해당 버전이 없는 객체를 나열하려면 버전 나열(List versions) 스위치를 선택합니다.
또한, 콘솔의 객체 개요 패널에서도 객체 버전을 보고, 다운로드하며, 삭제할 수 있습니다. 자세한 내용은 Amazon S3 콘솔에서 객체 속성 보기 단원을 참조하십시오.
참고
300개 버전 이전의 객체 버전에 액세스하려면 AWS CLI 또는 객체의 URL을 사용해야 합니다.
중요
객체는 최신 버전으로 삭제한 경우에만 삭제를 취소할 수 있습니다. 삭제했던 객체의 이전 버전은 삭제를 취소할 수 없습니다. 자세한 내용은 S3 버전 관리로 여러 버전의 객체 유지 섹션을 참조하세요.
이 섹션의 예제에서는 버전 관리를 사용하는 버킷에서 객체 목록을 가져오는 방법을 보여줍니다. 더 낮은 개수를 지정했더라도 각 요청에서는 최대 1,000개의 버전을 반환합니다. 버킷에 이 제한보다 더 많은 버전이 포함되어 있는 경우 일련의 요청을 보내 모든 버전 목록을 가져옵니다. "페이지"에 표시되는 이러한 결과 반환 프로세스를 페이지 매김이라고 합니다.
페이지 매김 작동 방식을 설명하기 위해 예제에서는 각 응답을 두 가지 객체 버전으로 제한합니다. 결과의 첫 페이지를 가져온 후 각 예제에서는 버전 목록이 잘렸는지 여부를 확인합니다. 잘린 경우 계속해서 모든 버전을 가져올 때까지 페이지를 가져옵니다.
참고
다음 예제 역시 버전 관리를 사용하지 않는 버킷이나 개별 버전이 없는 객체를 사용합니다. 이러한 경우 Amazon S3는 null
의 버전 ID를 사용하여 객체 목록을 반환합니다.
다른 AWS SDK 사용에 대한 자세한 내용은 AWS 개발자 센터
예 - 버킷의 모든 객체 버전 나열
버킷에 있는 전체 객체의 버전을 모두 나열하려면 versions
요청에 GET Bucket
하위 리소스를 사용합니다. Amazon S3에서는 최대 1,000개의 객체를 검색할 수 있으며, 각 객체 버전은 각각 하나의 객체로 온전히 취급됩니다. 따라서 버킷에 두 개의 키(예: photo.gif
및 picture.jpg
)가 포함되어 있고 첫 번째 키에 990개의 버전이, 두 번째 키에 400개의 버전이 있는 경우, 단일 요청으로는 photo.gif
의 990개 버전 모드를 가져오고 picture.jpg
의 최신 버전 10개만 가져오게 됩니다.
Amazon S3에서는 객체 버전을 객체가 저장된 순서대로 가장 최근에 저장된 것을 먼저 반환합니다.
GET Bucket
요청에 versions
하위 리소스를 포함합니다.
GET /?versions HTTP/1.1 Host:
bucketName
.s3.amazonaws.com Date: Wed, 28 Oct 2009 22:32:00 +0000 Authorization: AWSAKIAIOSFODNN7EXAMPLE:0RQf4/cRonhpaBX5sCYVf1bNRuU=
예 - 키의 전체 버전 검색
객체 버전의 하위 집합을 가져오려면 GET
Bucket
에 요청 파라미터를 사용합니다. 자세한 내용은 GET Bucket 단원을 참조하십시오.
-
prefix
파라미터를 검색하려는 객체의 키로 설정합니다. -
GET Bucket
하위 리소스 및versions
를 사용하여prefix
요청을 보냅니다.GET /?versions&prefix=objectName HTTP/1.1
예 - 접두사를 사용하여 객체 검색
다음 예제에서는 키가 myObject
이거나 이렇게 시작하는 객체를 가져옵니다.
GET /?versions&prefix=myObject HTTP/1.1 Host: bucket.s3.amazonaws.com Date: Wed, 28 Oct 2009 22:32:00 GMT Authorization: AWS AKIAIOSFODNN7EXAMPLE:0RQf4/cRonhpaBX5sCYVf1bNRuU=
기타 요청 파라미터를 사용하여 전체 객체 버전의 하위 집합을 가져올 수 있습니다. 자세한 내용은 Amazon Simple Storage Service API 참조에서 GET Bucket를 참조하십시오.
예 - 응답이 잘린 경우 추가 객체의 목록 검색
GET
요청에서 반환될 수 있는 객체 수가 max-keys
값을 초과한 경우, 응답에는 <isTruncated>true</isTruncated>
가 포함되며 요청을 충족하지만 반환되지 않은 첫 번째 키와 첫 번째 버전 ID를 각각 NextKeyMarker
와 NextVersionIdMarker
에 포함시킵니다. 그러한 반환된 값을 후속 요청의 시작 지점으로 사용하여 GET
요청을 충족하는 추가 객체를 가져옵니다.
다음 프로세스를 사용하여 버킷에서 GET Bucket versions
요청을 충족하는 추가 객체를 가져옵니다. key-marker
, version-id-marker
, NextKeyMarker
및 NextVersionIdMarker
에 대한 자세한 내용은 Amazon Simple Storage Service API 참조의 GET
Bucket을 참조하세요.
다음은 원래 GET
요청을 충족하는 추가 응답입니다.
-
key-marker
의 값을 이전 응답의NextKeyMarker
에서 반환된 키로 설정합니다. -
version-id-marker
의 값을 이전 응답의NextVersionIdMarker
에서 반환된 버전 ID로 설정합니다. -
GET Bucket versions
및key-marker
를 사용하여version-id-marker
요청을 보냅니다.
예 - 지정된 키 및 버전 ID로 시작하는 객체 검색
GET /?versions&key-marker=myObject&version-id-marker=298459348571 HTTP/1.1 Host: bucket.s3.amazonaws.com Date: Wed, 28 Oct 2009 22:32:00 GMT Authorization: AWS AKIAIOSFODNN7EXAMPLE:0RQf4/cRonhpaBX5sCYVf1bNRuU=
다음 명령은 버킷에 있는 객체의 모든 버전에 대한 메타데이터를 반환합니다.
aws s3api list-object-versions --bucket
amzn-s3-demo-bucket1
list-object-versions
에 대한 자세한 정보는 AWS CLI 명령 참조의 list-object-versions 섹션을 참조하세요.