ossfs允许您在Linux系统中将对象存储OSS的存储空间(Bucket)挂载到本地文件系统。挂载完成后,您能够像操作本地文件一样操作OSS的对象(Object),从而实现数据共享。
1
2
3
4
| # centos7
wget http://gosspublic.alicdn.com/ossfs/ossfs_1.80.6_centos7.0_x86_64.rpm
# ubuntu
wget https://gosspublic.alicdn.com/ossfs/ossfs_1.80.6_ubuntu18.04_amd64.deb
|
1
2
3
4
5
| # centos
yum install -y ossfs_1.80.6_centos7.0_x86_64.rpm
# ubuntu
apt install -y gdebi-core
gdebi ossfs_1.80.6_ubuntu18.04_amd64.deb
|
将Bucket名称以及具有该Bucket访问权限的AccessKey ID和AccessKey Secret信息存放在/etc/passwd-ossfs
文件中。文件的权限建议设置为640。
1
2
| echo BucketName:yourAccessKeyId:yourAccessKeySecret > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs
|
1
| ossfs BucketName mountfolder -o url=Endpoint
|
示例
将上海地域名称为bucket-test
的bucket挂载到/data/ossfs
目录下,AccessKeyId 是 faint,AccessKeySecret 是123
1
2
3
4
| echo bucket-test:faint:123 > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs
mkdir /data/ossfs
ossfs bucket-test /data/ossfs -ourl=http://oss-cn-shanghai-internal.aliyuncs.com
|
注意 如果您使用从阿里云购买的云服务器ECS来提供ossfs服务,您可以使用内网域名。例如,在该示例中您可以将OSS Endpoint 修改为oss-cn-hangzhou-internal.aliyuncs.com
,从而节省流量费用。有关OSS内网域名的更多信息,请参见访问域名和数据中心。
1
| fusermount -u /data/ossfs
|
在/etc/fstab
中加入如下命令:
1
| ossfs#bucket_name mount_point fuse _netdev,url=url,allow_other 0 0
|
保存/etc/fstab文件。执行mount -a命令,如果没有报错,则说明设置正常。
参考链接:
ossfs概述
开机自动挂载目录
https://github.com/aliyun/ossfs/blob/master/README-CN.md