Amazon S3 をコマンドラインから操作する s3cmd
Amazon S3 に対する作業は Management Console や AWS SDK (PHP, Java, Ruby, .NET) で行うことができる。ただ、バックアップ処理やFTP っぽくファイルサーバー扱いするときはコマンドラインで使える s3cmd
が便利。
インストール
GPG
が必要なので一緒にインストールする。
brew install s3cmd gpg
S3 への接続設定
アクセスキーとシークレットキーをAWS コンソールからあらかじめ発行しておき、s3cmd --configure
を実行する
$ s3cmd --configure
Enter new values or accept defaults in brackets with Enter.
Refer to user manual for detailed description of all options.
Access key and Secret key are your identifiers for Amazon S3
Access Key: XXXXXX
Secret Key: XXXXXX
Encryption password is used to protect your files from reading
by unauthorized persons while in transfer to S3
Encryption password: XXXXXX
Path to GPG program [None]: /usr/local/bin/gpg
When using secure HTTPS protocol all communication with Amazon S3
servers is protected from 3rd party eavesdropping. This method is
slower than plain HTTP and can't be used if you're behind a proxy
Use HTTPS protocol [Yes]: Yes
New settings:
Access Key: XXXXXX
Secret Key: XXXXXX
Encryption password: XXXXXX
Path to GPG program: None
Use HTTPS protocol: True
HTTP Proxy server name:
HTTP Proxy server port: 0
Test access with supplied credentials? [Y/n] y
Please wait...
Success. Your access key and secret key worked fine :-)
Now verifying that encryption works...
Success. Encryption and decryption worked fine :-)
Save settings? [y/N] y
Configuration saved to '/Users/yulii/.s3cfg'
参考:GPG をインストールしていない時のエラー
Now verifying that encryption works...
ERROR: Test failed: GPG program not found
S3 の操作方法
s3cmd -h
で使えるコマンド一覧が見れる。
Middleman + S3 で静的Webページの管理
Middleman でビルド処理を行い、build/
ディレクトリを丸ごとアップロードする。
bundle exec middleman build
s3cmd put -r build/ s3://<bucket-name>/path/to/file
適宜シェルスクリプトにまとめて置くなどすると運用が楽。