bash と curl だけで S3 の Tokyo リージョンにバケットを作る

cosmin/s3-bash がよさげだったのでこれを使う。

環境

ローカルに持ってくる

$ git clone https://github.com/cosmin/s3-bash.git
$ cd s3-bash

シークレットアクセスキーファイルを作る

$ echo -n "シークレットアクセスキー" > secret.txt

注意点:

s3-bash は実行時にこのファイルの内容が 40 文字かどうかをチェックする。

上記のコマンドで -n を忘れたり、エディタで編集してうっかり改行を入れたりすると以下のようなエラーメッセージが出る。

s3-put: We do not understand Amazon AWS 
secret keys which are not 40 bytes long. 
Have you included a carriage 
return or line feed by mistake 
at the end of the secret key file?

リージョンの指定

content.xml というファイルを以下の内容で作成する。

<CreateBucketConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
  <LocationConstraint>ap-northeast-1</LocationConstraint>
</CreateBucketConfiguration>

他のリージョンで作成する場合は ap-northeast-1 の部分を変更すればよい。

実行

$ ./s3-put -k アクセスキー -s secret.txt -T content.xml /バケット名