EC2 で s3fs を動かす方法
下記の環境で s3fs を動かそうとしたのですが、すんなり行かず、ググっても参考情報が少なかったので作業ログを残します。
ami-ccf615a5 alestic/ubuntu-9.04-jaunty-base-20091011.manifest.xml Linux 2.6.21.7-2.fc8xen-ec2-v1.0 #2 SMP Tue Sep 1 10:04:29 EDT 2009 i686 GNU/Linux
s3fs のインストール
apt-get install libfuse-dev libcurl4-openssl-dev cd /tmp wget -O - http://s3fs.googlecode.com/files/s3fs-r177-source.tar.gz | tar xvfz - cd s3fs make install
いざ、マウントしようとすると下記のエラー
fuse: device not found, try 'modprobe fuse' first
言われた通りに modprobe しても下記のエラー
FATAL: Module fuse not found.
ググって見ると、Google グループにソリューションを発見しました。どうやら、カーネルモジュールの fuse.ko が無いため起こるエラーの模様です。しかし、ここで紹介されているバイナリは今回の環境では使えませんので、他から用意します。
AMI-Tools など、AWS 用のツール郡は、http://s3.amazonaws.com/ec2-downloads/ にありますので、使用インスタンスのカーネルのバージョンと合致する、http://s3.amazonaws.com/ec2-downloads/ec2-modules-2.6.21.7-2.fc8xen-ec2-v1.0.tgz を取得して展開してみます。
curl -O http://s3.amazonaws.com/ec2-downloads/ec2-modules-2.6.21.7-2.fc8xen-ec2-v1.0.tgz tar xfz ec2-modules-2.6.21.7-2.fc8xen-ec2-v1.0.tgz cp -a lib/modules/2.6.21.7-2.fc8xen-ec2-v1.0/kernel/fs/fuse /lib/modules/2.6.21.7-2.fc8xen-ec2-v1.0/kernel/fs/ modprobe fuse
今度は問題なく、s3fs が動きました。
OS 再起動後も手動で modprobe しなくても済むように、/etc/modules に追記しておきます。
echo fuse >> /etc/modules
id:kdaiba 氏が、AMI からのインスタンス起動の挙動を カーネル周りの挙動も含め詳しく解説して下さっていますので、それがとても参考になりました。ありがとうございます。