Удаление частично загруженного объекта
Объект может быть загружен не полностью при использовании составной загрузки.
Примечание
Для автоматического удаления частично загруженных объектов в Object Storage настройте правило жизненных циклов.
Чтобы удалить частично загруженный объект вручную:
- В консоли управления
в списке сервисов выберите Object Storage и перейдите в бакет, содержащий частично загруженный объект. - На панели слева выберите
Объекты. - Чтобы видеть все версии объектов в списке, справа от поля поиска объекта в бакете, включите опцию Показать версии.
- Наведите указатель на желтое поле рядом с количеством объектов.
- Нажмите появившуюся кнопку Показать список.
- Отметьте незавершенные загрузки, которые нужно удалить.
- Нажмите кнопку Удалить.
- Подтвердите удаление.
В консоли управления информация о количестве объектов в бакете и занятом месте обновляется с задержкой в несколько минут.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>
. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name
или --folder-id
.
-
Получите список незавершенных составных загрузок:
-
Посмотрите описание команды CLI для получения списка незавершенных составных загрузок в бакете:
yc storage s3api list-multipart-uploads --help
-
Получите список бакетов в каталоге по умолчанию:
yc storage bucket list
Результат:
+------------------+----------------------+-------------+-----------------------+---------------------+ | NAME | FOLDER ID | MAX SIZE | DEFAULT STORAGE CLASS | CREATED AT | +------------------+----------------------+-------------+-----------------------+---------------------+ | first-bucket | b1gmit33ngp6******** | 53687091200 | STANDARD | 2022-12-16 13:58:18 | +------------------+----------------------+-------------+-----------------------+---------------------+
-
Выполните команду, указав имя нужного бакета:
yc storage s3api list-multipart-uploads \ --bucket <имя_бакета>
Результат:
bucket: first-bucket max_uploads: "1000" uploads: - key: video.mp4 upload_id: 000629B7******** initiator: id: ajeol2afu1js******** display_name: ajeol2afu1js******** owner: id: ajeol2afu1js******** display_name: ajeol2afu1js******** storage_class: STANDARD initiated_at: "2024-12-20T18:05:07.312Z" - key: video1.mp4 upload_id: 000629B7******** initiator: id: ajeol2afu1js******** display_name: ajeol2afu1js******** owner: id: ajeol2afu1js******** display_name: ajeol2afu1js******** storage_class: STANDARD initiated_at: "2024-12-20T18:20:15.747Z" request_id: 75dbac97********
Сохраните значение идентификатора составной загрузки (
uploads.upload_id
) частично загруженного объекта, который вы хотите удалить. Это значение понадобится на следующем шаге.Подробнее о команде
yc storage s3api list-multipart-uploads
читайте в справочнике CLI.
-
-
Удалите частично загруженный объект:
-
Посмотрите описание команды CLI для удаления частично загруженного объекта:
yc storage s3api abort-multipart-upload --help
-
Выполните команду:
yc storage s3api abort-multipart-upload \ --bucket <имя_бакета> \ --key <ключ_объекта> \ --upload-id <идентификатор_составной_загрузки>
Где:
--bucket
— имя бакета, в котором вы хотите удалить частично загруженный объект.--key
— ключ объекта, который нужно удалить.--upload-id
— значение идентификатора составной загрузки, полученное на предыдущем шаге.
Результат:
request_id: 573ea6e2********
Подробнее о команде
yc storage s3api abort-multipart-upload
читайте в справочнике CLI.
-
Если у вас еще нет AWS CLI, установите и сконфигурируйте его.
-
Получите список незавершенных составных загрузок:
-
Получите список доступных бакетов:
aws s3api list-buckets \ --endpoint-url=https://storage.yandexcloud.net
Результат:
{ "Buckets": [ { "Name": "new-bucket", "CreationDate": "2024-12-20T17:48:17+00:00" }, { "Name": "first-bucket", "CreationDate": "2023-12-28T12:20:49.538000+00:00" } ], "Owner": { "DisplayName": "", "ID": "" } }
-
Выполните команду, указав имя нужного бакета:
aws s3api list-multipart-uploads \ --endpoint-url=https://storage.yandexcloud.net \ --bucket <имя_бакета>
Результат:
{ "Uploads": [ { "UploadId": "000629C2********", "Key": "video.mp4", "Initiated": "2024-12-21T07:40:03.562000+00:00", "StorageClass": "STANDARD", "Owner": { "DisplayName": "ajegtlf2q28a********", "ID": "ajegtlf2q28a********" }, "Initiator": { "ID": "ajegtlf2q28a********", "DisplayName": "ajegtlf2q28a********" } }, { "UploadId": "000629C2********", "Key": "video1.mp4", "Initiated": "2024-12-21T07:42:39.492000+00:00", "StorageClass": "STANDARD", "Owner": { "DisplayName": "ajegtlf2q28a********", "ID": "ajegtlf2q28a********" }, "Initiator": { "ID": "ajegtlf2q28a********", "DisplayName": "ajegtlf2q28a********" } } ], "RequestCharged": null }
Сохраните значение идентификатора составной загрузки (
Uploads.UploadId
) частично загруженного объекта, который вы хотите удалить. Это значение понадобится на следующем шаге.
-
-
Удалите частично загруженный объект:
aws s3api abort-multipart-upload \ --endpoint-url=https://storage.yandexcloud.net \ --bucket <имя_бакета> \ --key <ключ_объекта> \ --upload-id <идентификатор_составной_загрузки>
Где:
--bucket
— имя бакета, в котором вы хотите удалить частично загруженный объект.--key
— ключ объекта, который нужно удалить.--upload-id
— значение идентификатора составной загрузки, полученное на предыдущем шаге.
Чтобы получить список составных загрузок, воспользуйтесь методом S3 API listUploads.
Чтобы удалить частично загруженный объект, воспользуйтесь методом S3 API abortUpload.