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 i tuoi oggetti dal vecchio bucket al nuovo bucket. A questo punto puoi eliminare il vecchio bucket. Tieni presente quanto segue:

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

  • Se il tuo obiettivo principale di spostare gli oggetti da un bucket all'altro è archiviare i dati in una località del bucket diversa, ti consigliamo di trasferire direttamente il bucket.

Autorizzazioni obbligatorie

Console

Per completare questa guida utilizzando la Google Cloud console, devi disporre delle autorizzazioni IAM appropriate. 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 la Google Cloud console.

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

Riga di comando

Per completare questa guida utilizzando un'utilità della riga di comando, devi disporre delle autorizzazioni IAM appropriate. 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 comandigcloud storage.

Per un elenco dei ruoli pertinenti, consulta Ruoli di 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 appropriate. 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 Ruoli di Cloud Storage. In alternativa, puoi creare un ruolo personalizzato con autorizzazioni specifiche e limitate.

Spostare i dati da un bucket all'altro

Console

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

  2. Copia ogni oggetto dal bucket di origine al bucket di destinazione bucket.

  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 gcloud storage cp comando con l'opzione --recursive:

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

    Dove:

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

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

    Se il bucket utilizza cartelle gestite e uno spazio dei nomi flat, 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 a il 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 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 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 al bucket di destinazione bucket.

  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 al bucket di destinazione bucket.

  3. Elimina ogni oggetto nel bucket di origine.

  4. Elimina il bucket di origine.

Passaggi successivi