Como excluir todos os dados da geleira?

29

Eu estava usando uma ferramenta no Mac OS X chamada Arq para fazer backup dos meus dados, mas achei muito difícil fazer o upload de todas as minhas coisas, pois não tenho e não posso ter uma conexão à Internet que seja rápida o suficiente para isso.

Por isso, decidi excluir todos os meus backups, mas sempre que tento no próprio software, ele não faz nada.

Eu também tentei o FastGlacier na minha outra máquina Windows, ele desliga e consome muitos recursos.

Eu queria saber se existe uma maneira fácil de fazer isso.

PS Minha geleira tem ~ 450 GB em arquivos 341907

Shereef Marzouk
fonte
Nota aos usuários do Arq - veja a resposta do desenvolvedor do Arq, Stefan Reitshamer, abaixo. Evite a dor de cabeça ao configurar o mtglacier e use a ferramenta incorporada ao Arq!
Johiz

Respostas:

26

O cofre de eliminação deste projeto funciona bem: https://github.com/vsespb/mt-aws-glacier

Instale e execute estes comandos (substitua vault-name pelo nome do seu vault):

mtglacier retrieve-inventory --config glacier.cfg --vault vault-name

aguarde cerca de 2 horas e depois

mtglacier download-inventory --config glacier.cfg --vault vault-name --new-journal vault-name.log
mtglacier purge-vault --config glacier.cfg --vault vault-name --journal vault-name.log
Ran Rubinstein
fonte
Muito obrigado por isso, mas, infelizmente, eu não tenho nenhum armazenamento de geleiras para testar, por isso, se alguém testá-lo, deixe-me saber para marcar a resposta correta.
Shereef Marzouk
Obrigado pelo feedback @CamiloNova eu ter escolhido este como melhor resposta com base no seu feedback ^ _ ^
Shereef Marzouk
Eu tive que esperar mais perto de 4 horas para ser capaz de download-inventário
Parag
1
Este método parece ser muito mais rápido em comparação com glacier-vault-remove. Esse método conseguiu remover 350 GB de dados em poucas horas, enquanto glacier-vault-removeremoveu apenas 30 GB de dados a cada 12 horas.
Gbmhunter 7/11
Sei que essa resposta está marcada como a solução confirmada, mas para usuários do Arq como o pôster original, a resposta de Stefan Reitshamer abaixo é a melhor, sem dúvida. O Arq possui uma ferramenta integrada para excluir os cofres de geleiras. Não há necessidade de mexer com o mtglacier. Basta ler essa resposta e pronto.
Johiz #
15

https://github.com/leeroybrun/glacier-vault-remove foi criado para esse fim exato.

Para remover um cofre, instale primeiro as dependências:

$ git clone https://github.com/leeroybrun/glacier-vault-remove.git
$ cd glacier-vault-remove
$ python setup.py install

Em seguida, crie um arquivo de credenciais, credentials.jsonno mesmo diretório:

{
  "AWSAccessKeyId": "YOURACCESSKEY",
  "AWSSecretKey":   "YOURSECRETKEY"
}

Em seguida, execute o script como este

$ python removeVault.py REGION-NAME VAULT-NAME

Exemplo:

$ python removeVault.py us-east-1 my_vault
onionjake
fonte
1
Esse script é muito mais lento que o mt-aws-glacier no momento
#
Além disso, consome muita RAM. Estou tentando excluir aproximadamente 120.000 arquivos - em 1142 de 125413, ele já usa mais de 1 GB de memória (e está aumentando a cada arquivo).
precisa saber é o seguinte
7

Se você remover uma pasta suportada pelo Glacier no Arq, ela entrará no lixo do Arq. Se você selecioná-lo no lixo do Arq e clicar em "Excluir permanentemente", o Arq excluirá todos os arquivos do Glacier e tentará excluir o cofre do Glacier. A exclusão do cofre pode falhar porque a Amazon precisa atualizar seu "inventário", o que ocorre uma vez por dia. No dia seguinte, navegue em "Outros conjuntos de backup" no Arq, localize esse cofre, selecione-o e clique em "Excluir" para excluí-lo.

Se você possui um cofre que não está associado a nenhum backup do Arq, escolha "Vaults de geleiras herdadas" no menu do Arq, selecione o cofre e clique no botão para excluir.

Stefan Reitshamer
fonte
Obrigado Stefan! Eu lutei por dias para descobrir como excluir meus cofres do Arq - falhando em instalar o mtglacier no meu Mac, criando uma instância do dropcloud ubuntu para executar o mtglacier - e esse tempo todo, a solução estava lá no Arq.
Johiz
5

Você pode usar um produto freeware como o CloudBerry Explorer http://www.cloudberrylab.com/free

Observe que os dados do Glacier não ficam disponíveis imediatamente. você precisa aguardar 24 horas para que o inventário global ocorra no lado da Amazon. Em seguida, clique no botão Obter inventário e aguarde mais 5 horas para obter o inventário para sua conta.

obrigado

Marc Jacobsohn
fonte
Eu não tinha nada além de geleira nessa conta, então apenas apaguei minha conta do aws e a marquei como a resposta correta, pois acho que teria funcionado se eu a tivesse tentado.
Shereef Marzouk
Não é realmente uma boa resposta, porque este produto não roda no OSX.
usar o seguinte comando
1

Sei que essa pergunta foi respondida há um tempo, mas acho que isso pode ajudar algumas pessoas, pois a exclusão de dados do Glacier ainda é extremamente complicada.

Eu não vi isso sugerido em nenhum lugar ... mas se você estiver usando apenas o AWS for Glacier (que eu assumo que deve ser o caso de muitos), considere simplesmente fechar sua conta da AWS! Foi o que fiz depois de dias de tentativas ineficazes de excluir os dados com várias ferramentas.

Quando você fecha sua conta, a Amazon exclui seus dados (supostamente; eles devem eventualmente recuperar o espaço em disco) e você recebe um recibo final do mês em andamento. Adeus Amazon!

Formato
fonte
Eu estava usando muitos outros serviços da Amazon e não queria perdê-los, e eu acho que muitos usam amazon para comprar coisas, mas é bom ter isso em algum lugar escrito para pessoas que nunca usaram amazon para outra coisa
Shereef Marzouk
@ShereefMarzouk Bem, quando você fecha sua conta no painel de controle da AWS, na verdade é a sua conta da AWS que você está fechando, não a sua conta da Amazon que você está usando para fazer compras. Portanto, você ainda poderá usar os outros serviços da Amazon (desde que eles não façam parte da AWS) como de costume.
Formulário
0

Como excluir o Vault (AWS Glacier)

Esta lista fornece algumas dicas para remover AWS Glacier Vaultcom o AWS CLI (por exemplo, https://aws.amazon.com/en/cli/ ).

Etapa 1 / Recuperar inventário

$ aws glacier initiate-job --job-parameters "{\"Type\": \"inventory-retrieval\"}" --vault-name YOUR_VAULT_NAME --account-id YOUR_ACCOUNT_ID --region YOUR_REGION

Aguarde 3/5 horas… :-(

Para a nova etapa, você precisa obter o JobId. Quando o inventário de recuperação é concluído, você pode obtê-lo com o seguinte comando:aws glacier list-jobs --vault-name YOUR_VAULT_NAME --region YOUR_REGION

Etapa 2 / Obter os ArchivesIds

$ aws glacier get-job-output --job-id YOUR_JOB_ID --vault-name YOUR_VAULT_NAME --region YOUR_REGION ./output.json

Vejo. Fazendo download de um inventário do Vault no Amazon Glacier

Você pode obter tudo ArchiveIdno ./output.jsonarquivo.

Etapa 3 / Excluir arquivos

Powershell

de @vinyar

$input_file_name = 'output.json'
$vault_name = 'my_vault'
# $account_id = 'AFDKFKEKF9EKALD' #not used. using - instead

$a = ConvertFrom-Json $(get-content $input_file_name)

$a.ArchiveList.archiveid | %{
write "executing: aws glacier delete-archive --archive-id=$_ --vault-name $vault_name --account-id -"
aws glacier delete-archive --archive-id=$_ --vault-name $vault_name --account-id - }

Python

de @robweber

ijson , que lê o arquivo como um fluxo. Você pode instalá-lo com pip

import ijson, subprocess

input_file_name = 'output.json'
vault_name = ''
account_id = ''

f = open(input_file_name)
archive_list = ijson.items(f,'ArchiveList.item')

for archive in archive_list:
    print("Deleting archive " + archive['ArchiveId'])
    command = "aws glacier delete-archive --archive-id='" + archive['ArchiveId'] + "' --vault-name " + vault_name + " --acc$
    subprocess.run(command, shell=True, check=True)

f.close()

PHP

de @Remiii

<?php

$file = './output.json' ;
$accountId = 'YOUR_ACCOUNT_ID' ;
$region = 'YOUR_REGION' ;
$vaultName = 'YOUR_VAULT_NAME' ;

$string = file_get_contents ( $file ) ;
$json = json_decode($string, true ) ;
foreach ( $json [ 'ArchiveList' ] as $jsonArchives )
{
    echo 'Delete Archive: ' . $jsonArchives [ 'ArchiveId' ] . "\n" ;
    exec ( 'aws glacier delete-archive --archive-id="' . $jsonArchives [ 'ArchiveId' ] . '" --vault-name ' . $vaultName . ' --account-id ' . $accountId . ' --region ' . $region , $output ) ;
    echo $output ;
}

Marca: depois de excluir um arquivo morto, se você fizer o download imediato do inventário do cofre, ele poderá incluir o arquivo excluído na lista porque o Amazon Glacier prepara o inventário do cofre apenas uma vez por dia.

Vejo. Exclusão de um arquivo no Amazon Glacier

Etapa 4 / Excluir um cofre

$ aws glacier delete-vault --vault-name YOUR_VAULT_NAME --account-id YOUR_ACCOUNT_ID --region YOUR_REGION

Gist originalmente por @Remiii

Ok Então, há alguns anos atrás eu fechei minha conta e a reabri há alguns meses atrás e adivinhe qual amazon ainda tem meus 3 TB na minha conta e agora fui cobrada por eles nos últimos meses.

Então, voltei a esta pergunta e descobri que:

  • O mt-aws-glacier é quase impossível de configurar no ubuntu mais recente, depois foi para o 12.04 awscli não está lá, quando o 14.04 obteve um erro sobre a minha assinatura ...
  • A resposta do Arq não é mais relevante no Arq 5
  • Então eu encontrei a essência acima e copiei aqui porque é melhor para a comunidade
  • Tentei cloudberry e parece que deve funcionar vou atualizar aqui em 4 ~ 10 horas
Shereef Marzouk
fonte
-1

No Mac, você pode tentar usar o aplicativo ForkLift (gratuito para avaliação), que pode se conectar ao Amazon S3.

Marius
fonte
Conectei o Amazon S3, mas ele não me mostra nada. Preciso especificar um servidor que não seja s3.amazonaws.com para acessar o glacier?
Kevin
Desculpe, faz um tempo atrás para mim agora ... Não me lembro bem como o consertei ... Acho que pode ter sido através dessas ferramentas de linha de comando listadas em uma dessas outras postagens.
Marius
1
Geleira não é S3. Ambos fazem parte do Amazon Web Services e são usados ​​para armazenar arquivos, mas têm diferentes casos de uso, estruturas de pagamento, restrições e APIs. Por esse motivo, as ferramentas S3 não funcionam com o Glacier e as ferramentas Glacier não funcionam com o S3 (embora isso não signifique que não existam ferramentas compatíveis com S3 e Glacier, escritas com manipuladores de rede distintos e lógica do aplicativo para cada serviço) .
Slipp D. Thompson