S3FS是基于FUSE(用户空间的文件系统)挂载Amazon S3的桶的解决方案,我们可以用系统命令使用该硬盘驱动器就像是另一个硬盘系统。用s3fs安装的文件系统,我们可以简单地使用cp,mv 和 ls 基本的Unix命令类似于上运行本地连接的磁盘。 如果你访问S3桶,没有安装在系统中,使用s3cmd命令行实用程序来管理S3桶。 s3cmd还提供了用于数据的上传和下载,s3fs有更快的速度。在下一篇文章,在
Linux系统和
Windows系统 中安装s3cmd 。
本文将帮助你从源代码编译安装
S3FS和
Fuse ,并且还可以帮助你,在你的CentOS/RHEL和Ubuntu系统安装
S3桶 。
第1步:删除现有的软件包
首先检查您是否在系统上安装任何现有s3fs或Fuse包。如果安装了它已经将其删除,以避免任何文件冲突。
CentOS/RHEL Users:
# yum remove fuse fuse-s3fs
Ubuntu Users:
$ sudo apt-get remove fuse
第2步:安装所需的程序包
删除以上包后。首先,我们将安装Fuse,s3cmd所有依赖。安装所需的软件包系统使用下面的命令。
CentOS/RHEL Users:
# yum install gcc libstdc++-devel gcc-c++ curl-devel libxml2-devel openssl-devel mailcap
Ubuntu Users:
$ sudo apt-get install build-essential libcurl4-openssl-dev libxml2-dev mime-support
第3步:下载并编译最新Fuse
下载并编译
最新版本的fuse源代码。在这篇文章中,我们使用的Fuse版本2.9.3。下面的命令集将编译Fuse,在内核中添加Fuse模块。
# cd /usr/src/
# wget http://downloads.sourceforge.net/project/fuse/fuse-2.X/2.9.3/fuse-2.9.3.tar.gz
# tar xzf fuse-2.9.3.tar.gz
# cd fuse-2.9.3
# ./configure --prefix=/usr/local
# make && make install
# export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
# ldconfig
# modprobe fuse
第4步:下载并编译最新S3FS
下载并编译
最新版本的s3fs源代码。在这篇文章中,我们使用s3fs版本1.74。下载后解压压缩文件,并在系统编译源代码。
# cd /usr/src/
# wget https://s3fs.googlecode.com/files/s3fs-1.74.tar.gz
# tar xzf s3fs-1.74.tar.gz
# cd s3fs-1.74
# ./configure --prefix=/usr/local
# make && make install
第5步:设置访问密钥
也为了配置s3fs我们就需要访问密钥和你的S3 Amazon帐户的密钥。从
这里获得这些安全密钥。
# echo AWS_ACCESS_KEY_ID:AWS_SECRET_ACCESS_KEY > ~/.passwd-s3fs
# chmod 600 ~/.passwd-s3fs
注:更改
AWS_ACCESS_KEY_ID和
AWS_SECRET_ACCESS_KEY与您的实际Key值。
第6步:安装S3桶
最后,使用下列命令集挂载你的S3桶。在这个例子中,我们使用S3存储名称
mydbbackup和挂载点为
/s3mnt。
# mkdir /tmp/cache
# mkdir /s3mnt
# chmod 777 /tmp/cache /s3mnt
# s3fs -o use_cache=/tmp/cache mydbbackup /s3mnt