Ich brauche eine einfache Möglichkeit, Dateien über die Befehlszeile auf Amazon Glacier zu sichern?

Ich habe einen CentOS-Server online mit einem Verzeichnis von cPmove-Dateien, die ich auf Amazon Glacier sichern muss. Ich habe nur Befehlszeilenzugriff, keine GUI.

Ich brauche einen Befehlszeilenclient, der zum Hochladen der Dateien relativ einfach zu verwenden ist. Zum Beispiel habe ich verwendet dropbox_uploader.sh vorher (https://github.com/andreafabrizi/Dropbox-Uploader) mit diesem einfachen Bash-Skript:

#!/bin/bash
find /backup_folder -maxdepth 1 -name "cpmove-*.tar.gz" | while read CPMOVE
do
   ./dropbox_uploader.sh upload ${CPMOVE}
done

Ich sah diesen: https://github.com/carlossg/glacier-cli aber ich ich habe Java nicht auf dem Server installiert und bin aufgrund aller Sicherheitsprobleme in letzter Zeit etwas zögerlich, es zu installieren.

Ich habe python und ruby:

me@server [/home]# python -V
Python 2.4.3
root@server [/home]# ruby --version
ruby 1.8.7 (2012-06-29 patchlevel 370) [i686-linux]
me@server [/home]#

Gibt es einen Ruby (vorzuziehen) oder Python oder eine andere Sprache (weniger bevorzugt) Amazon Glacier Command Line Client?)

Author: Ivan, 2013-02-04

4 answers

Die kanonische Bibliothek für die Verbindung mit AWS über Python ist Boto. Obwohl es als Bibliothek in einem Python-Skript verwendet werden soll, ist es einfach genug, es unabhängig zu verwenden. Sie können die feine Dokumentation überfliegen, und Diese Seite hat einen Überblick über die Verwendung von Boto, aber hier sind die wichtigen Teile:

Geben Sie Ihre AWS-Anmeldeinformationen in ~/.boto ein:

[Credentials]
aws_access_key_id = FOO
aws_secret_access_key = BAR

Listen Sie Ihre Gewölbe auf:

$ glacier vaults

Datei hochladen:

$ glacier upload foo-vault foo.zip

Ausstehende Aufträge auf einem besonderer Tresor:

$ glacier jobs foo-vault

Obwohl es wirklich nicht einfacher zu bedienen ist als Boto selbst, basiert die Amazon Glacier CLI-Schnittstelle auf Boto und ist in der Tat für Endbenutzer konzipiert. Hier ist ein Tutorial dafür.

Schließlich ist die offizielle AWS-CLI ziemlich einfach zu bedienen. Setzen Sie die Anmeldeinformationen in ~/.aws/credentials und verwenden Sie dann einfach diese Befehle:

Erstellen Sie einen Tresor:

$ aws glacier create-vault --account-id - --vault-name foo-vault

Laden Sie eine Datei hoch:

$ aws glacier upload-archive --account-id - --vault-name foo-vault --body foo.zip
 11
Author: dotancohen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2015-11-10 21:23:11

Github.com/numblr/glaciertools stellt Bash-Skripte bereit, die den Mulitpart-Upload einer großen Datei mit dem offiziellen AWS-Befehlszeilenclient (AWS CLI) orchestrieren. Dies ist nützlich, wenn Ihre Daten das 4 GB-Limit für das Hochladen eines Archivs in einem einzigen Vorgang mit der AWS CLI überschreiten.

Um die Skripte zu verwenden, müssen Sie die AWS CLI installiert und eingerichtet haben, für die Python erforderlich ist. Der Link enthält zusätzliche Informationen zum Setup.

Dann bist du kann ein Archiv Ihres Backups erstellen und es mit{[6] in einen Tresor auf Glacier hochladen]}

> ./glacierupload -v myvault /path/to/my/archive

Detailliertere Informationen finden Sie in der Dokumentation dort.

 5
Author: user1587520,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2018-09-04 08:27:15

Versuchen vsespb/mt-aws-Gletscher – Perl Multithread-multipart-sync zu Amazon Glacier mit einfachen bereitstellen von Anweisungen für CentOS.

 4
Author: vsespb,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-03-20 18:01:07

Es gibt eine andere Software namens glacier-cli (https://github.com/basak/glacier-cli) aber in Python scheint das ziemlich gut zu funktionieren.

 3
Author: Karl Forner,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2013-02-12 12:52:18