

# Excluir um bucket de uso geral
<a name="delete-bucket"></a>

Você pode excluir um bucket de uso geral vazio do Amazon S3. Para ter mais informações sobre como esvaziar um bucket de uso geral, consulte [Esvaziar um bucket de uso geral](empty-bucket.md). 

Você pode excluir um bucket usando o console do Amazon S3, a AWS Command Line Interface (AWS CLI), os AWS SDKs ou a API REST do Amazon S3. 

**Importante**  
Antes de excluir um bucket de uso geral, considere o seguinte:  
**Se um bucket for excluído, ele não poderá ser restaurado pela AWS.** Antes de excluir um bucket, faça backup ou replique os dados.
Os nomes de bucket de uso geral são exclusivos em um namespace global. **Se você excluir um bucket no namespace global compartilhado, esteja ciente de que outra Conta da AWS poderá usar o mesmo nome de bucket de uso geral para um novo bucket e, portanto, possivelmente receber solicitações destinadas ao bucket excluído.** Para evitar que isso aconteça, ou se quiser continuar a usar o mesmo nome do bucket, não exclua o bucket. Recomendamos que você esvazie o bucket e o mantenha, bloqueando quaisquer solicitações de bucket conforme necessário. Com relação a buckets não usados ativamente, recomendamos esvaziar todos o bucket de todos os objetos para minimizar os custos e, ao mesmo tempo, reter o bucket em si.
Recomendamos criar buckets no namespace regional da sua conta para garantir que os nomes de bucket pertençam somente à sua conta. Para ter mais informações, consulte [Namespaces para buckets de uso geral](gpbucketnamespaces.md).
Quando você exclui um bucket de uso geral, ele pode não ser removido imediatamente. Em vez disso, o Amazon S3 o coloca em fila para exclusão. Como o Amazon S3 é distribuído entre Regiões da AWS, o processo de exclusão leva tempo para se propagar totalmente e obter consistência em todo o sistema.
Se o bucket hospedar um site estático e você tiver criado e configurado uma zona hospedada do Amazon Route 53 conforme descrito em [Tutorial: Configurar um site estático usando um domínio personalizado registrado no Route 53](website-hosting-custom-domain-walkthrough.md), você deverá limpar as configurações da zona hospedada do Route 53 relacionadas ao bucket. Para ter mais informações, consulte [Etapa 2: exclua a zona hospedada do Route 53](getting-started-cleanup.md#getting-started-cleanup-route53).
Se o bucket receber dados de log do Elastic Load Balancing (ELB), recomendamos a interrupção da entrega de logs do ELB para o bucket antes da exclusão. Após excluir o bucket, se outro usuário criar um bucket usando o mesmo nome, os dados de log poderão ser entregues a esse bucket. Para ter informações sobre os logs de acesso do ELB, consulte [Access logs for your Classic Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/classic/access-log-collection.html) no *Guia do usuário para Classic Load Balancers* e [Access logs for your Application Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-access-logs.html) no *Guia do usuário para Application Load Balancers*.

**Solução de problemas**  
Se você não conseguir excluir um bucket de uso geral do Amazon S3, considere o seguinte:
+ **Verifique se o bucket está vazio**: só é possível excluir buckets que não contêm nenhum objeto. Verifique se o bucket está vazio. Para ter mais informações sobre como esvaziar um bucket, consulte [Esvaziar um bucket de uso geral](empty-bucket.md).
+ **Verifique se não há nenhum ponto de acesso anexado**: só é possível excluir buckets que não contêm nenhum ponto de acesso do S3 ou ponto de acesso multirregional anexado na mesma conta. Antes de excluir o bucket, exclua todos os pontos de acesso da mesma conta que estão anexados ao bucket.
+ **Verifique se você tem a permissão `s3:DeleteBucket`**: se não conseguir excluir um bucket, consulte o administrador do IAM para confirmar se você tem a permissão `s3:DeleteBucket`. Para obter informações sobre como visualizar ou atualizar permissões do IAM, consulte [Alteração de permissões de um usuário do IAM](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html) no *Guia do usuário do IAM*. Para obter informações sobre a solução de problemas, consulte [Solucionar erros de acesso negado (403 Forbidden) no Amazon S3](troubleshoot-403-errors.md).
+ **Verifique se há instruções `s3:DeleteBucket Deny` nas políticas de controle de serviços (SCPs) e nas políticas de controle de recursos (RCPs) do AWS Organizations**: SCPs e RCPs podem negar a permissão de exclusão em um bucket. Consulte mais informações em [Políticas de controle de serviços (SCPs)](https://docs.aws.amazon.com//organizations/latest/userguide/orgs_manage_policies_scps.html) e em [Resource control policies](https://docs.aws.amazon.com//organizations/latest/userguide/orgs_manage_policies_rcps.html) no *Guia do usuário do AWS Organizations*. 
+ **Verifique se há instruções `s3:DeleteBucket Deny` em sua política de bucket**: se você tiver permissões `s3:DeleteBucket` em sua política de usuário ou perfil do IAM e não conseguir excluir um bucket, talvez a política de bucket inclua uma instrução `Deny` para `s3:DeleteBucket`. Os buckets criados pelo AWS Elastic Beanstalk têm uma política que contém essa instrução por padrão. Antes de excluir o bucket, você deve excluir essa instrução ou a política de bucket.

**Pré-requisitos**  
Para excluir um bucket de uso geral, é necessário excluir o respectivo conteúdo. Para ter mais informações sobre como esvaziar um bucket, consulte [Esvaziar um bucket de uso geral](empty-bucket.md).

## Usar o console do S3
<a name="delete-bucket-console"></a>

**Para excluir um bucket do S3**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon S3 em [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/).

1. No painel de navegação à esquerda, escolha **Buckets de uso geral**.

1. Na lista de buckets, selecione a botão de opção ao lado do nome do bucket que deseja excluir e selecione **Excluir** na parte superior da página.

1. Na página **Delete bucket** (Excluir bucket), confirme se deseja excluir o bucket inserindo o nome do bucket no campo de texto e escolha **Delete bucket** (Excluir bucket).
**nota**  
Se o bucket contiver objetos, esvazie o bucket antes de excluí-lo selecionando o botão **Esvaziar bucket** no alerta de erro **Este bucket não está vazio** e seguindo as instruções na página **Esvaziar bucket**. Depois, volte para a página **Delete bucket (Excluir bucket)** e exclua o bucket.

1. Para verificar se você excluiu o bucket, abra a lista **Buckets de uso geral** e insira o nome do bucket que você excluiu. Se não for possível encontrar o bucket, sua exclusão foi bem-sucedida. 

## Usar o AWS SDK para Java
<a name="delete-empty-bucket"></a>

Para esvaziar e excluir um bucket de uso geral usando o AWS SDK para Java, você deve primeiro excluir todos os objetos nesse bucket e depois excluir o bucket. 

Para obter exemplos em outras linguagens, consulte [Use DeleteBucket com um AWS SDK ou CLI](https://docs.aws.amazon.com/AmazonS3/latest/API/s3_example_s3_DeleteBucket_section.html) na *Referência de API do Amazon Simple Storage Service*. Para ter mais informações sobre como usar outros AWS SDKs, consulte [Ferramentas para a Amazon Web Services](https://aws.amazon.com/tools/).

------
#### [ Java ]

Para excluir um bucket que contém objetos usando o AWS SDK para Java, exclua primeiro todos os objetos e depois o bucket. Essa abordagem funciona para buckets com ou sem o versionamento habilitado.

**nota**  
Para buckets sem versionamento habilitado, você pode excluir todos os objetos diretamente e, em seguida, excluir o bucket. Para buckets com versionamento habilitado, você deve excluir todas as versões do objeto antes de excluir o bucket.

Para ver exemplos de como excluir um bucket com o AWS SDK para Java, consulte [Delete a bucket](https://docs.aws.amazon.com/AmazonS3/latest/API/s3_example_s3_DeleteBucket_section.html) na *Referência de API do Amazon S3*.

------

## Como usar o AWS CLI
<a name="delete-bucket-awscli"></a>

Você poderá usar a AWS CLI para excluir um bucket de uso geral que contém objetos se ele não tiver o versionamento habilitado. Ao excluir um bucket que contém objetos, todos os objetos no bucket são excluídos permanentemente, incluindo objetos que passaram para a classe de armazenamento S3 Glacier Flexible Retrieval.

Se o bucket não tiver o versionamento habilitado, você poderá usar o comando `rb` (remover bucket) da AWS CLI com o parâmetro `--force` para excluir o bucket e todos os objetos nele. Esse comando primeiro exclui todos os objetos e, em seguida, o bucket.

Se o versionamento estiver habilitado, usar o comando `rb` com o parâmetro `--force` não excluirá objetos com versionamento, portanto, a exclusão do bucket falhará porque o bucket não estará vazio. Para obter mais informações sobre como excluir objetos com versionamento, consulte [Excluir versões de objetos](https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectVersions.html).

Para usar o seguinte comando, substitua `amzn-s3-demo-bucket` pelo nome do bucket que deseja excluir:

```
$ aws s3 rb s3://amzn-s3-demo-bucket --force  
```

Para ter informações, consulte [Como usar comandos de alto nível (s3) na AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/using-s3-commands.html) no *Guia do usuário da AWS Command Line Interface*.