Spostare i dati tra i bucket

Questa pagina descrive come spostare i contenuti di un bucket copiando gli oggetti da un bucket di origine a un bucket di destinazione.

Panoramica

Quando crei un bucket, alcune delle proprietà che imposti sono permanenti e non possono essere modificate, inclusi il nome del bucket e il progetto padre.

Se vuoi utilizzare un nuovo nome per il bucket, puoi farlo effettivamente creando un nuovo bucket con il nome che vuoi utilizzare e poi copiando gli oggetti dal vecchio bucket a quello nuovo. A questo punto puoi eliminare il bucket precedente. Tieni presente quanto segue:

  • Quando elimini un bucket, il nome del bucket può essere riutilizzato.

  • Se il tuo obiettivo principale di spostare oggetti da un bucket a un altro è archiviare i dati in una posizione del bucket diversa, ti consigliamo di spostare direttamente il bucket.

Autorizzazioni obbligatorie

Console

Per completare questa guida utilizzando la consoleCloud de Confiance , devi disporre delle autorizzazioni IAM appropriate. Se i bucket a cui vuoi accedere esistono in un progetto che non hai creato, potrebbe essere necessario che il proprietario del progetto ti assegni un ruolo che contenga le autorizzazioni necessarie.

Per un elenco delle autorizzazioni richieste per azioni specifiche, vedi Autorizzazioni IAM per la console Cloud de Confiance .

Per un elenco dei ruoli pertinenti, consulta la pagina Ruoli Cloud Storage. In alternativa, puoi creare un ruolo personalizzato con autorizzazioni specifiche e limitate.

Riga di comando

Per completare questa guida utilizzando un'utilità a riga di comando, devi disporre delle autorizzazioni IAM appropriate. Se i bucket a cui vuoi accedere esistono in un progetto che non hai creato, potrebbe essere necessario che il proprietario del progetto ti assegni un ruolo che contenga le autorizzazioni necessarie.

Per un elenco delle autorizzazioni richieste per azioni specifiche, consulta Autorizzazioni IAM per i comandi gcloud storage.

Per un elenco dei ruoli pertinenti, consulta la pagina Ruoli Cloud Storage. In alternativa, puoi creare un ruolo personalizzato con autorizzazioni specifiche e limitate.

API REST

API JSON

Per completare questa guida utilizzando l'API JSON, devi disporre delle autorizzazioni IAM corrette. Se i bucket a cui vuoi accedere esistono in un progetto che non hai creato, potresti aver bisogno che il proprietario del progetto ti assegni un ruolo che contenga le autorizzazioni necessarie.

Per un elenco delle autorizzazioni richieste per azioni specifiche, consulta Autorizzazioni IAM per i metodi JSON.

Per un elenco dei ruoli pertinenti, consulta la pagina Ruoli Cloud Storage. In alternativa, puoi creare un ruolo personalizzato con autorizzazioni specifiche e limitate.

Spostare i dati da un bucket a un altro

Console

  1. Se non hai ancora un bucket di destinazione, crealo.

  2. Copia ogni oggetto dal bucket di origine a quello di destinazione.

  3. Elimina il bucket di origine e i relativi contenuti.

Riga di comando

  1. Se non ne hai ancora uno, crea un bucket di destinazione.

  2. Per copiare in modo ricorsivo i contenuti del bucket di origine nel bucket di destinazione, utilizza il comando gcloud storage cp con l'opzione --recursive:

    gcloud storage cp --recursive gs://SOURCE_BUCKET/* gs://DESTINATION_BUCKET

    Dove:

    • SOURCE_BUCKET è il nome del tuo bucket originale. Ad esempio, old-bucket.

    • DESTINATION_BUCKET è il nome del bucket in cui sposti i dati. Ad esempio, my-bucket.

    Se il bucket utilizza cartelle gestite e uno spazio dei nomi piatto, devi includere il flag --include-managed-folders nel comando per copiare le cartelle gestite.

  3. Per eliminare in modo ricorsivo i contenuti dal bucket di origine, insieme al bucket di origine stesso, utilizza il comando gcloud storage rm con l'opzione --recursive:

    gcloud storage rm --recursive gs://SOURCE_BUCKET

    Dove SOURCE_BUCKET è il nome del tuo bucket originale. Ad esempio, old-bucket.

    In alternativa, per eliminare i contenuti dal bucket di origine senza eliminare il bucket di origine stesso, utilizza il comando gcloud storage rm con il flag --all-versions e il carattere jolly **:

    gcloud storage rm --all-versions gs://SOURCE_BUCKET/**

    Dove SOURCE_BUCKET è il nome del tuo bucket originale. Ad esempio, old-bucket.

API REST

API JSON

  1. Se non hai ancora un bucket di destinazione, crealo.

  2. Copia ogni oggetto dal bucket di origine a quello di destinazione.

  3. Elimina ogni oggetto nel bucket di origine.

  4. Elimina il bucket di origine.

API XML

  1. Se non hai ancora un bucket di destinazione, crealo.

  2. Copia ogni oggetto dal bucket di origine a quello di destinazione.

  3. Elimina ogni oggetto nel bucket di origine.

  4. Elimina il bucket di origine.

Passaggi successivi