Подтвердить что ты не робот

Не удается удалить каталог из Amazon S3

Я использую веб-интерфейс Amazon S3, и когда я нажимаю правой кнопкой мыши папку X и выбираю Delete, X кажется удаленным. Затем, когда я обновляю интерфейс, X может либо исчезнуть, либо остаться; если я продолжаю нажимать обновление, папка либо отсутствует, либо присутствует. Это ошибка, или я делаю что-то неправильно? Насколько я могу судить, папка все еще присутствует; одно из моих заданий EMR жалуется, что папка вывода X все еще существует.

4b9b3361

Ответ 1

У меня была такая же проблема в веб-интерфейсе AWS после AWS Command Line (CLI) - удаление "рекурсивной" папки в ведре. Некоторые объекты случайно появлялись (не файлы, а фактически "папки" ) в веб-интерфейсе. Несмотря на то, что я пытался удалить эти папки в веб-интерфейсе, они все еще были там (интерфейс сказал, что операция прошла успешно...)

Решение, которое работало для меня в веб-интерфейсе AWS: Щелкните правой кнопкой мыши папку → CUT и PASTE в другую папку. Работала отлично, а затем удалила новую папку. Ушли!

Ответ 2

Пробовал то же, что и Кристоффер answer, но CUT/PASTE в другую папку заставил новую папку не удаляться.

Дальнейший взлом: создайте новое временное ведро. CUT/PASTE папку в это ведро и удалить ведро.

Ответ 3

S3 фактически не использует папки. Вместо этого разделители путей в пути объектов обрабатываются как папки. Если вы хотите удалить папку, все содержимое папки должно быть удалено.

Если есть какая-либо задержка при удалении всего содержимого, папка может продолжать существовать.

Ответ 4

По состоянию на март 2017 пользовательский интерфейс AWS Console изменился, и вы больше не можете вводить "режим версии", описанный в моем старом сообщении.

Кажется, теперь папка с файлами версий может быть удалена свободно без ограничений.

Если это не так, напишите комментарий, чтобы я мог исправить этот пост.


Предыдущая версия консоли AWS

Если вы используете консоль управления AWS, и у вас установлено управление версиями ВКЛ, вы должны быть в режиме "версия", чтобы удалить папку. Вы вводите "режим проверки версий", перейдя в верхнюю часть страницы и рядом с тем, где говорится "Версии:", выберите кнопку Показать. Затем вы можете перейти к щелчку правой кнопкой мыши и удалить свою папку. Надеюсь, это поможет кому-то.

Ответ 5

Пробовал различные альтернативы для удаления из веб-интерфейса, чтобы удалить папку с подпапками в ней без везения. У меня была установка браузера S3, а затем я попытался использовать интерфейс браузера S3.

Ответ 6

Я думаю, что вижу подобное поведение. В моем ковше включено управление версиями; даже с пустой папкой/каталогом в ведре, попытка "удалить" папку/каталог в ведре через консоль веб-интерфейса AWS не приводит к тому, что она фактически удаляется. Я предполагаю, что "удаленные" версии файлов в этом пути все еще существуют (но не отображаются в веб-консоли), поэтому ведро не пусто, и по-настоящему не удаляется. Вам может потребоваться проверить с помощью инструментов CLI, если существующие удаленные версии файлов в этой папке/каталоге существуют (но не отображаются в веб-консоли) и постоянно удаляются файлы, а затем пытаются удалить папку/каталог в вашем ковше.

Ответ 7

У меня была такая же проблема, и у меня не было доступа к консоли amazon, но я мог удалить ее с помощью этого кода Java

    AmazonS3Client amazonS3Client = new AmazonS3Client(basicAWSCredentials);
    ObjectListing objectListing = amazonS3Client.listObjects("bucketName", "prefix");
    DeleteObjectsRequest deleteObjectsRequest = new DeleteObjectsRequest("bucketName");
    List<DeleteObjectsRequest.KeyVersion> keysToDelete = new ArrayList<>();
    objectListing.getObjectSummaries().forEach(s3ObjectSummary -> {
        keysToDelete.add(new DeleteObjectsRequest.KeyVersion(s3ObjectSummary.getKey()));
    });
    deleteObjectsRequest.setKeys(keysToDelete);
    amazonS3Client.deleteObjects(deleteObjectsRequest);

    <dependency>
        <groupId>com.amazonaws</groupId>
        <artifactId>aws-java-sdk</artifactId>
        <version>1.7.4</version>
    </dependency>

Ответ 8

У меня та же проблема, что я не могу удалить корзину s3 с сообщением "Произошла ошибка (AccessDenied) при вызове операции DeleteBucket: доступ запрещен"

Через некоторое время я удаляю политику bucket во вкладке "разрешение", кнопку "bucket policy" и она работает как чудо, с:

aws s3 rb s3://elasticbeanstalk-us-west-.... / --force

Я надеюсь, что это поможет! Есть еще один вариант Pablo

Ответ 9

Попробуйте удалить с другой учетной записью, например учетной записью администратора. Для меня это работает только с этим методом.

Ответ 10

Попробуйте использовать новую консоль S3. Функция удаления работает для папок.

Ответ 11

имел ведро "упруго- bean -stalk" и ему пришлось удалить "политику ведра" до его удаления.

Pitney