2011-01-08 10 views
3

私はUbuntu 10.04でs3qlを試していました。これを使ってAmazon S3バケットをマウントしました。しかし、私は本当にそれを自動的にマウントしたいと思います。誰もそれを行う方法を知っていますか?s3qlファイルシステムを作成して起動時に自動的にマウントする方法は?


ソリューション:私は最終的にシステムのブート時に自動的にS3バケットをマウントすることができるよs3qlのNikratioから支援する

感謝。あなたは間違いなくmanualを見たいと思うでしょうが、ここでそれを行う方法の基礎があります!

最初の手順は、authinfoファイルを作成することです。このファイルは、使用するユーザーのホームディレクトリ内の.s3qlディレクトリに置く必要があります。 authinfoファイルには、s3qlがプロンプトを表示せずにバケットをマウントできるようにするためのログイン情報が含まれています。以下は、あなたのauthinfoファイルがどのように見えるかの例です。最初の行にはAmazon Security Credentialsが含まれています。 2番目のバケットにはバケットの場所とパスワードが含まれています。必要に応じて複数のバケット行をこのファイルに追加できますが、この例では1つだけ使用しています。この時点で、バケットのパスワードは何でもかまいません。

backend s3 machine any login ASDFGHJKL password ZXCVBNM 
storage-url s3://mybucket password mypassword 

バケット名は一意である必要があります。 2人のユーザーが同じバケット名を持つことはできないため、Amazon Web Servicesにログインし、利用可能なものが見つかるまで別の名前を試してみることをお勧めします。一度見つけたら、s3qlはs3qlファイルシステムを作成するときにs3qlがそれを再作成するため、削除する必要があります。バケットが既に存在する場合は、エラーが発生します。

コマンドを使用して、ファイルシステムを作成するには:

mkfs.s3ql s3://mybucket 

それはあなたの暗号化パスワードの入力を求めます。これは、authinfoファイルのバケットパスワードと同じにする必要があります。もちろん、

mount.s3ql s3://mybucket /mnt/s3/bucket 

あなたのバケット名をとポイントが異なりますマウント:

は、今すぐあなたのファイルシステムが作成されていることを、次のコマンドを使用して、それをマウントすることができます。

ここで、起動時にこのバケットを自動的にマウントしたい場合は、起動スクリプトを/ etc/initに追加する必要があります。幸いにも、s3qlにはs3ql.confがパッケージ化されています。

root以外のユーザーがマウントされたバケットにアクセスできるように、mount.s3qlコマンドに "--allow-other"を追加しました。

このスクリプトを追加した後、理論上は再起動してバケットを自動的にマウントできるはずですが、これは問題に遭遇したことです。鉱山は取り付けられていませんでした。

私の問題は、upstartがrootとしてスクリプトを実行していたために発生しましたが、私は別のユーザーとしてファイルシステムを作成しました。一旦私が/ rootとしてログインしていたユーザーのホームディレクトリから.s3qlディレクトリをコピーしたら、問題は解決されました。

私はこれが他の誰かを助けてくれることを願っています。私はマウントされたS3バケツを長く使っていませんが、最初のテストがどのようになったのかに感心しています。

また、この回答は解決策が見つかった約1週間後に書かれました。私はすべてをカバーしていると思うが、私が一歩足りなかったことが分かったら、私に知らせて、それを追加する。また、manualも読んでみてください。本当に価値があるのは、s3qlを使用する場合です。

+0

stackexchangeの2つの異なるフォーラムで同じ質問と回答?? https://askubuntu.com/questions/20574 これは良い考えではないと思います。 –

答えて

1

Nikratioの助けを借りて、私はついにS3バケットを起動時に自動的にマウントできます。私は解決策で私の質問を更新しました。