Eliminazione del contenuto di un bucket per uso generico
È possibile eliminare il contenuto di un bucket per uso generico utilizzando la console Amazon S3, gli AWS SDK o AWS Command Line Interface (AWS CLI). Quando si elimina il contenuto di un bucket per uso generico, si eliminano tutti gli oggetti, ma si mantiene il bucket. Lo svuotamento di un bucket non è reversibile. Anche gli oggetti aggiunti al bucket mentre l'operazione di svuotamento del bucket è in corso potrebbero essere eliminati. Tutti gli oggetti (incluse tutte le versioni degli oggetti e i marker di eliminazione) nel bucket devono essere eliminati prima che possa essere eliminato il bucket stesso.
Quando si elimina il contenuto di un bucket per uso generico che ha il controllo delle versioni S3 abilitato o sospeso, tutte le versioni di tutti gli oggetti nel bucket vengono eliminate. Per ulteriori informazioni, consulta Utilizzo di oggetti in un bucket che supporta la funzione Controllo delle versioni.
Durante l’eliminazione del contenuto del bucket, è consigliabile rimuovere anche tutti i caricamenti in più parti incompleti. Puoi utilizzare i caricamenti in più parti per caricare oggetti di grandi dimensioni (fino a 5 TB) come set di parti per migliorare la velocità di trasmissione effettiva ed eseguire più rapidamente il ripristino in caso di problemi di rete. Nei casi in cui il processo di caricamento in più parti non venga portato a termine, le parti incomplete rimangono nel bucket (in uno stato inutilizzabile). Queste parti incomplete comportano costi di archiviazione fino al termine del processo di caricamento o fino alla rimozione delle parti incomplete. Per ulteriori informazioni, consulta Caricamento e copia di oggetti utilizzando il caricamento multiparte in Amazon S3.
Come best practice, consigliamo di configurare le regole del ciclo di vita per far scadere gli oggetti e i caricamenti in più parti incompleti più vecchi di un determinato numero di giorni. Quando crei la regola del ciclo di vita per far scadere i caricamenti in più parti incompleti, consigliamo il valore di 7 giorni come buon punto di partenza. Per ulteriori informazioni, consulta Impostazione di una configurazione del ciclo di vita S3 in un bucket.
La scadenza del ciclo di vita è un processo asincrono, pertanto l’esecuzione della regola potrebbe richiedere alcuni giorni prima che il bucket sia vuoto. Dopo la prima volta che Amazon S3 esegue la regola, tutti gli oggetti idonei alla scadenza vengono contrassegnati per l'eliminazione. Non vengono più addebitati costi per gli oggetti contrassegnati per l'eliminazione. Per ulteriori informazioni, consulta Come posso svuotare un bucket Amazon S3 utilizzando una regola di configurazione del ciclo di vita?
È possibile utilizzare la console Amazon S3 per eliminare il contenuto di un bucket per uso generico, ossia eliminare tutti gli oggetti nel bucket senza eliminare il bucket.
Per svuotare un bucket S3
Accedi alla Console di gestione AWS e apri la console Amazon S3 all’indirizzo https://console.aws.amazon.com/s3/
. -
Nel riquadro di navigazione sinistro, scegli Bucket per uso generico.
-
Nell’elenco dei bucket scegli l’opzione accanto al nome del bucket di cui desideri eliminare il contenuto, quindi scegli Vuoto.
-
Nella pagina Empty bucket (Svuota bucket) confermare che si desidera svuotare il bucket immettendo il nome del bucket nel campo di testo e quindi scegliere Empty (Svuota).
-
Monitorare l'avanzamento del processo di svuotamento del bucket nella pagina Svuota bucket: stato.
È possibile eliminare il contenuto di un bucket per uso generico utilizzando AWS CLI unicamente se sul bucket non è abilitato il controllo delle versioni. Se il controllo delle versioni non è abilitato, puoi utilizzare il comando rm (rimuovi) AWS CLI con il parametro --recursive per svuotare un bucket (o rimuovere un sottoinsieme di oggetti con uno specifico prefisso nel nome della chiave).
Il comando rm rimuove gli oggetti con prefisso del nome della chiave doc, ad esempio doc/doc1 e doc/doc2.
$aws s3 rm s3://bucket-name/doc --recursive
Per rimuovere tutti gli oggetti senza specificare un prefisso, è necessario utilizzare il comando seguente.
$aws s3 rm s3://bucket-name --recursive
Per ulteriori informazioni, consulta Utilizzo dei comandi di alto livello S3 con la AWS CLI nella Guida per l'utente di AWS Command Line Interface.
Nota
Non è possibile rimuovere oggetti da un bucket su cui è abilitata la funzione Versioni multiple. Con questo comando, Amazon S3 aggiunge un contrassegno di eliminazione quando elimini un oggetto. Per ulteriori informazioni sulla funzione Versioni multiple del bucket S3, consulta Conservazione di più versioni degli oggetti con Controllo delle versioni S3.
È possibile utilizzare gli AWS SDK per eliminare il contenuto di un bucket per uso generico o rimuovere un sottoinsieme di oggetti con uno specifico prefisso nel nome della chiave.
Per un esempio di come svuotare un bucket utilizzando AWS SDK per Java, consulta Eliminazione di un bucket per uso generico. Il codice elimina tutti gli oggetti, indipendentemente dal fatto che sul bucket sia abilitata la funzione Versioni multiple o meno, quindi elimina il bucket. Se vuoi soltanto svuotare il bucket, accertati di avere rimosso l'istruzione che lo elimina.
Per ulteriori informazioni sull'utilizzo di altri SDK AWS, consulta Strumenti per Amazon Web Services
Per eliminare il contenuto di un bucket per uso generico di grandi dimensioni, ti consigliamo di utilizzare una regola di configurazione del ciclo di vita S3. La scadenza del ciclo di vita è un processo asincrono, pertanto l'esecuzione della regola potrebbe richiedere alcuni giorni prima che il bucket sia vuoto. Dopo la prima volta che Amazon S3 esegue la regola, tutti gli oggetti idonei alla scadenza vengono contrassegnati per l'eliminazione. Non vengono più addebitati costi per gli oggetti contrassegnati per l'eliminazione. Per ulteriori informazioni, consulta Come posso svuotare un bucket Amazon S3 utilizzando una regola di configurazione del ciclo di vita?
Se si utilizza una configurazione del ciclo di vita per svuotare il bucket, tale configurazione deve includere versioni correnti e non correnti, contrassegni di eliminazione e caricamenti in più parti incompleti.
È possibile aggiungere le regole di configurazione del ciclo di vita per predisporre la scadenza di tutti gli oggetti o di un sottogruppo degli stessi con uno specifico prefisso nel nome della chiave. Ad esempio, per eliminare tutti gli oggetti in un bucket, è possibile impostare una regola del ciclo di vita per predisporre la scadenza degli oggetti il giorno successivo alla creazione degli stessi.
Amazon S3 supporta una regola per il ciclo di vita del bucket che può essere utilizzata per interrompere i caricamenti multiparti che non sono stati completati entro un determinato numero di giorni dopo l'avvio. Si consiglia di configurare questa regola del ciclo di vita per ridurre al minimo i costi di storage. Per ulteriori informazioni, consulta Configurazione del ciclo di vita del bucket per l'eliminazione dei caricamenti in più parti incompleti.
Per ulteriori informazioni sull'utilizzo di una configurazione del ciclo di vita per svuotare un bucket, consulta Impostazione di una configurazione del ciclo di vita S3 in un bucket e Oggetti in scadenza.
Eliminazione del contenuto di un bucket per uso generico con AWS CloudTrail configurato
AWS CloudTrail monitora gli eventi relativi ai dati a livello di oggetto in un bucket per uso generico Amazon S3, ad esempio l’eliminazione di oggetti. Se usi un bucket per uso generico come destinazione per registrare nei log gli eventi CloudTrail e stai eliminando oggetti dallo stesso bucket, potresti creare nuovi oggetti mentre elimini il contenuto del bucket. Per evitare che ciò accada, blocca i percorsi AWS CloudTrail. Per ulteriori informazioni su come impedire ai trail di CloudTrail di registrare gli eventi, consulta Turning off logging for a trail (Disattivazione della registrazione di un trail) nella Guida per l'utente di AWS CloudTrail.
Un'altra alternativa per impedire l'aggiunta di percorsi CloudTrail al bucket è aggiungere un'istruzione di negazione s3:PutObject alla policy del bucket. Se desideri memorizzare nuovi oggetti nel bucket in un secondo momento, dovrai rimuovere questa istruzione di negazione s3:PutObject. Per ulteriori informazioni, consulta Operazioni con gli oggetti ed Elementi delle policy JSON IAM: Effect nella Guida per l'utente IAM.