linux系统安装s3fs,ubuntu下S3FS得安装与使用

因为“阔研”得需要,最近需要使用S3FS搭建一个云存储平台,网上这方面的资料还是蛮多,但感觉还是有点杂乱,希望自己能够整理一下,这样的话在以后再次搭建这个平台的时候不会出现这样或者那样的问题。S3FS搭建平台资料很多,每个人有自己的看法以及思路,下面是按照我自己的习惯以及出现的问题(解决方案)来进行搭建的(安装环境在ubuntu12.04LTS)。

1.相关依赖库的安装

apt-get install gcc

apt-get install build-essential

apt-get install libfuse-dev

apt-get install fuse-utils

apt-get install libcurl4-openssl-dev

apt-get install libxml2-dev

apt-get install mime-support

注: 如果你在使用ubuntu时,没有进行update的话,可能会出现点问题,不过很容易解决,只要sudo apt-get update,然后在进行安装就可以了

2.    安装fuse(S3FS是在FUSE上进行编译的,所以有必要在安装之前安装fuse)

s3fs的编译需要fuse版本在2.8.4以上,如果系统默认安装的fuse版本低于2.8.4,则需要另外编译安装fuse2.8.4.在这里我是从官网上下载了最新的版本fuse2.9.2

cd fuse-2.9.2/

tar xzf fuse_2.9.2tar.gz

sudo ./configure

sudo make

sudo make install

sudo export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/lib64/pkgconfig/(这里可能出现export:没有这个命令的问题,这个时候可以去掉sudo,然后在重新执行这条命令就可以了)

sudo   ldconfig

sudo   modprobe fuse

sudo   pkg-config --modversion fuse (confirm that 2.9.2 is the version displayed)

3.安装S3FS

在这一步我使用是已经下载并且进行相对应功能改变的S3FS。

tar xvzf s3fs-1.61.tar.gz

cd s3fs-1.61/

sudo ./configure --prefix=/usr

sudo make

sudo make install

注:可能出现sudo ./configure:command not found这一个错误。这个问题主要是./configure没有执行权限照成的。可以通过chmod +x configure来进行解决

为了测试一下是否安装成功,可以在命令行下输入s3fs,如果出现:s3fs:missing BUCKET argument   Usage:S3fs BUCKET:[PATH] MOUNTPOINT [OPTION]说明安装成功。

4.S3FS使用

1.如何使用S3FS挂载S3:sudo vim /etc/passwd-s3fs,然后在里面输入输入[accessKeyId]:[secretAccessKey]键值对(这个也就是我们所说的用户名以及密码的配置文件,不过是ID以及Key)。

2.接下来就是相关操作

sudo chmod 640 /etc/passwd-s3fs

sudo mkdir  /mnt/s3 (服务器挂载点)

3.s3fs  [your-s3-bucket-name] /mnt/s3 -o use_cache=/tmp

对上面的命令进行分解,[your-s3-bucket-name]是在amazon上面的目录,/mnt/s3是本电脑/服务器的目录 use_cache=/tmp是缓冲区

卸载:fusermount -u  /mnt/s3

如果出现:s3fs: could not determine how to establish security credentials这样的问题,那么就需要把挂载命令换成:

s3fs  [your-s3-bucket-name]  /mnt/s3 -o use_cache=/tmp

-o allow_other(最好在root权限下,不然的话可能会出现s3fs: unable to access MOUNTPOINT use_cache=/tmp: No such file or directory)

4.S3fs得调试功能:

首先s3fs -f  [your-s3-bucket-name]  /mnt/s3(挂载点) -o use_cache=/tmp

然后:保证这个终端不关,开启另一个终端,进入挂载点进行操作,这样的话就可以在前面那个终端看到相关得调试信息

5. S3fs使用botan加密算法对上传的数据进行加密,需要使用到的加密库为botan。可以再软件中心搜索libbotan以及libbotanxx-dev进行安装

6.在centos5.6 i386以及ubuntu12.04 i386在运行s3fs的时候可能会出现问题,出现ACCESS KEY environment variable的问题,对于这个问题,可以先使用whereis s3fs获取s3fs的安装路径,比方说出现/usr/bin/s3fs  /usr/local/bin/s3fs....这个时候应该使用/usr/bin/s3fs代替s3fs进行操作。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Linux系统安装s3fs,您可以按照以下步骤进行操作: 1. 首先,确保您的系统已经安装了必要的依赖项。常见的依赖项包括gcc、libcurl、libxml2、libssl-dev等。您可以使用包管理器来安装这些依赖项,例如在Ubuntu使用apt-get命令: ``` sudo apt-get update sudo apt-get install build-essential libcurl4-openssl-dev libxml2-dev libssl-dev ``` 2. 接下来,您需要从GitHub上下载s3fs的源代码。您可以使用git命令进行下载: ``` git clone https://github.com/s3fs-fuse/s3fs-fuse.git ``` 3. 进入下载的源代码目录: ``` cd s3fs-fuse ``` 4. 现在,您需要编译和安装s3fs。执行以下命令进行编译和安装: ``` ./autogen.sh ./configure make sudo make install ``` 5. 安装完成后,您需要创建一个存储S3凭证的文件。创建一个文件,例如`~/.passwd-s3fs`,并将您的S3凭证填入其中。文件格式为`accessKeyId:secretAccessKey`,一行一个凭证。 6. 设置文件权限以确保只有您自己可以访问该文件: ``` chmod 600 ~/.passwd-s3fs ``` 7. 现在,您可以使用s3fs来挂载S3 Bucket到本地分区。首先,创建一个用于挂载的目录: ``` mkdir ~/s3-mount ``` 8. 使用s3fs命令进行挂载。命令格式如下: ``` s3fs bucket-name ~/s3-mount -o passwd_file=~/.passwd-s3fs -o url=https://s3.amazonaws.com -o use_path_request_style ``` 其中,`bucket-name`是您要挂载的S3 Bucket的名称,`~/s3-mount`是您要挂载到的本地目录。 9. 挂载成功后,您就可以在`~/s3-mount`目录下访问和操作S3 Bucket中的文件了。 这就是在Linux系统安装s3fs的基本步骤。希望对您有帮助!如有任何问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值