Restauration d'un objet supprimé
Récupérez un objet supprimé vers un seau de stockage d'objets.
Lorsque le contrôle des versions est activé, la suppression d'un objet sans cibler une version spécifique crée un marqueur de suppression et vous pouvez récupérer la version précédente de l'objet. Un objet supprimé n'apparaît dans la liste Objets que lorsque la fonction Afficher l'objet supprimé est sélectionnée. Tous les objets supprimés répertoriés ont (Objet supprimé) à côté du nom d'entrée de l'objet. Développez la liste des versions de l'objet supprimé et recherchez la version à côté de (Supprimer le marqueur). Restaurez une version d'objet supprimée en supprimant ce marqueur de suppression. Si une version précédente existe, cette version devient l'objet réel.
Le contrôle des versions d'objet doit être activé pour un seau de stockage d'objets au moment du chargement de l'objet. Les objets supprimés d'un seau dont le contrôle des versions est désactivé ou suspendu ne peuvent pas être récupérés.
La version d'objet répertoriée après celle dont vous avez supprimé le marqueur de suppression devient l'objet restauré. Pour restaurer un objet supprimé dans un seau à l'aide de l'interface de ligne de commande, vous devez d'abord savoir quel objet est marqué pour suppression. Pour obtenir ces informations, répertoriez les objets du seau. Voir Liste des versions d'objet dans un seau et sélectionnez l'onglet Interface de ligne de commande pour exécuter la commande appropriée.
Dans la sortie, recherchez la version d'objet qui contient
"is-delete-marker": true.Utilisez la commande oci os object delete et les paramètres requis pour restaurer un objet supprimé dans un seau. Incluez le paramètre
version-idet sa valeur pour cet objet.oci os object delete --bucket-name bucket_name --object-name object_name --version-id version_id [OPTIONS]Lorsque vous exécutez cette commande, vous êtes invité à confirmer la suppression :
Are you sure you want to delete this resource? [y/N]:Répondez à
y.Par exemple :
oci os object delete --bucket-name MyBucket --name MyFile.txt --version-id 2a0021a1-2a2f-41a0-a199-454003f84aa0 Are you sure you want to delete this resource? [y/N]: yLe marqueur de suppression de l'objet est supprimé sans aucune autre information retournée. L'objet est restauré dans son seau. Vous pouvez lister l'objet pour vérifier qu'il a été restauré après avoir supprimé le marqueur de suppression.
Pour la liste complète des paramètres et des valeurs pour les commandes de l'interface de ligne de commande, voir .
Restauration d'un objet supprimé en masse
Pour restaurer plusieurs objets dans un seau en même temps, utilisez les filtres d'interface de ligne de commande OCI disponibles pour interroger l'indicateur
"is-delete-marker": true. Pour plus d'informations, voir "Utilisation d'interrogations" sous Gestion des entrées et des sorties de l'interface de ligne de commande.Par exemple, pour restaurer un groupe d'objets supprimés, exécutez la commande suivante pour obtenir une liste d'objets avec le marqueur de suppression et l'ID version de chaque objet supprimé :
oci os object list-object-versions --bucket-name MyBucket --query "data[?\"is-delete-marker\"].{Name:name,version:\"version-id\"}"|jq -r '.[]Ensuite, dirigez la sortie vers une autre commande ou écrivez un script wrapper pour restaurer les objets supprimés dans le seau. Par exemple, pour restaurer tous les objets d'un seau avec le marqueur de suppression sur un hôte Linux, exécutez la commande suivante :
oci os object list-object-versions --bucket-name MyBucket --query "data[?\"is-delete-marker\"].{Name:name,version:\"version-id\"}"|jq -r '.[] | join(" ")'| xargs -n 2 sh -c 'oci os object delete --namespace MyNamespace --bucket-name MyBucket --object-name "$1" --version-id "$2"' argv0Vous pouvez utiliser le paramètre
--forcepour éviter le mode interactif. Cependant, utilisez cette option avec prudence pour éviter de manquer des informations importantes.Tout d'abord, utilisez l'opération ListObjectVersions pour rechercher des objets avec
"is-delete-marker": true. Ensuite, utilisez l'opération DeleteObject pour supprimer le marqueur de suppression d'un objet.