Articles Comments

ちからの備忘録的日記 » tips » s3curl で簡単に Amazon S3 にファイルを保管する

s3curl で簡単に Amazon S3 にファイルを保管する




Amazon S3 にファイル保管するのをバッチ処理で実施しないといけなくなったので、Amazon が提供している s3curl というのを試してみました。

ツールのダウンロード

s3curl ですが、正式名は Amazon S3 Authentication Tool for Curl です。下のリンクのページの download ボタンをクリックすることでダウンロードできます。

» Amazon S3 Authentication Tool for Curl

前提環境

  • Perl 5.6.0以上がインストールされていること
  • curl がインストールされていること

※ なお、Perl については、以下のモジュールが使える必要があります。

Digest::HMAC_SHA1
FindBin
MIME::Base64
Getopt::Long

利用方法

設定ファイル

ホームディレクトリの .s3curl ファイルを作成。以下は、READMEに記載されているサンプルの内容。

%awsSecretAccessKeys = (
    # personal account
    personal => {
        id => '1ME55KNV6SBTR7EXG0R2',
        key => 'zyMrlZUKeG9UcYpwzlPko/+Ciu0K2co0duRM3fhi',
    },

   # corporate account
   company => {
        id => '1ATXQ3HHA59CYF1CVS02',
        key => 'WQY4SrSS95pJUT95V6zWea01gBKBCL6PI0cdxeH8',
    },
);

id: AWS Access Key
key: AWS Secret Key

実行方法

■ ダウンロード(バケット名:sample-bucket, オブジェクト名:sample)

ファイルの内容は、標準出力にはかれますので、ファイルに落としたい場合は、リダイレクトする必要があります。

$ ./s3curl.pl --id=personal -- http://s3.amazonaws.com/sample-bucket/sample > sample

■ アップロード(バケット名:sample-bucket, オブジェクト名:sample, アップロードファイル: upload-sample)

ファイルの内容は、標準出力にはかれますので、ファイルに落としたい場合は、リダイレクトする必要があります。

$ ./s3curl.pl --id=personal --put=upload-sample -- http://s3.amazonaws.com/sample-bucket/sample

■ 削除(バケット名:sample-bucket, オブジェクト名:sample)

$ ./s3curl.pl --id=personal --delete -- http://s3.amazonaws.com/sample-bucket/sample

■ バケット作成 (バケット名:sample-bucket)

$ ./s3curl.pl --id=personal --createBucket -- http://s3.amazonaws.com/sample-bucket

■ オブジェクト一覧表示 (バケット名:sample-bucket)

$ ./s3curl.pl --id=personal -- http://s3.amazonaws.com/sample-bucket

他にもコピー機能などいろいろな方法がREADMEに記載されていますので参考にしてみてください。

利用してみての感想

  • 2GBのファイルの保存に何度かチャレンジするも、エラー発生して保存断念。大きいファイルの保存には向いていないのかも
  • 上り 300Kbps, 下り 850Kbps 程度
  • 予想通りに遅い感じ
Related Posts Plugin for WordPress, Blogger...

Filed under: tips · Tags: ,

Leave a Reply

*