Komut satırından Amazon buzul dosyaları yedeklemek için basit bir yol gerekir?


19

Amazon Glacier'a yedeklemem gereken cPmove dosyalarının bir diziniyle çevrimiçi bir CentOS sunucum var. Yalnızca komut satırı erişimim var, GUI yok.

Dosyaları yüklemek için nispeten kolay bir komut satırı istemcisine ihtiyacım var. Örneğin , bu basit bash betiği ile daha önce ( https://github.com/andreafabrizi/Dropbox-Uploader ) dropbox_uploader.sh kullandım :

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

Bunu gördüm: https://github.com/carlossg/glacier-cli ama sunucuda java yüklü değil ve son zamanlarda tüm güvenlik sorunları nedeniyle, yüklemek için biraz hesistant am.

Python ve yakut var:

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]#

Bir yakut (tercih edilir) veya python veya başka bir dil (daha az tercih edilir) amazon buzulu komut satırı istemcisi var mı?)


Üzgünüm, Glacier'a derinlemesine bakmamıştım, normal ssh erişimine sahip olduğunu düşündüm. Yanıt silindi.
terdon

O zamandan beri Ruby'nin sis gemiyle s3'e yükleyebileceğimi öğrendim. Daha sonra, s3'ün aws yönetim konsolundan bir süre sonu politikası belirleyebilir ve dosyaları buzulda arşivleyebilirim. İşler. Ayrıca, sis doğrudan Glacier'ı destekliyor ancak henüz bakmadım. Merak eden herkes için, burada s3'e
Ivan

Yanıtlar:


9

Python aracılığıyla AWS ile arayüz oluşturmak için kanonik kütüphane Boto'dur . Her ne kadar bir Python betiğinde kütüphane olarak kullanılmak üzere tasarlanmış olsa da, bağımsız olarak kullanmak için yeterince basittir. Hassas belgelere göz atabilirsiniz ve bu sayfada Boto'nun nasıl kullanılacağına dair genel bir bakış bulunmaktadır, ancak önemli kısımlar şunlardır:

AWS kimlik bilgilerinizi girin ~/.boto:

[Credentials]
aws_access_key_id = FOO
aws_secret_access_key = BAR

Kasalarınızı listeleyin:

$ glacier vaults

Bir dosya yükle:

$ glacier upload foo-vault foo.zip

Belirli bir kasadaki bekleyen işleri listeleyin:

$ glacier jobs foo-vault

Kullanımı gerçekten Boto'dan daha kolay olmasa da, Amazon Glacier CLI Arayüzü Boto'yu temel alıyor ve aslında son kullanıcılar için tasarlandı. İşte bunun için bir eğitim.

Son olarak resmi AWS-CLI'nin kullanımı oldukça kolaydır. Kimlik Put in ~/.aws/credentialsardından sadece bu komutları kullanabilirsiniz:

Bir kasa oluşturun:

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

Bir dosya yükle :

$ aws glacier upload-archive --account-id - --vault-name foo-vault --body foo.zip

1
komik olan şey, adımınızın docs.aws.amazon.com/cli/latest/userguide/…upload-archive
cryanbhu

Bu talimatlar yalnızca kasanız varsayılan olarak boto (us-east-1) içindeyse çalışır. Aksi takdirde, bölgeyi belirtmeniz gerekir. Örneğin kasanız CA'da ise, komut olmalıdır aws glacier vaults --region us-west-1.
foobarbecue



3

github.com/numblr/glaciertools , resmi AWS komut satırı istemcisi ( AWS CLI ) ile büyük bir dosyanın çok parçalı yüklemesini düzenleyen bash komut dosyaları sağlar . Bu, verilerinizin AWS CLI ile tek bir işlemle arşiv yüklemek için 4 GB sınırını aşması durumunda kullanışlıdır.

Komut dosyalarını kullanmak için, python gerektiren AWS CLI'nın kurulu ve kurulu olması gerekir. Bağlantı, kurulum hakkında ek bilgiler içerir.

Ardından yedeklemenizin bir arşivini oluşturabilir ve buzuldaki bir kasaya yükleyebilirsiniz.

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

Daha ayrıntılı bilgiler oradaki belgelerde bulunmaktadır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.