OSS是什么
OSS是阿里云存储服务,简单来说OSS就是一块网络硬盘。特点是便宜,但便宜也有代价,那就是性能不高,如果只是作为个人存文件用,我认为完全够用。
为什么要挂载
流量收费
因为直接访问(类似网盘)要消耗流量,收费!
而挂载到服务器,通过服务器访问,可以走内部通道(服务器连接OSS),免流量。当然,服务器也是需要流量收费的,不过这包含在服务器套餐啦,个人服务器的小量访问完全OK。
硬盘扩容
服务器的硬盘还是比较贵的(当然性能也高些),所以有这么一个外接硬盘,可以大大的扩大硬盘容量,能够保存自己的私有文件啦。
如何挂载
一言以蔽之,通过官方给的ossfs工具挂载。步骤如下:
1、安装 ossfs
首先根据官网的帮助文档下载ossfs的安装包:
1
wget http://gosspublic.alicdn.com/ossfs/ossfs_1.80.6_centos7.0_x86_64.rpm
然后安装ossfs程序:
1
sudo yum install ossfs_1.80.6_centos7.0_x86_64.rpm
(其实这就是普通的安装程序的过程)
2、配置账号访问信息
首先在OSS控制台找到AccessKey的id和secret,以及需要挂载的bucket名字 ,接着把账号信息写入passwd-ossfs文件:
1
echo BucketName:yourAccessKeyId:yourAccessKeySecret > /etc/passwd-ossfs
然后配置文件权限:
1
chmod 640 /etc/passwd-ossfs
3、挂载 ossfs
首先新建挂载的目标文件夹:
1
mkdir /mnt/oss
然后把OSS挂载到/mnt/oss:
1
ossfs BucketName /mnt/oss -ourl=http://oss-cn-hangzhou-internal.aliyuncs.com
4、开机挂载OSS
什么,你问我为啥要开机自动挂载?服务器重启之后难道要我手动来一次嘛……
原本是想通过修改fstab来实现的,但是考虑到如果出错容易导致无法启动,再参考网上的教程后,选择自定义服务来自动挂载OSS。
CentOS系统如下操作:(不同系统的自建服务流程不一样)
在/etc/init.d/目录下创建ossfs文件,输入以下内容:
1
2
3
4
#! /bin/bash
# chkconfig: 2345 10 90
# description: Auto mount ossfs
ossfs BucketName /mnt/oss -ourl=http://oss-cn-hangzhou-internal.aliyuncs.com -o allow_other
我遇到的问题1:
bash: ossfs: command not found解决:
1#rpm -ql ossfs
2#ln -sf /usr/local/bin/ossfs /usr/bin/ossfs
我遇到的问题1:
如遇到 ossfs: /lib64/libcrypto.so.10: version libcrypto.so.10’not found (required by ossfs)执行install compat-openssl10即可解决
3遇到The difference between the request time and the current time is too large
解决 时间不对 核对服务器时间