Restaurando um Objeto Excluído

Recupere um objeto excluído em um bucket do serviço Object Storage.

Quando o controle de versão está ativado, a exclusão de um objeto sem direcionar uma versão específica criará um marcador de exclusão e você poderá recuperar a versão anterior do objeto. Um objeto excluído só aparece na lista Objetos quando o recurso Mostrar Objeto Excluído é selecionado. Todos os objetos excluídos listados têm (Objeto Excluído) ao lado do nome da entrada do objeto. Expanda a lista de versões do objeto excluído e procure a versão com (Excluir Marcador) ao lado dele. Restaure uma versão de objeto excluída removendo esse marcador de exclusão. Se uma versão anterior existir, ela se tornará o objeto ativo.

Observação

O controle de versão deve ser ativado para um bucket do Object Storage no momento do upload do objeto. Os objetos excluídos de um bucket com controle de versão desativado ou suspenso não podem ser recuperados.

    1. Na página da lista Buckets, selecione o bucket do Object Storage com o qual você deseja trabalhar. Se precisar de ajuda para encontrar a página da lista ou o bucket do Object Storage, consulte Listando Buckets.
    2. Na página de detalhes, selecione Objetos.
    3. Selecione Mostrar Objetos Excluídos.
      Todos os objetos excluídos, incluindo pastas e subpastas, são exibidos.
    4. Localize o objeto que você deseja recuperar.
    5. Selecione a seta para baixo (Mostrar Versões do Objeto) ao lado da entrada do objeto. A lista de versões do objeto é exibida. A versão mais recente aparece na parte superior da lista e é exibida (Versão Mais Recente).
    6. No menu Ações do objeto desejado, selecione Excluir.
    7. Quando solicitado, confirme a exclusão.

    A versão do objeto listada após aquele cujo marcador de exclusão você removeu se torna o objeto restaurado.

  • Para restaurar um objeto excluído em um bucket usando a CLI, primeiro você precisa saber qual objeto está marcado para exclusão. Para obter essas informações, liste os objetos no bucket. Consulte Listando Versões de Objetos em um Bucket e selecione a guia CLI para executar o comando apropriado.

    Na saída, localize a versão do objeto que tem "is-delete-marker": true.

    Use o comando oci os object delete e os parâmetros necessários para restaurar um objeto excluído em um bucket. Inclua o parâmetro version-id e seu valor para esse objeto.

    oci os object delete --bucket-name bucket_name --object-name object_name --version-id version_id [OPTIONS]
    Ao executar esse comando, você será solicitado a confirmar a exclusão:
    Are you sure you want to delete this resource? [y/N]:

    Responda com y.

    Por exemplo:

    oci os object delete --bucket-name MyBucket --name MyFile.txt --version-id 2a0021a1-2a2f-41a0-a199-454003f84aa0
    Are you sure you want to delete this resource? [y/N]: y

    O marcador de exclusão do objeto é excluído sem mais informações retornadas. O objeto é restaurado em seu bucket. Você pode listar o objeto para verificar se ele foi restaurado após remover o marcador de exclusão.

    Restaurando Objeto Excluído em Massa

    Para restaurar vários objetos em um bucket ao mesmo tempo, use os filtros da CLI do OCI disponíveis para consultar o indicador "is-delete-marker": true. Consulte "Usando Consultas" em Gerenciando Entrada e Saída da CLI para obter mais informações.

    Por exemplo, para restaurar um grupo de objetos excluídos, execute o seguinte comando para obter uma lista de objetos com o marcador de exclusão e o ID de versão de cada objeto excluído:

    oci os object list-object-versions --bucket-name MyBucket --query "data[?\"is-delete-marker\"].{Name:name,version:\"version-id\"}"|jq -r '.[]

    Em seguida, conduza a saída para outro comando ou grave um script wrapper para restaurar os objetos excluídos no bucket. Por exemplo, para restaurar todos os objetos em um bucket com o marcador de exclusão em um host Linux, execute o seguinte comando:

    oci os object list-object-versions --bucket-name MyBucket --query "data[?\"is-delete-marker\"].{Name:name,version:\"version-id\"}"|jq -r '.[] | join(" ")'| xargs -n 2 sh -c 'oci os object delete --namespace MyNamespace --bucket-name MyBucket --object-name "$1" --version-id "$2"' argv0
    

    Você pode usar o parâmetro --force para evitar o modo interativo. No entanto, use esta opção com cuidado para evitar a falta de informações importantes.

    Para obter uma lista completa de parâmetros e valores para comandos da CLI, consulte a Referência de Comandos da CLI.

  • Primeiro, use a operação ListObjectVersions para localizar objetos com o "is-delete-marker": true. Em seguida, use a operação DeleteObject para remover o marcador de exclusão de um objeto.