Help Center/ Object Storage Service/ FAQs/ Buckets and Objects/ Why Can't I Delete an Object?
Updated on 2024-10-15 GMT+08:00

Why Can't I Delete an Object?

Problem Description

An existing object cannot be deleted.

Problem Analysis

Possible causes are described here in order of how likely they are to occur. To locate the root cause as fast as possible, go through the list in order, from most likely to least.

If the fault persists after a possible cause is rectified, move down the list to the next most likely cause.

Table 1 Problem analysis

Possible Cause

Solution

Local network is faulty.

Check whether the network connectivity between the local computer and OBS is normal. If the network is faulty, restore the network connection.

The current account does not have the permissions required to delete the object.

See Checking Whether the Current Account Has the Permission to Delete the Object.

The bucket where the object is stored has versioning enabled.

See Permanently Deleting an Object from the Deleted Objects List.

The deleted object is within the WORM retention period.

See Permanently Deleting an Object in the WORM Retention Period.

The deleted folder has lots of objects.

See Deleting a Folder with Lots of Objects.

Other

See Submitting a Service Ticket.

Checking Whether the Current Account Has the Permission to Delete the Object

If the "Insufficient permissions. Contact the administrator." message is displayed when you are trying to delete the object, do as follows:

  1. Check whether the ACL of the bucket has write access configured.
    1. In the bucket list on OBS Console, click the bucket you need to delete the object from. The Objects page is displayed.
    2. In the navigation pane, choose Permissions > Bucket ACLs.
    3. In the Access to Bucket column, check whether the Write access is configured for the required user type.
      Figure 1 Checking the write access
      • If the write access is displayed but the object still cannot be deleted, go to Step 3.
      • If there is no write access displayed, go to Step 2.
  2. Grant the write access to the required user type.
    1. Locate the user type and click Edit in the Operation column.
    2. In the dialog box that is displayed, select Write for Access to Bucket.
    3. Click OK.
      Figure 2 Granting the write access
  3. Ask the bucket owner whether the DeleteObject or DeleteObjectVersion permission is granted in the bucket policy.
    • If the required permission is not granted, ask the bucket owner to grant them.
    • If the object still cannot be deleted after the required permission is granted, submit a service ticket for help.

Permanently Deleting an Object from the Deleted Objects List

If an object is stored in a bucket with versioning enabled, deleting this object will only move the object to the Deleted Objects list, and the object will still incur charges. To stop being billed, you need to delete the object permanently.

If an object has a WORM retention policy configured, delete it permanently by referring to Permanently Deleting an Object in the WORM Retention Period.

  1. Check whether the bucket where the object is stored has versioning enabled.
    1. In the bucket list on OBS Console, click the bucket you need to delete the object from. The Objects page is displayed.
    2. In the navigation pane, choose Overview.
    3. In the Basic Configurations area, check the versioning status.
      Figure 3 Checking the versioning status
      • If versioning is enabled for the bucket, go to the next step.
      • If versioning is disabled or suspended for the bucket but the object still cannot be deleted, submit a service ticket for help.
  2. Permanently delete an object.
    1. Click the Deleted Objects tab. The deleted object list is displayed.
    2. Locate the object and click Permanently Delete in the Operation column.
    3. Click OK.
      Figure 4 Permanently deleting an object

Permanently Deleting an Object in the WORM Retention Period

In the Deleted Objects list, objects that are within the WORM retention period can only be permanently deleted after their retention policy expires. For details about how to delete such an object, see Manually and Permanently Deleting Objects from a WORM-Enabled Bucket or Using a Lifecycle Rule to Delete Objects from a WORM-Enabled Bucket.

To view the WORM retention period of an object, go to the details page of the object and choose the Versions tab. Find the object version and choose More > Extend Retention Period. In the displayed dialog box:

  • If the object version is within the retention period, you can view how long the object version will remain protected, as shown in Figure 5.
  • If the retention period of the object version has expired, you can view how long the object version has not been protected, as shown in Figure 6.
  • If the object version has no retention policy configured, there is no retention information displayed, as shown in Figure 7.
Figure 5 Object version within the WORM retention period
Figure 6 Object version whose WORM retention has expired
Figure 7 Object version with no WORM retention policy

Deleting a Folder with Lots of Objects

To delete objects on OBS Console is to list objects and then delete them. If a folder has lots of objects or lots of levels of subfolders, deleting it on OBS Console may time out. To avoid such issues, obsutil is recommended for you to delete a folder containing lots of objects or lots of levels of subfolders. For details, see Deleting an Object.

Submitting a Service Ticket

If the problem persists, submit a service ticket to contact Huawei Cloud customer service for assistance.