本文为您介绍如何在Linux系统上使用ossfs 1.0将OSSBucket挂载为本地文件系统。
前提条件
挂载命令格式
命令格式:
ossfs bucket_name /tmp/ossfs -o url=http://oss-cn-hangzhou.aliyuncs.com
参数说明
ossfs
:ossfs启动程序。bucket__name
:被挂载的目标Bucket名称。/tmp/ossfs
:本地文件系统挂载目标Bucket的目录。-o
:挂载选项前缀参数,此参数在挂载命令中为必填项。url=http://oss-cn-hangzhou.aliyuncs.com
:url
挂载选项指定目标Bucket的Endpoint,选项值格式为http://Endpoint
。查看目标Bucket的Endpoint请进入Bucket列表页面,选择目标Bucket并进入,接着单击左侧导航栏的概览选项,在概览页的访问端口栏中即可查看目标Bucket所处的地域节点。如图所示,以杭州地域Bucket为例。
基础挂载
配置文件挂载
创建挂载目录。
执行以下命令,自定义创建
/tmp/ossfs-1
和/tmp/ossfs-2
空目录作为目标Bucket的挂载目录。mkdir /tmp/ossfs-1 /tmp/ossfs-2
挂载命令示例。
执行以下两条命令,将默认配置文件中配置的
bucket-test-1
和bucket-test-2
分别挂载到本地/tmp/ossfs-1
以及/tmp/ossfs-2
目录下。ossfs bucket-test-1 /tmp/ossfs-1 -o url=http://oss-cn-hangzhou.aliyuncs.com ossfs bucket-test-2 /tmp/ossfs-2 -o url=http://oss-cn-hangzhou.aliyuncs.com
ECSRAMRole挂载
创建挂载目录。
执行以下命令,创建
/tmp/ossfs
空目录作为目标Bucket的挂载目录。mkdir /tmp/ossfs
挂载命令示例。
使用实例元数据URL挂载ossfs,目前仅支持普通模式访问。有关元数据访问模式介绍,请参见元数据访问模式说明。
执行以下命令,将名为
bucket1
的Bucket挂载到本地/tmp/ossfs
目录下。请注意:使用ECSRAMRole挂载方式挂载Bucket时,需配合
ram_role
参数指定实例元数据URL,100.100.100.200
为阿里云ECS实例元数据服务的默认IP地址无需更改。EcsRamRoleOssTest
为ECS实例所绑定的角色名称,请替换为您的目标角色名称,其余信息无需更改。ossfs bucket1 /tmp/ossfs -o url=http://oss-cn-hangzhou.aliyuncs.com -o ram_role=http://100.100.100.200/latest/meta-data/ram/security-credentials/EcsRamRoleOssTest
场景化挂载
您可以在挂载时只挂载特定的目录,或者通过添加挂载选项的方式,根据不同的使用场景选择合适的挂载选项完成Bucket的挂载。请注意:在挂载命令执行前必须保证本地目标挂载目录为空。
指定文件目录挂载
执行以下命令,将bucket-ossfs-test
中的folder
目录挂载到本地/tmp/ossfs-folder
目录下。
ossfs bucket-ossfs-test:/folder /tmp/ossfs-folder -o url=http://oss-cn-hangzhou.aliyuncs.com
指定配置文件挂载
挂载选项:passwd_file挂载选项用于在挂载时指定非默认ossfs 1.0配置文件的路径,且指定配置文件权限需设置为600。
挂载示例
执行以下命令,将指定配置文件中配置的
bucket-test-3
挂载到本地/tmp/ossfs-3
目录下。ossfs bucket-test-3 /tmp/ossfs-3 -o url=http://oss-cn-hangzhou.aliyuncs.com -o passwd_file=/etc/passwd-ossfs-3
挂载时开启调试日志
挂载选项:dbglevel挂载选项用于设置日志信息的级别,支持日志信息级别为
critical
、error
、warn
、info
和debug
,默认值为critical
。默认日志保存路径:CentOS系统保存在/var/log/messages中,Ubuntu系统则保存在/var/log/syslog中。您也可以通过logfile
挂载选项指定目标日志文件路径。挂载示例1
执行以下命令,将
bucket-ossfs-test-1
挂载到本地/tmp/ossfs-1
下,并通过-d
开启libfuse
调试日志,通过dbglevel
挂载选项设置日志信息级别为debug
。ossfs bucket-ossfs-test-1 /tmp/ossfs-1 -d -o dbglevel=debug
挂载示例2
执行以下命令,将
bucket-ossfs-test-2
挂载到本地/tmp/ossfs-2
下,日志信息级别设置为debug
并开启libfuse
调试日志,日志信息通过-f
挂载选项设置为在前台终端输出。ossfs bucket-ossfs-test-2 /tmp/ossfs-2 -d -o dbglevel=debug -f
挂载时配置访问权限
ossfs挂载的目录访问权限默认为挂载点的所有者,即执行挂载命令的用户,其他用户无法访问。如果要修改默认的权限设置,例如允许其他用户或用户组访问挂载点,您则可以在使用ossfs挂载OSS存储空间时根据所需权限配置相应参数,做到期望的权限设置。
挂载选项 | 说明 |
挂载选项 | 说明 |
allow_other | 修改挂载点的权限,允许所有的用户访问挂载目录,但不包括目录中的文件。目录中文件权限需单独设置,个别文件的权限修改请用 |
uid | 设置文件夹属于某个用户时填写的用户uid。 |
gid | 设置文件夹属于某个用户时填写的用户gid。 |
umask | 用来设置挂载点下文件和目录的权限掩码。例如需要设置挂载点下文件的权限为770,则增加-o umask=007;需要设置挂载点下文件的权限700,则增加-o umask=077。 |
挂载示例1
执行以下命令,将
bucket_name
挂载至本地mount_point
目录下,并通过allow_other
挂载选项设置挂载目录权限为777,所有用户均可访问。ossfs bucket_name mount_point -o url=endpoint -o allow_other
挂载示例2
执行以下命令,将
bucket_name
挂载至本地mount_point
目录下,并通过umask
挂载选项设置挂载目录及目录中文件权限为770,即只允许同组用户访问。ossfs bucket_name mount_point -o url=endpoint -o umask=007
挂载示例3
执行以下命令获取指定用户的uid、gid和groups。以www用户为例。
id www
运行结果如图所示。
执行以下命令,将
bucket_name
挂载至本地mount_point
目录下,并通过uid
和gid
挂载选项指定用户和组,只允许同组的用户访问,权限为770。uid
和gid
信息以1000为例,请在挂载命令执行前替换为目标用户的uid
和gid
信息。ossfs bucket_name mount_point -o url=endpoint -o allow_other -o uid=1000 -o gid=1000 -o umask=007
实用技巧
卸载已挂载的Bucket
您可以使用以下命令,卸载已挂载到本地的OSS文件系统。例如,卸载挂载在/tmp/ossfs
路径下的文件系统。
umount /tmp/ossfs
常见问题
Windows系统挂载OSSBucket请使用云存储网关CSG。详情请参见在云控制台上使用文件网关和访问SMB共享目录。
ECS通过内网Endpoint挂载OSS不产生流量费用。更多关于流量费用信息,请参见流量费用。
如果您的ECS和OSS不在同一地域且需要进行跨地域挂载,请确保网络畅通,您可以直接使用外网Endpoint进行挂载。此外,您还可以ECS私网访问跨地域的OSS服务。
如果您需要通过云存储网关搭建IIS网站并将OSS作为数据存储,请参见如何使用阿里云云存储网关搭建IIS网站。
如果您需要在Windows操作系统上挂载OSS,请参见Rclone。
更多关于挂载,权限等相关问题,请参见常见问题。
- 本页导读 (1)
- 前提条件
- 挂载命令格式
- 基础挂载
- 配置文件挂载
- ECSRAMRole挂载
- 场景化挂载
- 指定文件目录挂载
- 指定配置文件挂载
- 挂载时开启调试日志
- 挂载时配置访问权限
- 实用技巧
- 设置开机自动挂载
- 卸载已挂载的Bucket
- 常见问题