Wie lösche ich alle Gletscherdaten?

29

Ich habe unter Mac OS X ein Tool namens Arq verwendet, um meine Daten zu sichern, aber ich fand es so schwierig, all meine Daten hochzuladen, da ich keine und keine Internetverbindung habe, die schnell genug dafür ist.

Also habe ich beschlossen, alle meine Backups zu löschen, aber wenn ich es mit der Software selbst versuche, geschieht nichts.

Ich habe auch FastGlacier auf meinem anderen Windows-Computer ausprobiert. Es hängt und beansprucht zu viele Ressourcen.

Ich habe mich gefragt, ob es einen einfachen Weg gibt, dies zu tun.

PS Mein Gletscher hat ~ 450 GB in 341907 Archiven

Shereef Marzouk
quelle
Hinweis für Arq-Benutzer - siehe Antwort von Arq-Entwickler Stefan Reitshamer unten. Vermeiden Sie die Kopfschmerzen beim Einrichten von mtglacier und verwenden Sie einfach das in Arq integrierte Tool!
Joewiz

Antworten:

26

Der Bereinigungs-Tresor aus diesem Projekt funktioniert gut: https://github.com/vsespb/mt-aws-glacier

Installieren Sie die folgenden Befehle und führen Sie sie aus (ersetzen Sie den Tresornamen durch den Namen Ihres Tresors):

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

Warten Sie ca. 2 Stunden und dann

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
quelle
Vielen Dank dafür, aber leider habe ich keine Gletscherspeicher zum Testen. Bitte teilen Sie mir mit, wenn jemand dies testet, und markieren Sie die richtige Antwort.
Shereef Marzouk
Vielen Dank für das Feedback @CamiloNova Ich habe dies als beste Antwort ausgewählt, basierend auf Ihrem Feedback ^ _ ^
Shereef Marzouk
Ich musste ungefähr 4 Stunden warten, um Inventar herunterladen zu können
Parag
1
Diese Methode scheint im Vergleich zu viel schneller zu sein glacier-vault-remove. Mit dieser Methode konnten in wenigen Stunden 350 GB Daten entfernt werden, während glacier-vault-removealle 12 Stunden nur etwa 30 GB Daten entfernt wurden.
gbmhunter
Mir ist klar, dass diese Antwort als bestätigte Lösung markiert ist, aber für Arq-Benutzer wie das Originalposter ist die Antwort von Stefan Reitshamer zweifellos die beste. Arq verfügt über ein integriertes Tool zum Löschen von Gletschertresoren. Keine Notwendigkeit, mit dem Gletscher herumzuspielen. Lies einfach diese Antwort und du bist fertig.
Joewiz
15

https://github.com/leeroybrun/glacier-vault-remove wurde genau zu diesem Zweck erstellt.

Um einen Tresor zu entfernen, installieren Sie zuerst die Abhängigkeiten:

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

Erstellen Sie dann eine Anmeldeinformationsdatei credentials.jsonim selben Verzeichnis:

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

Führen Sie dann das Skript wie folgt aus

$ python removeVault.py REGION-NAME VAULT-NAME

Beispiel

$ python removeVault.py us-east-1 my_vault
Zwiebeljake
quelle
1
Dieses Skript ist zur Zeit viel langsamer als der Mt-AWS-Gletscher
Dan Poltawski
Außerdem frisst es viel RAM. Ich versuche, ungefähr 120.000 Archive zu löschen - bei 1142 von 125413 belegt es bereits mehr als 1 GB Arbeitsspeicher (und er nimmt mit jedem Archiv zu).
Aaronk6
7

Wenn Sie einen von Glacier unterstützten Ordner in Arq entfernen, wird er in den Papierkorb von Arq verschoben. Wenn Sie es in Arqs Papierkorb auswählen und auf "Dauerhaft löschen" klicken, löscht Arq alle Glacier-Archive und versucht, das Glacier-Depot zu löschen. Das Löschen des Tresors schlägt möglicherweise fehl, da Amazon sein "Inventar" aktualisieren muss, was einmal pro Tag der Fall ist. Suchen Sie am nächsten Tag in Arq unter "Andere Sicherungssätze" nach dem Tresor, wählen Sie ihn aus und klicken Sie auf "Löschen", um ihn zu löschen.

Wenn Sie einen Tresor haben, der keiner Arq-Sicherung zugeordnet ist, wählen Sie "Legacy Glacier Vaults" aus dem Menü von Arq, wählen Sie den Tresor aus und klicken Sie auf die Schaltfläche, um ihn zu löschen.

Stefan Reitshamer
quelle
Danke Stefan! Ich hatte tagelang Mühe, herauszufinden, wie ich meine Arq-Tresore löschen konnte - ich konnte mtglacier nicht auf meinem Mac installieren und eine Dropcloud-Ubuntu-Instanz zum Ausführen von mtglacier erstellen -, und die ganze Zeit war die Lösung genau dort in Arq.
Joewiz
5

Sie können ein Freeware-Produkt wie CloudBerry Explorer http://www.cloudberrylab.com/free verwenden

Beachten Sie, dass die Gletscherdaten nicht sofort verfügbar sind. Sie müssen 24 Stunden warten, bis das globale Inventar auf der Amazon-Seite angezeigt wird. Klicken Sie dann auf die Schaltfläche Inventar abrufen und warten Sie weitere 5 Stunden, um das Inventar für Ihr Konto abzurufen.

Vielen Dank

Marc Jacobsohn
quelle
Ich hatte nichts als Gletscher auf diesem Konto, also habe ich gerade mein aws-Konto gelöscht. Es wird als die richtige Antwort markiert, da ich denke, dass es geklappt hätte, wenn ich es versucht hätte.
Shereef Marzouk
Keine wirklich gute Antwort, da dieses Produkt nicht unter OSX läuft.
user3353
1

Ich weiß, dass diese Frage vor einiger Zeit beantwortet wurde, aber ich denke, dass dies einigen Leuten helfen könnte, da das Löschen von Glacier-Daten immer noch äußerst umständlich ist.

Ich habe diesen Vorschlag nirgendwo gesehen ... aber wenn Sie nur AWS for Glacier verwenden (was meiner Meinung nach für viele der Fall sein muss), können Sie Ihr AWS-Konto einfach schließen! Das habe ich nach Tagen voller sinnloser Versuche gemacht, die Daten mit verschiedenen Tools zu löschen.

Wenn Sie Ihr Konto schließen, löscht Amazon Ihre Daten (angeblich; sie sollten mindestens den Festplattenspeicherplatz zurückfordern) und Sie erhalten eine endgültige Quittung für den laufenden Monat. Auf Wiedersehen Amazon!

Bilden
quelle
Ich nutzte viele andere Amazon-Dienste und wollte sie nicht verlieren, und ich denke, viele nutzen Amazon, um Dinge zu kaufen, aber es ist gut, dass dies irgendwo für Leute geschrieben wurde, die Amazon nie für etwas anderes verwendet haben
Shereef Marzouk
@ShereefMarzouk Nun, wenn Sie Ihr Konto im AWS-Steuerungsfeld schließen, schließen Sie tatsächlich Ihr AWS- Konto und nicht Ihr Amazon-Konto, mit dem Sie Einkäufe tätigen. So können Sie die anderen Amazon-Dienste (sofern sie nicht Teil von AWS sind) wie gewohnt nutzen.
Formular
0

So löschen Sie Vault (AWS Glacier)

Diese Liste enthält einige Tipps zum Entfernen AWS Glacier Vaultmit AWS CLI (z. B. https://aws.amazon.com/en/cli/ ).

Schritt 1 / Inventar abrufen

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

Warte 3/5 Stunden… :-(

Für den neuen Schritt benötigen Sie das JobId. Wenn der Abruf des Inventars abgeschlossen ist, können Sie es mit dem folgenden Befehl abrufen:aws glacier list-jobs --vault-name YOUR_VAULT_NAME --region YOUR_REGION

Schritt 2 / Holen Sie sich die ArchivesIds

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

Sehen. Herunterladen eines Tresorinventars in Amazon Glacier

Sie können alle ArchiveIdin der ./output.jsonDatei erhalten.

Schritt 3 / Archiv löschen

Power Shell

von @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

von @robweber

ijson liest die Datei stattdessen als Stream ein. Sie können es mit pip installieren

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

von @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 ;
}

Markieren: Wenn Sie nach dem Löschen eines Archivs das Tresorinventar sofort herunterladen, wird das gelöschte Archiv möglicherweise in die Liste aufgenommen, da Amazon Glacier das Tresorinventar nur etwa einmal täglich erstellt.

Sehen. Löschen eines Archivs in Amazon Glacier

Schritt 4 / Einen Tresor löschen

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

Ursprünglich von @Remiii

Ok Also vor ein paar Jahren habe ich mein Konto geschlossen und es erst vor ein paar Monaten wiedereröffnet und rate mal, was Amazon noch mit meinen 3 TB auf meinem Konto hat und jetzt habe ich sie für die letzten Monate in Rechnung gestellt.

Also kam ich auf diese Frage zurück und stellte fest, dass:

  • mt-aws-glacier ist auf dem neuesten ubuntu fast unmöglich einzurichten dann ging es um 12.04 awscli ist nicht da, dann kam am 14.04 ein fehler über meine signatur ...
  • Die Arq-Antwort ist in Arq 5 nicht mehr relevant
  • Dann habe ich den obigen Kern gefunden und hier kopiert, weil es besser für die Community ist
  • Versucht Moltebeere und es sieht aus wie es funktionieren sollte Ich werde hier in 4 ~ 10 Stunden aktualisieren
Shereef Marzouk
quelle
-1

Auf dem Mac können Sie die kostenlose ForkLift- App verwenden, mit der Sie eine Verbindung zu Amazon S3 herstellen können.

Marius
quelle
Ich habe eine Verbindung zu Amazon S3 hergestellt, aber es zeigt mir nichts. Muss ich einen anderen Server als s3.amazonaws.com angeben, um auf glacier zuzugreifen?
Kevin
Tut mir leid, dass es für mich jetzt eine Weile her ist ... Ich kann mich nicht genau erinnern, wie ich es irgendwann repariert habe ... Ich denke, es könnte über diese Befehlszeilen-Tools geschehen sein, die in einem dieser anderen Posts aufgelistet sind.
Marius
1
Gletscher ist nicht S3. Sie sind beide Teil von Amazon Web Services und werden beide zum Speichern von Dateien verwendet, haben jedoch unterschiedliche Anwendungsfälle, Zahlungsstrukturen, Einschränkungen und APIs. Aus diesem Grund funktionieren S3-Tools nicht mit Glacier und Glacier-Tools funktionieren nicht mit S3 (das heißt jedoch nicht, dass es keine Tools gibt, die sowohl S3- als auch Glacier-kompatibel sind und mit unterschiedlichen Netzwerk-Handlern und erstellt wurden Anwendungslogik für jeden Dienst) .
Slipp D. Thompson