Eu preciso de uma maneira simples de fazer backup de arquivos no Amazon Glacier a partir da linha de comando?

16

Eu tenho um servidor CentOS on-line com um diretório de arquivos cPmove que eu preciso fazer backup no Amazon Glacier. Eu só tenho acesso à linha de comando, sem GUI.

Eu preciso de um cliente de linha de comando que seja relativamente fácil de usar para fazer upload dos arquivos. Por exemplo, usei o dropbox_uploader.sh antes ( link ) com este script simples:

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

Eu vi este: link mas eu não tenho o java instalado no servidor e estou um pouco hesitante em instalá-lo, devido a todos os problemas de segurança ultimamente.

Eu tenho python e 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]#

Existe um cliente ruby (preferível) ou python ou outra linguagem (menos preferível) amazon glacier?)

    
por Ivan 04.02.2013 / 19:12

4 respostas

8

A biblioteca canônica para fazer interface com o AWS via Python é Boto . Embora seja destinado a ser usado como uma biblioteca em um script Python, é simples o suficiente para ser usado independentemente. Você pode dar uma olhada na documentação detalhada e esta página tem uma visão geral de como usar o Boto, mas aqui estão as partes importantes:

Coloque suas credenciais da AWS em ~/.boto :

[Credentials]
aws_access_key_id = FOO
aws_secret_access_key = BAR

Relacione seus cofres:

$ glacier vaults

Envie um arquivo:

$ glacier upload foo-vault foo.zip

Relacione os trabalhos pendentes em um determinado cofre:

$ glacier jobs foo-vault

Apesar de não ser mais fácil de usar do que o Boto, a interface do Amazon Glacier CLI é baseada no Boto e é de fato projetado para usuários finais. Aqui é um tutorial para ele.

Por fim, o AWS-CLI oficial é bastante fácil de usar . Coloque as credenciais em ~/.aws/credentials e simplesmente use estes comandos:

Crie um cofre:

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

Enviar um arquivo:

$ aws glacier upload-archive --account-id - --vault-name foo-vault --body foo.zip
    
por 10.11.2015 / 21:26
4

Experimente o vsespb / mt-aws-glacier - Sincronização multipart multithread do Perl para o Amazon Glacier com instruções fáceis de implementação para CentOS.

    
por 20.03.2013 / 18:41
3

Existe outro software também chamado glacier-cli ( link ) mas em python parece funcionar muito bem.

    
por 12.02.2013 / 13:52
1

github.com/numblr/glaciertools fornece scripts bash que orquestram o upload mulitpart de um arquivo grande com a linha de comando oficial da AWS cliente ( AWS CLI ). Isso é útil quando seus dados excedem o limite de 4 GB para o upload de um arquivo em uma única operação com o AWS CLI.

Para usar os scripts, você precisa ter o AWS CLI instalado e configurado, o que requer python. O link contém informações adicionais sobre a configuração.

Depois, você pode criar um arquivo do seu backup e enviá-lo para um cofre na geleira com

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

Informações mais detalhadas estão contidas na documentação .

    
por 21.08.2018 / 11:07