共计 3037 个字符,预计需要花费 8 分钟才能阅读完成。
快速挂载oss到esc服务器
ossfs允许您在Linux系统中将对象存储OSS的存储空间(Bucket)挂载到本地文件系统。挂载完成后,您能够像操作本地文件一样操作OSS的对象(Object),从而实现数据共享。
运行环境
-
Linux系统
-
CentOS 7.0及以上版本
-
Ubuntu 14.04及以上版本
-
Anolis7及以上版本
-
-
fuse 2.8.4以上版本
下载地址
说明
下载并使用ossfs前,建议您先了解ossfs相关使用限制。更多信息,请参见使用限制。
Linux发行版
Ubuntu 22.04 (x64)
ossfs_1.91.1_ubuntu22.04_amd64.deb
Ubuntu 20.04 (x64)
ossfs_1.91.1_ubuntu20.04_amd64.deb
Ubuntu 18.04 (x64)
ossfs_1.91.1_ubuntu18.04_amd64.deb
Ubuntu 16.04 (x64)
ossfs_1.91.1_ubuntu16.04_amd64.deb
Ubuntu 14.04 (x64)
ossfs_1.91.1_ubuntu14.04_amd64.deb
CentOS 8.0 (x64)
ossfs_1.91.1_centos8.0_x86_64.rpm
CentOS 7.0 (x64)
ossfs_1.91.1_centos7.0_x86_64.rpm
Anolis8/Alibaba Cloud Linux 3
ossfs_1.91.1_anolisos8.0_x86_64.rpm
Anolis7/Alibaba Cloud Linux 2
ossfs_1.91.1_anolisos7.0_x86_64.rpm
以上列表中提供了常用系统的安装包,如果您的系统版本不在以上列表,请通过源码编译。源码地址以及如何进行源码编译,请参见GitHub ossfs。
重要
复制下载链接时会自动加上spm编码内容,使用wget命令下载时,请删除链接中的?spm=xxxx
,否则会导致下载失败。
快速安装
-
下载安装包。
以下载CentOS 7.0 (x64)版本为例:
sudo wget http://gosspublic.alicdn.com/ossfs/ossfs_1.91.1_centos7.0_x86_64.rpm
-
安装ossfs。
-
Ubuntu系统
以Ubuntu 16.04 (x64)版本为例,安装命令如下:
sudo apt-get update sudo apt-get install gdebi-core sudo gdebi ossfs_1.91.1_ubuntu16.04_amd64.deb
-
CentOS系统/Anolis系统
以CentOS 7.0(x64)版本为例,安装命令如下:
sudo yum install ossfs_1.91.1_centos7.0_x86_64.rpm
对于使用yum安装rpm包的客户端,如果客户端节点网络环境特殊,无法直接使用yum下载依赖包。您可以在网络正常的、相同版本操作系统的节点上,使用yum下载依赖包并拷贝到网络特殊的节点。例如,ossfs需要依赖fuse 2.8.4以上版本,可使用如下命令,下载yum源中最新的fuse到本地:
sudo yum install --downloadonly --downloaddir=./ fuse
重要
如果需要下载其他依赖包,请将fuse换成对应包的名称。
-
-
如果您希望上传文件的Content-Type和文件扩展名匹配,您需要添加mime.types文件。
如果您不添加mime.types文件,ossfs默认将上传文件的Content-Type设置为application/octet-stream。
通过命令添加mime.types文件的示例如下。
-
Ubuntu系统
您可以通过以下命令添加mime.types文件。
sudo apt-get install mime-support
-
CentOS系统/Anolis系统
-
-
配置账号访问信息。
将Bucket名称以及具有该Bucket访问权限的AccessKey ID和AccessKey Secret信息存放在/etc/passwd-ossfs文件中。文件的权限建议设置为640。
sudo echo BucketName:yourAccessKeyId:yourAccessKeySecret > /etc/passwd-ossfs sudo chmod 640 /etc/passwd-ossfs
BucketName、yourAccessKeyId、yourAccessKeySecret请按需替换为您实际的Bucket名称、AccessKey ID和AccessKey Secret,例如:
sudo echo bucket-test:LTAIbZcdVCmQ****:MOk8x0y9hxQ31coh7A5e2MZEUz**** > /etc/passwd-ossfs sudo chmod 640 /etc/passwd-ossfs
-
将Bucket挂载到指定目录。
sudo ossfs BucketName mountfolder -o url=Endpoint
说明
如果是root用户,命令中不需要增加sudo。增加sudo会导致无法挂载,报错
sudo:ossfs:commandnotfound
。将杭州地域名称为
bucket-test
的Bucket挂载到/tmp/ossfs
目录下的示例如下:sudo mkdir /tmp/ossfs sudo ossfs bucket-test /tmp/ossfs -o url=http://oss-cn-hangzhou.aliyuncs.com
重要
如果您使用从阿里云购买的云服务器ECS来提供ossfs服务,您可以使用内网域名。例如,在该示例中您可以将OSS Endpoint 修改为
oss-cn-hangzhou-internal.aliyuncs.com
,从而节省流量费用。有关OSS内网域名的更多信息,请参见访问域名和数据中心。 -
如果您不希望继续挂载此Bucket,您可以将其卸载。
版本日志
有关版本日志的更多信息,请参见GitHub ChangeLog。
安装好ossfs后执行下面命令即可
echo imgup6:LTAI5tJfzn81qYRZV7******:9V8TsNQJeFb3R74iE2gecII***** > /etc/passwd-ossfs
echo webbak-116:LTAI5tJfzn81qYRZV7*****:9V8TsNQJeFb3R74iE2gecII**** > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs
mkdir /www/wwwroot/escoss
mkdir /www/wwwroot/escossbak
ossfs imgup6 /www/wwwroot/escoss -ourl=http://oss-cn-hangzhou-internal.aliyuncs.com
ossfs webbak-116 /www/wwwroot/escossbak -ourl=http://oss-cn-hangzhou-internal.aliyuncs.com