14
Help us understand the problem. What are the problem?

More than 5 years have passed since last update.

posted at

updated at

Organization

複数アカウントでs3cmdを使う方法

結論

  1. 設定ファイルを複数作成します。

    .s3cfg-account1
    .s3cfg-account2
    
  2. エイリアスを設定します。

    ~/.bashrc
     alias s31='s3cmd -c ~/.s3cfg-account1'
     alias s32='s3cmd -c ~/.s3cfg-account2'
    

    設定は各自利用している設定ファイルを変更して下さい。zshの人は~/.zshrc等。

  3. 後は設定したエイリアスで複数アカウントのs3へアクセスしましょう。

    $ s31 ls
    2014-12-09 11:05  s3://bucket1
    2015-02-03 12:16  s3://bucket2
    $ s32 ls
    2015-01-07 10:00  s3://bucket3
    2014-11-25 09:04  s3://bucket4
    

詳細

S3cmdとは主にAmazon S3をCLIから利用するのに便利なコマンドラインツールです。

$ s3cmd ls

とするとs3のbucket一覧が見れたりします。

$ s3cmd --configure

でAWSのAccessKeyとSecretAccessKeyを設定すれば~/.s3cfgが生成されます。

どのアカウントか分かるようにリネームして必要なだけ.s3cfgファイルを作成すれば良いです。

Tips

s3cmd --configureで以下のエラーが出る時の対策

ERROR: Test failed: GPG program not found
  1. GPGをインストール

    $ brew install gpg
    
  2. GPGのpathを取得

    $ which gpg
    /usr/local/bin/gpg
    
  3. GPGのpathをs3cmd --configureで入力

    $ s3cmd --configure
    Path to GPG program [None]: /usr/local/bin/gpg
    
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
14
Help us understand the problem. What are the problem?