当前位置: 首页 > 工具软件 > ossfs > 使用案例 >

Debian 9 + aliyun ossfs 源码安装记录

束志业
2023-12-01

用于记录自己服务器的ossfs的安装过程,方便日后查阅。

官方给出了两个系统,一个是ubuntu,一个是centOS,可能debian并不是一个主流系统吧?(Excuse me???)反正只能源码安装了,没想到出奇地顺利。

首先贴上ossfs的gayhub地址:在这里。里面的ReadMe就有很详细的说明。简单译一下。

安装依赖库

sudo apt-get install automake autotools-dev g++ git libcurl4-gnutls-dev \
libfuse-dev libssl-dev libxml2-dev make pkg-config

源码安装ossfs

git clone https://github.com/aliyun/ossfs.git
cd ossfs
./autogen.sh
./configure
make
sudo make install

真的就是这么简单,就成功了!

配置

安装过程到这里就结束了,后面的配置过程网上有的是,我仅按照我自己的需求作一些记录。

添加bucket仓库

sudo echo <bucket>:<access key>:<secret key> > /etc/passwd-ossfs
# 即
sudo echo xxx:asldkjflkjeog:daslkhgdohga > /etc/passwd-ossfs
sudo chmod 640 /etc/passwd-ossfs

挂载

按照教程运行如下命令:

ossfs [bucket name]:[path in pucket] [path in local device]
# 也就是
ossfs myBucket:/ ./ossfs -ourl=http://oss-cn-shanghai.aliyuncs.com

报错:

ossfs: could not determine how to establish security credentials.

这就有点难受了。

解决方案在s3fs的github上面找到了,就是把passwd-ossfs的用户和组设置为需要调用这个命令的用户就好了。就这么点小事。Fine,第二次搭,我直接用sudo挂载了,我觉得把一个passwd文件从root手中抢过来似乎有点不太好?

权限设置

ok仍然报错。

<?xml version="1.0" encoding="UTF-8"?>
<Error>
  <Code>AccessDenied</Code>
  <Message>The bucket you visit is not belong to you.</Message>
  <RequestId>xxxxxx</RequestId>
  <HostId>xxxxxx.oss-cn-shanghai.aliyuncs.com</HostId>
</Error>

这次的错误信息就很明确了。OSS那边没给权限,无法访问。

在阿里云控制台的访问控制里面,给那个access key对应的用户权限,就ok了。阿里云默认给用户的权限是0,要显式声明权限才行。我是直接给了oss的完全访问权限,也就是AliyunOSSFullAccess权限。

回头,再挂载一下,搞定。

价格问题

阿里云的存储是不贵的,40G的体验包一年只要9块钱,完全可以接受。

但是!阿里云的oss是多次收费的!不是云盘那种给钱包存储然后随便用的!好在算下来并不贵。

阿里云的oss收费分为存储费用、流量费用和请求费用。主要贵的是流量费用。

在不办理流量包的情况下,外网访问是几毛钱1GB,我觉得还行。包月流量最低的是每个月50G的,我觉得我完全用不到这么多,就不包月了。一个月50G的,一年算下来好像是100块左右,也还是可以接受的。不过这似乎跟百度网盘差不多了?看个人心情了。反正我是希望掌握在自己手里的,谁知道百度会不会跟360网盘一样突然爆炸呢。

内网访问

阿里云的内网访问是不收流量费的!所以放心大胆地用吧!不过在挂载的时候,-ourl 参数要指定oss存储的内网域名才行,我的上海的域名就是,-ourl="http://oss-cn-shanghai-internal.aliyuncs.com",这可是省下了一大笔费用啊!如果自己带宽足够的话,走自己的服务器带宽,不是又省下了一大笔钱了?不过既然用了oss的服务,应该是没人会省这个流量钱的吧?毕竟自己那100k的带宽。。看着头疼。

开机自动挂载

没有人想要每次手动挂载这玩意吧?

如果你还不会用systemctl,你应该学一学了。

好吧,我自己就不会用。滚去学了。

加个init.d,自启动妥妥的。

等我做完了我会把自启动脚本放出来了,如果我还记得。

好的我不打算做了。

 类似资料: