Nettoyer les objets, versions et envois incomplets
Les commandes de suppression avec options parcourent le bucket ou dossier choisi et ses sous-dossiers. Elles sélectionnent les données selon leur âge, leur historique ou l’état des envois multipart. Elles ne réutilisent ni les filtres d’affichage ni les filtres de Modify child objects….
Portée, permissions et conséquences
Dans le panneau S3, sélectionnez un seul bucket, dossier logique courant ou dossier virtuel. Les anciennes versions de dossiers et les marqueurs de suppression ne sont pas des cibles récursives.
Sans Show versions, utilisez Delete with Options…. Avec Show versions, utilisez Delete Objects and Versions with Options…. Le mode versions exige Object versions. Lorsque la lecture du versionnement est prise en charge pour le bucket avec Read bucket versioning, son état doit être confirmé activé ou suspendu. Sans cette lecture, un état local inconnu n’empêche pas le nettoyage de l’historique. Un bucket connu comme n’ayant jamais eu le versionnement activé reste exclu.
Sur Amazon S3, le listing demande s3:ListBucket ou s3:ListBucketVersions. Les suppressions demandent s3:DeleteObject ou s3:DeleteObjectVersion. Les envois incomplets nécessitent s3:ListBucketMultipartUploads et s3:AbortMultipartUpload. Ouvrez File > Accounts…, sélectionnez le compte, cliquez sur Edit…, puis ouvrez Capabilities. Configurez le versionnement et Object Lock dans Data protection, et la liste des envois incomplets dans Transfers > List incomplete multipart uploads, uniquement si le service les prend en charge.
La vérification d’un état de versionnement inconnu nécessite s3:GetBucketVersioning. Pour rendre le contournement Governance disponible, la lecture d’une configuration Object Lock inconnue nécessite s3:GetBucketObjectLockConfiguration ; si elle échoue, la suppression sans contournement reste disponible.
Une suppression de version est définitive. Un envoi annulé ne peut plus reprendre. Les marqueurs de dossiers supprimés peuvent faire disparaître les dossiers vides. Les actions déjà réussies ne sont pas annulées si l’opération s’interrompt.
Ne modifiez pas les objets ou envois de la cible pendant l’opération. Dans un même compte, S3Client bloque le lancement d’un autre nettoyage sur une portée qui se recoupe, jusqu’à la fin de l’opération et de l’actualisation de ses vues.
Supprimer les objets courants
Dans Delete Objects with Options, aucune action n’est activée au départ.
- Cochez Delete current objects si vous souhaitez supprimer des objets.
- Gardez Last modified more than, puis saisissez le nombre de days ago, ou choisissez All current objects.
- Si nécessaire, cochez Cancel incomplete multipart uploads started more than, puis saisissez leur âge.
- Cliquez sur Continue, vérifiez le résumé, puis confirmez avec Delete ou Cancel uploads si seule l’annulation est demandée.
Les âges vont de 1 à 99 999 jours ; les valeurs proposées sont 30 jours pour les objets et 7 jours pour les envois. « Plus de N jours » exclut la date limite elle-même.
La suppression concerne une clé courante, pas tout son historique :
| État du versionnement | Conséquence |
|---|---|
| Activé | Un marqueur de suppression est créé ; les versions existantes restent présentes. |
| Suspendu | Une version null peut être définitivement supprimée avant la création du marqueur ; les versions avec ID restent présentes. |
| Jamais activé | L’objet est définitivement supprimé. |
| Non vérifié ou capacité indisponible | Le comportement dépend du service ; des versions anciennes peuvent rester. |
L’annulation multipart est proposée seulement si la capacité de listing correspondante est active. Elle ne supprime pas un objet dont l’envoi est déjà terminé.
Supprimer sélectivement des versions
Dans Delete Objects and Versions with Options, Selective deletion est sélectionné au départ. Activez seulement les actions voulues.
Onglet Current
Delete current versions cible les versions courantes dont l’âge Older than dépasse le nombre de days indiqué, 30 par défaut.
- Current version only supprime l’ID courant sélectionné. Une version précédente ou un marqueur de suppression peut alors redevenir courant.
- Entire history of each matching object supprime toutes les versions et tous les marqueurs de la clé dont la version courante correspond au critère d’âge. Les protections de conservation des versions précédentes ne préservent pas cet historique.
Une clé dont l’entrée courante est un marqueur de suppression n’est pas une version d’objet courante répondant à ce critère.
Onglet Previous
Cochez Delete previous versions. Sans option de conservation, toutes les versions d’objet non courantes sont sélectionnées.
Keep the … newest versions per object conserve N versions d’objet non courantes les plus récentes, 1 proposé. Les marqueurs de suppression ne sont pas comptés dans N.
Keep versions for at least … days after becoming noncurrent conserve celles qui sont non courantes depuis au plus le délai choisi, 30 jours proposé. Ce délai part de la création de l’entrée immédiatement plus récente, pas de la date d’écriture de la version ancienne.
Lorsque les deux conservations sont cochées, une version est supprimée seulement si elle n’est protégée ni par le nombre ni par l’âge. Les nombres et délais vont de 1 à 99 999. Les marqueurs de suppression ne sont pas retirés par cette option de versions précédentes.
Onglet Other deletion options
Delete expired delete markers retire les marqueurs lorsqu’ils sont la seule entrée restante de leur clé, y compris après la suppression réussie des versions sélectionnées. Un marqueur qui doit rester pour masquer des versions non supprimées n’est pas retiré.
Cancel incomplete uploads older than annule les envois multipart dont l’âge dépasse le délai, 7 jours proposé, lorsque leur listing est pris en charge.
Onglet Protection
L’onglet Protection et la case Bypass Governance-mode retention sont proposés si la capacité Bypass Governance retention est activée dans File > Accounts… > Edit… > Capabilities > Data protection. Pour utiliser le contournement lors d’une suppression de versions, il faut également activer Read bucket Object Lock dans ces réglages et vérifier qu’Object Lock est activé sur le bucket. Ces capacités locales ne remplacent pas les permissions du service : le contournement demande s3:BypassGovernanceRetention. Il ne retire pas une conservation légale et ne contourne jamais une rétention Compliance.
Une suppression peut être refusée si vous n’avez pas la permission de contourner la rétention Governance, ou si une conservation légale ou une rétention Compliance protège encore la version. Consultez Object Lock pour vérifier la protection concernée.
Purger toute la cible
Permanently delete all versions and delete markers ignore les critères sélectifs et sélectionne toutes les versions et tous les marqueurs sous la cible. Le bucket lui-même est conservé.
Also cancel every incomplete multipart upload est coché par défaut lorsque le listing multipart est disponible ; décochez-le pour conserver les envois en cours. Le choix de contournement Bypass Governance-mode retention reste soumis aux conditions décrites ci-dessus.
Avant de confirmer, vérifiez précisément le bucket ou Folder and subfolders, car aucune récupération n’est possible pour les versions supprimées.
Confirmer et contrôler le résultat
- Après avoir choisi les actions, cliquez sur Continue.
- Lisez le résumé et la portée de la confirmation.
- Cliquez sur Delete permanently pour les versions, Delete pour les clés courantes ou Cancel uploads pour l’annulation seule.
- Suivez l’opération et les erreurs. Après sa fin, contrôlez la liste actualisée ; activez Show versions pour vérifier l’historique restant.
Deletion incomplete ou Deletion canceled indique que le nettoyage n’a pas traité toute la cible. Les suppressions déjà réussies restent effectives. Actualisez la liste et consultez les erreurs avant de recommencer : des permissions insuffisantes, une rétention ou un échec de listing peuvent laisser des objets ou envois en place.
Deletion completed with warnings indique que le parcours est terminé mais que certains objets ou versions sélectionnés n’ont pas été supprimés. Pour l’annulation multipart seule, les messages sont Multipart upload cancellation incomplete ou Multipart upload cancellation stopped. Si Deletion refresh canceled apparaît, la vue peut être périmée : utilisez Refresh avant de vous y fier.
Pour supprimer ensuite le bucket vide, utilisez Delete bucket.
Historique de versions incohérent
Pour une suppression fondée sur les versions, S3Client attend d’avoir lu et validé l’historique complet de chaque clé avant d’en programmer les suppressions. Une incohérence IsLatest, y compris entre plusieurs pages, provoque InconsistentVersionListing. Lorsque les règles utilisent l’ordre chronologique, les dates sont également vérifiées avant la sélection. Aucune valeur reçue n’est corrigée automatiquement.
Aucune suppression n’est programmée à partir de l’historique rejeté. Des suppressions concernant d’autres clés déjà validées, ou des annulations d’envois multipart déjà terminées, peuvent rester effectives. Il n’y a pas de retour arrière global. Consultez l’erreur et actualisez la vue avant une nouvelle tentative.
Les historiques volumineux utilisent un fichier temporaire local, supprimé automatiquement, pour limiter la mémoire utilisée. S3Client signale VersionHistoryBufferError si ce fichier ne peut pas être créé, écrit ou relu ; vérifiez l’accès au répertoire temporaire et l’espace disque disponible.