Mover e renomear buckets

Ao criar um bucket, algumas das propriedades definidas são permanentes e não podem ser alteradas, incluindo o nome, a localização geográfica e o projeto de que o bucket faz parte. No entanto, é possível mover ou renomear seu bucket:

  • Se não houver dados no bucket antigo, exclua-o e crie outro bucket com um novo nome, em um novo local ou em um novo projeto.

  • Se houver dados no bucket antigo, crie um novo com o nome, local e/ou projeto que você quer, copie os dados do bucket antigo para o novo e exclua o antigo e o conteúdo dele. Veja a descrição desse processo nas etapas abaixo.

    • Se você quiser que o novo bucket tenha o mesmo nome do antigo, mova temporariamente os dados para um bucket com um nome diferente. Isso permite que você exclua o bucket original para reutilizar o nome do bucket.

Permissões necessárias

Console

Para concluir este guia usando o Console do Google Cloud, é preciso ter as permissões de IAM adequadas. Se os buckets que você quer acessar existirem em um projeto que você não criou, talvez seja necessário que o proprietário do projeto conceda a você um papel que contenha as permissões necessárias.

Para uma lista de permissões necessárias para ações específicas, consulte Permissões do IAM para o Console do Google Cloud.

Para ver a lista de papéis relevantes, consulte Papéis do Cloud Storage. Como alternativa, é possível criar um papel personalizado que tenha permissões mais limitadas.

Linha de comando

Para concluir este guia usando um utilitário de linha de comando, você precisa ter as permissões de IAM adequadas. Se os buckets que você quer acessar existirem em um projeto que você não criou, talvez seja necessário que o proprietário do projeto conceda a você um papel que contenha as permissões necessárias.

Para uma lista de permissões necessárias para ações específicas, consulte Permissões do IAM para comandos gcloud storage.

Para ver a lista de papéis relevantes, consulte Papéis do Cloud Storage. Como alternativa, é possível criar um papel personalizado que tenha permissões mais limitadas.

APIs REST

API JSON

Para concluir este guia usando a API JSON, é preciso ter as permissões do IAM adequadas. Se os buckets que você quer acessar existirem em um projeto que você não criou, talvez seja necessário que o proprietário do projeto conceda a você um papel que contenha as permissões necessárias.

Para uma lista de permissões necessárias para ações específicas, consulte Permissões do IAM para métodos JSON.

Para ver a lista de papéis relevantes, consulte Papéis do Cloud Storage. Como alternativa, é possível criar um papel personalizado que tenha permissões mais limitadas.

Mover dados de um bucket para outro

Console

Use o Serviço de transferência do Cloud Storage no Console do Google Cloud:

  1. Se você ainda não tiver um bucket de destino, crie o bucket.
  2. Abra a página "Transferir" no Console do Google Cloud.

    Abra a página Transferir

  3. Clique em Criar job de transferência.
  4. Siga as instruções detalhadas e clique em Próxima etapa ao concluir cada etapa:

    • Escolha uma origem: use o bucket do Google Cloud Storage como o tipo de origem e insira o nome do bucket desejado diretamente ou clique em Procurar para encontrar. e selecione o bucket que você quer.

    • Escolha um destino: insira diretamente o nome do bucket pretendido ou clique em Procurar para localizar e selecionar o bucket desejado.

    • Escolha as configurações: selecione a opção Excluir arquivos da origem após a transferência.

    • Opções de programação: ignore esta seção.

  5. Depois de concluir as instruções, clique em Criar.

    Isso inicia o processo de cópia dos objetos do bucket antigo para o novo. Esse processo pode levar algum tempo. No entanto, depois de clicar em Criar, será possível sair do Console do Google Cloud.

    Para ver o andamento da transferência:

    Abra a página "Transferir" no Console do Google Cloud.

    Abra a página Transferir

    Para saber como acessar informações detalhadas de erro sobre operações do Cloud Storage com falha no console do Google Cloud, consulte Solução de problemas.

  6. Após a conclusão da transferência, não será necessário fazer nada para excluir os objetos do bucket antigo se a caixa de seleção Excluir objetos de origem após a conclusão da transferência estiver selecionada durante a configuração. No entanto, você também pode excluir o bucket antigo, o que precisa ser feito separadamente.

Linha de comando

  1. Crie um bucket de destino se você ainda não tiver um.

  2. Para copiar o conteúdo do bucket de origem para o bucket de destino, use um dos seguintes métodos:

    • Para copiar recursivamente todos os objetos do bucket de origem para o de destino, use o comando gcloud storage cp com a opção --recursive:

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

      Em que:

      • SOURCE_BUCKET é o nome do bucket original. Por exemplo, old-bucket.

      • DESTINATION_BUCKET é o nome do bucket para o qual você está movendo os dados. Por exemplo, my-bucket.

    • Para copiar recursivamente todos os objetos e pastas gerenciadas do bucket de origem para o bucket de destino, use o comando gcloud alpha storage cp com as opções --include-managed-folders e --recursive:

      gcloud alpha storage cp --include-managed-folders --recursive gs://SOURCE_BUCKET/* gs://DESTINATION_BUCKET

      Em que:

      • SOURCE_BUCKET é o nome do bucket original. Por exemplo, old-bucket.

      • DESTINATION_BUCKET é o nome do bucket para o qual você está movendo os dados. Por exemplo, my-bucket.

  3. Para excluir o bucket de origem, use um dos seguintes métodos:

    • Para excluir recursivamente todos os objetos do bucket de origem, junto do próprio bucket de origem, use o comando gcloud storage rm com a opção --recursive:

      gcloud storage rm --recursive gs://SOURCE_BUCKET

      Em que SOURCE_BUCKET é o nome do bucket original. Por exemplo, old-bucket.

    • Para excluir todos os objetos e pastas gerenciadas do bucket de origem, junto com o próprio bucket de origem, use o comando gcloud alpha storage rm com a opção --recursive:

      gcloud alpha storage rm --recursive gs://SOURCE_BUCKET

      Em que SOURCE_BUCKET é o nome do bucket original. Por exemplo, old-bucket.

    • Para excluir os objetos e as pastas gerenciadas do bucket de origem sem excluir o próprio bucket, use o comando gcloud alpha storage rm sem a sinalização --recursive:

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

      Em que SOURCE_BUCKET é o nome do bucket original. Por exemplo, old-bucket.

APIs REST

API JSON

  1. Se você ainda não tiver um bucket de destino, crie o bucket.

  2. Copie cada objeto do bucket de origem para o bucket de destino.

  3. Exclua cada objeto no bucket de origem.

  4. Exclua o bucket de origem.

API XML

  1. Se você ainda não tiver um bucket de destino, crie o bucket.

  2. Copie cada objeto do bucket de origem para o bucket de destino.

  3. Exclua cada objeto no bucket de origem.

  4. Exclua o bucket de origem.

A seguir