Amazon S3 Khôi phục tệp đã xóa


Câu trả lời:


20

Theo Tài liệu Amazon S3:

Sau khi xóa, không có phương pháp để khôi phục hoặc phục hồi đối tượng.


Thật không may S3 không hỗ trợ ảnh chụp nhanh.
churnd

1
Để mang lại hy vọng cho một số người, ngày nay bạn có thể hủy xóa các tệp nếu nhóm của bạn đã bật phiên bản.
jweyrich

chết tiệt ....?
scytale

43

Nếu bạn có phiên bản cho phép, có bạn có thể! Trên một thùng được phiên bản, một hành động xóa trên một tệp không thực sự xóa nó nhưng nó thêm một phiên bản với "Xóa Marker". Bạn có thể xóa điểm đánh dấu bằng AWS CLI:

aws s3api delete-object --bucket yourbucket-name --key "yourfile" --version-id id_of_the_delete_marker

Bạn có thể lấy tất cả các tệp trong thùng với

aws --output text s3api list-object-versions --bucket yourbucket-name > files.txt

Nếu bạn muốn phục hồi tất cả các tệp trong nhóm, bạn có thể thử:

echo '#!/bin/bash' > undeleteScript.sh && aws --output text s3api list-object-versions --bucket yourbucket-name | grep -E "^DELETEMARKERS" | awk '{FS = "[\t]+"; print "aws s3api delete-object --bucket yourbucket-name --key \42"$3"\42 --version-id "$5";"}' >> undeleteScript.sh && . undeleteScript.sh; rm -f undeleteScript.sh;

Tôi đánh giá cao câu trả lời này! Làm việc hoàn hảo.
tacotuesday

anh bạn kịch bản hoàn tác tất cả các tập tin của bạn vừa cứu mạng tôi. cảm ơn bạn.
dị giáo

Đối với đoạn script trên, bạn cần thêm một đoạn --output=textnếu bạn muốn nó hoạt động. Anh ta cho rằng bạn đang xuất lệnh AWS của mình thông qua tệp .txt chứ không phải tệp .JSON.
Brad Allison

Tôi đã thử tập lệnh nhưng nó không khôi phục đối tượng, nó sẽ xóa nó vĩnh viễn! Có thể vì tôi không phải là chủ sở hữu của cái xô?
nicola

1
Tại sao đây không phải là câu trả lời được chấp nhận? @vonhogen vui lòng xem xét lại lựa chọn của bạn :)
Janaka Bandara

3

Chỉ cần cập nhật câu hỏi này là tôi đang tìm câu trả lời:

Bạn có thể thêm VERSIONING vào xô S3 ngay bây giờ. Điều này sẽ khiến S3 giữ các phiên bản của một đối tượng ngay cả sau khi xóa. Tài liệu đầy đủ: http://docs.amazonwebservice.com/AmazonS3/latest/dev/Versioning.html


Có thể truy xuất tệp đã xóa trên Bảng điều khiển AWS không? Không thể tìm ra cách để làm điều đó.
Rafael Oliveira

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.