2013年2月13日水曜日

続・Cloudnお試ししてます・Windows Ruby編

バックアップをとるには、コマンドラインで実行できた方が便利なので、
それ用のツールを探してみたところ、

S3cmd (http://s3tools.org/s3cmd)

というものが有りました。

結構有名なツールのようでして、ネットに情報がゴロゴロしてますので、いくつかのサイトをご紹介。

http://ameblo.jp/minniexmky/entry-11244836973.html
http://blog.cloudpack.jp/2011/07/aws-news-s3-s3cmd.html
https://github.com/mechamogera/MyTips/wiki/s3cmd%E3%81%A8s3sync%E3%82%92%E3%81%95%E3%82%8F%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8B

Linux系の説明が多いですが、Windowsでもきっちり動いてくれました。

Windowsでの使用のポイントとしては、

1. ActiveRubyをインストール
2. RubyコンソールからS3cmdをインストール
3. S3cmd を実行

と言った感じです。 書くのは簡単ですが、結構苦戦しました。

ActiveRubyは、オフィシャルから取得して来ました。
普通にインストールしてできましたので、あまり困ることはないかと。

次に、s3cmdを取得してきます。
s3syncの中に一緒に入っているようなので、そのまま持ってきます。

https://github.com/ms4720/s3sync


rubyから実行すると、

こんなエラーが出ます。

対処方は、以下のサイトにありました。

https://github.com/mechamogera/MyTips/wiki/s3cmd%E3%81%A8s3sync%E3%82%92%E3%81%95%E3%82%8F%E3%81%A3%E3%81%A6%E3%81%BF%E3%82%8B

同じフォルダに入っている、HTTPStreaming.rbを編集して、
require 'delegate'
を追加すれば良いようです。

引き続き、s3config.ymlを用意します。
書き方にコツがいりますので、注意して下さい。

同梱してあるサンプルを修正すれば間違いないですが、
区切り文字 (:) あとにスペースがないとエラーになりますので、注意です。

s3cmdを実行したら、



環境設定が終わってないと怒られます。

これについては、s3config.ymlが置いてあるパスに対して、

set S3CONF= [PATH]
を実行すれば大丈夫です。


これで大丈夫のはずなのですが、うまくいかないので、力尽きました。
あとはコマンドの都合のような気がするのですが、

403 Forbittenが発生してコマンドが受け付けられません。

もしかしたら、SSL証明書が必要なのかも知れないですが、
Python版でうまく行った人がいるようなので、そちらで改めてチャレンジしてみようと思います。



0 件のコメント:

コメントを投稿