それで、無料のオンラインストレージを探してみたのですが、結論から言うと、どれもこれも帯に短し襷に流しということが判りました。私の要件としては、
- 最大ストレージ容量が大きい
- 1ファイルにサイズ制限がないこと(500MB以上)
- 特定の環境に縛られず、アクセシビリティが高いこと
- 期間限定保存は×
そんなこんなで、結局有償になっちゃうのであればおんなじだろということで、Amazon S3 (Simple Storage Service)をオンラインストレージとして使うことにしました。
ツールとしては、Windows用からLinux/UNIX用まで、色々出ているようですが、まずはAmazon AWSのリソースセンターで紹介されているawsを使ってみることにします。
インストールは簡単で、まずは~/.awssecretファイルにAWSのアクセス鍵と秘密鍵を一行づつ書いておきます。
1B5JYHP24PS13GWKFGAG2次に、awsサイトからawsファイルをダウンロードします。ダウンロードしたファイルを適切なディレクトリに置き、
2GAPQFG3+1wxc4sj52bFgqc0AQxj21FMkipjfz
% perl aws --install
を実行すると、カレントディレクトリ配下(一般ユーザの場合)、もしくは/usr/bin/(rootの場合)にインストールが行われます。私は実行形式は ~/bin/に配置したかったので、~/bin/にawsを置いてインストールしました。
インストールが終了すると、いくつかのコマンド(ec2XXXとかs3XXXという名前になります)が使えるようになります。
次にS3/awsの使い方ですが、
- バケットの作成
S3には、バケットという概念があって、簡単にいうとストレージ領域の区分けのようなもので、トップディレクトリをイメージすると良いかもしれません。
すなわち、あるファイルXは、バケットAの中にある、といった意配置イメージとなります。
aws では、
% s3mkdir バケット名
でバケットを作成することが出来ます。
一点注意が必要なのはバケット名がシステム全体でひとつの名前空間を構成しており、ユーザ全体で共有されるということです。既に取られてしまったキーワードは使えません(backupとか一般的な名詞は使えないようです)。 - ファイルのput/get
バケットを作成したら、そこにアイテム(ファイル)をputしたりgetすることが出来ます。
% s3put BUCKET/ file
% s3get BUCKET/file
なお、putに際して、55MBのファイルで約3分、550MBのファイルで約23分でしたから、大体300Kbps出ている勘定になりますが、これは回線速度に拠るところが大きいでしょう。 - ファイルの一覧
s3lsコマンドを使います。
引数にバケットを指定するとそのバケット内のファイル一覧が、指定をしないと自分の持っているバケットの一覧が得られます。 - ファイルのコピー
s3cpコマンドを使用します。引数の方向が標準的なUNIXとは異なり右から左なので注意してください。
% s3copy bucket2/ bucket1/xxx
(bucket1のアイテムxxxをbucket2へコピーする)
なお、S3内のストレージは重複排除されてカウントされているな気がします(気のせいかもしれません)。 - アイテムの削除、バケットの削除
s3rm、s3rmdirコマンドでアイテム、バケットを削除します。
0 件のコメント:
コメントを投稿