--configure時の入力の詳細と1.5.0を試して動作しなかった旨を追記しました
■環境
CentOS 5.9
Python 2.4
s3cmd 1.5.0-alpha1
Python 2.4
s3cmd 1.5.0-alpha1
■インストール
cd /var/tmp
wget http://sourceforge.net/projects/s3tools/files/s3cmd/1.5.0-alpha1/s3cmd-1.5.0-alpha1.tar.gz
tar zxvf s3cmd-1.5.0-alpha1.tar.gz
cd s3cmd-1.5.0-alpha1
python setup.py install
s3cmd --configure
AccessKeyとSecretKeyはマネージメントコンソールからあらかじめ取得しておきます
それ以外にもプロキシやgpgコマンドへのパス、接続テストができますが基本は何も設定しなくて大丈夫です
Test access with supplied credentials?
の回答には「n」を指定して
Save settings?
の回答には「y」を指定すればOKです
Test access with supplied credentials? は接続テストをしていてここで失敗すると.s3cfgという設定ファイルが作成されないのでテストはスルーします
vim /root/.s3cfg
が存在することを確認する
また、ニフティクラウドで使用する場合にはURLのパラメータの部分を以下のように変更する
wget http://sourceforge.net/projects/s3tools/files/s3cmd/1.5.0-alpha1/s3cmd-1.5.0-alpha1.tar.gz
tar zxvf s3cmd-1.5.0-alpha1.tar.gz
cd s3cmd-1.5.0-alpha1
python setup.py install
s3cmd --configure
AccessKeyとSecretKeyはマネージメントコンソールからあらかじめ取得しておきます
それ以外にもプロキシやgpgコマンドへのパス、接続テストができますが基本は何も設定しなくて大丈夫です
Test access with supplied credentials?
の回答には「n」を指定して
Save settings?
の回答には「y」を指定すればOKです
Test access with supplied credentials? は接続テストをしていてここで失敗すると.s3cfgという設定ファイルが作成されないのでテストはスルーします
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 [xxxxxxxxxxxxxxxx]: Secret Key [xxxxxxxxxxxxxxxx]: Encryption password is used to protect your files from reading by unauthorized persons while in transfer to S3 Encryption password: Path to GPG program [/usr/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 [No]: No On some networks all internet access must go through a HTTP proxy. Try setting it here if you can't conect to S3 directly HTTP Proxy server name: New settings: Access Key: xxxxxxxxxxxxxxxx Secret Key: xxxxxxxxxxxxxxxx Encryption password: Path to GPG program: /usr/bin/gpg Use HTTPS protocol: False HTTP Proxy server name: HTTP Proxy server port: 0 Test access with supplied credentials? [Y/n] n Save settings? [y/N] y Configuration saved to '/root/.s3cfg'
vim /root/.s3cfg
が存在することを確認する
また、ニフティクラウドで使用する場合にはURLのパラメータの部分を以下のように変更する
host_base = ncss.nifty.com host_bucket = %(bucket)s.ncss.nifty.com
■動作確認
s3cmd ls
バケットの一覧が表示されることを確認する
s3cmd ls s3://[bucket_name]
指定したバケット配下のオブジェクト一覧が表示される
s3cmd du s3://[bucket_name]
指定したバケットのデータ容量を取得することができる(単位はバイト)
あとは--helpで実際にできるコマンドを確認できます
バケットの一覧が表示されることを確認する
s3cmd ls s3://[bucket_name]
指定したバケット配下のオブジェクト一覧が表示される
s3cmd du s3://[bucket_name]
指定したバケットのデータ容量を取得することができる(単位はバイト)
あとは--helpで実際にできるコマンドを確認できます
■注意事項
pythonは2.6以上じゃないとうまくインストールできない可能性があります(2.4でinstallしたらインストール時にエラーメッセージが出ました、がインストール自体は成功していました))
yumリポジトリも用意されているのでyumインストールもできますが、バージョンが1.0.0と古いバージョンがインストールされます
設定ファイルの.s3cfgは実行しているユーザのホームディレクトリ配下を見に行くのroot以外でもs3cfgを実行したい場合には、該当のユーザにsuして再度--configureする必要があります
もしくはrootで作成した.s3cfgファイルを他のユーザのホームディレクトリ配下にコピーして権限を変更しても大丈夫です
1.5.0という正式版がリリースされていたのでこれを使ってみたらうまく動きませんでした
ERROR: S3 error: The provided security credentials are not valid.
というエラーが出たうまく動作しません
ニフティクラウドに対して実施していたのでS3に対しては普通に動作すると思います
yumリポジトリも用意されているのでyumインストールもできますが、バージョンが1.0.0と古いバージョンがインストールされます
設定ファイルの.s3cfgは実行しているユーザのホームディレクトリ配下を見に行くのroot以外でもs3cfgを実行したい場合には、該当のユーザにsuして再度--configureする必要があります
もしくはrootで作成した.s3cfgファイルを他のユーザのホームディレクトリ配下にコピーして権限を変更しても大丈夫です
1.5.0という正式版がリリースされていたのでこれを使ってみたらうまく動きませんでした
ERROR: S3 error: The provided security credentials are not valid.
というエラーが出たうまく動作しません
ニフティクラウドに対して実施していたのでS3に対しては普通に動作すると思います
■参考サイト
> 1.5.0という正式版がリリースされていたのでこれを使ってみたらうまく動きませんでした
返信削除> ERROR: S3 error: The provided security credentials are not valid.
> というエラーが出たうまく動作しません
下記で 1.5 系でも動くようになるみたいです。
$ vi ~/.s3cfg
## s3cmd 1.5 系はデフォルトで signature v4 を使うようなので下記を追加
signature_v2 = True