Не удается удалить пустой ведро S3

У меня есть ведро S3, которое на 100% пусто. Версии никогда не были включены в ведро. Однако я все еще не могу удалить ведро. Я пробовал через консоль и инструмент CLI. На консоли он просто говорит "Ошибка" без сообщения об ошибке. Из cli и api он говорит мне: "Произошла ошибка (BucketNotEmpty) при вызове операции DeleteBucket: ведро, которое вы пытались удалить, не пусто". Я пробовал все следующее:

aws s3 rb s3://<bucket_name> --force → BucketNotEmpty

aws s3 rm s3://<bucket_name> --recursive → Нет вывода (потому что он уже пуст)

aws s3api list-object-versions --bucket <bucket_name> → Нет вывода (поскольку управление версиями никогда не включалось)

aws s3api list-multipart-uploads --bucket <bucket_name> → Нет выходов

aws s3api list-objects --delimiter=/ --prefix= --bucket <bucket_name> → Нет вывода (потому что он пуст)

  • У него нет зависимостей (он не используется облачным или другим, что я знаю).
  • Ведро пустое в течение примерно 5 дней.
  • Мне удалось удалить еще одно очень похожее ведро с одним и тем же пользователем IAM. Кроме того, у моего пользователя IAM есть доступ администратора.

Ответ 1

Я столкнулся с этой же проблемой. Я смог решить проблему, зайдя в корзину и удалив "Политику корзины" для корзины. После этого удаление ведра сработало корректно.

Я сделал это через консоль AWS для S3-ведра, созданного Elastic Beanstalk (то естьasticbeanstalk-us-west-2-861587641234). Я предполагаю, что сценарий создания включает в себя политику предотвращения случайного удаления хранилища.

Ответ 2

У меня была аналогичная проблема, и я смог удалить ведро после ожидания в одночасье. Это довольно слабое решение, но может спасти вас и другое время от удара по нему.

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

Ответ 3

Это то, что сработало для меня. У меня не было управления версиями на ведре. Когда вы удаляете объект из ведра s3, он помещает маркер удаления на этот объект и скрывает его из списка. Когда вы нажмете кнопку "показать", вы увидите свои удаленные объекты с маркером удаления. Выберите этот объект (с маркером удаления) и снова удалите его. Это постоянное удаление. Теперь ваш объект действительно ушел, и ваше ведро действительно пусто. После этого я смог удалить свой ковш.

Я предполагаю, что versioning = true означает, что s3 будет создавать версии объекта, если вы загружаете с тем же именем.

Ответ 4

Иногда после попытки удаления ведра он фактически не удаляется, но разрешения теряются.

В моем случае я перешел на вкладку "Разрешения", повторно предоставил разрешения себе и смог удалить его

Ответ 5

У меня была та же проблема, и не было никакой политики, поэтому добавили разрешение на электронную почту, в которую я вошел и сохранил. Получив разрешение, я смог удалить ведро. У меня также был другой сегмент, в котором была политика, поэтому я удалил политику и смог удалить этот сегмент.

Ответ 6

У меня была такая же проблема, после небольшого исследования мне пришлось удалить политику корзины перед удалением корзины. И тогда она работает!

enter image description here

Ответ 7

Я сделал публичное разрешение S3 Bucket и дал доступ всем. Затем я смог удалить Bucket из консоли AWS.

Ответ 8

Я использую Консоль AWS, чтобы выполнить удаление корзины.

была та же самая проблема, и я попробовал все вышеупомянутые решения и не работал для меня тогда, я нашел другой путь. Мой контейнер использовался ElasticBean, и всякий раз, когда я удалял контейнер, ElasticBean автоматически его создавал. Затем я удалил службу ElasticBean и попытался снова удалить корзину, но на этот раз снова не работала, корзина была пустой, но не позволяла удалить. Я пытался изменить разрешения, но ведро все еще было там.

Наконец, я удалил политику корзины, вернулся и удалил корзину, и она исчезла. Задача решена

Ответ 9

Для пользователей, которые сталкиваются с подобной проблемой. Я попробовал решение @Federico до сих пор безуспешно. Рядом с удалением была другая опция "Пусто".

Поэтому я сначала опустошил ведро, а затем попытался удалить, это сработало.

Ответ 10

Чтобы удалить хранилище Elastic Beanstalk (консоль)

1. Open the Amazon S3 Management Console
2. Select the Elastic Beanstalk storage bucket.
3. Choose Properties.
4. Choose Permissions.
5. Choose Edit Bucket Policy - Allow to delete and make it public.
6. Save.
7. Choose Actions and then choose Delete Bucket.
8, Type the name of the bucket and then choose Delete.

Ответ 11

Я попытался взглянуть на многие из упомянутых решений. Единственное, что сработало для меня, это удаление его через Cyberduck (я не работаю и не продвигаю Cyberduck, я искренне использовал его, и он работал). Вот шаги того, что я сделал:

1 - Загрузите и установите Cyberduck.

2 - Нажмите на Открыть соединение

3 - Выберите Amazon S3 из выпадающего списка (по умолчанию будет FTP)

4 - введите свой идентификатор ключа доступа и секретный ключ доступа (если у вас его нет, вам нужно создать его в своем хранилище s3 через IAM на AWS)

5 - Вы увидите список ваших ковшей S3. Выберите файл, папку или корзину, которую хотите удалить, щелкните правой кнопкой мыши и удалите. Даже файлы с 0kb появляются здесь и могут быть удалены.

Надеюсь это поможет