本文介绍挂载存储桶的注意事项、操作步骤等内容。
已安装 FSX 客户端。具体操作,请参见安装 FSX。
仅支持挂载 TOS 扁平桶,暂不支持挂载 TOS 分层桶。
使用 IAM 用户挂载存储桶,并执行相应操作时,需要拥有对应的权限,否则挂载会失败,具体权限说明如下:
对于开启服务器端加密 (SSE-KMS)的桶,则在读取或写入对象时需要额外的 KMS 操作权限。使用 SSE-KMS 上传加密对象,您需要具备该密钥的 kms:GenerateDataKey
权限;若要下载 SSE-KMS 加密对象,您需要具备该密钥的 kms:Decrypt
权限。关于服务端加密的更多信息,请参见服务端加密概述。
以下是一个最小权限策略举例:
{ "Statement": [{ "Effect": "Allow", "Action": [ "tos:GetObject", "tos:PutObject", "tos:DeleteObject", "tos:AbortMultipartUpload", "tos:ListBucket", "tos:HeadBucket" ], "Resource": [ "*" ] }] }
您还可以根据实际情况在以上权限策略的基础上增加更多动作,使得 IAM 用户拥有更多权限。关于 IAM 策略支持动作,请参见 IAM 策略概述。
确认需要授予的权限策略后,您需要在 IAM 控制台使用权限策略创建自定义策略,然后授予 IAM 用户该策略,具体操作,请参见配置 IAM 策略和添加授权。
默认情况,FSX 客户端进程的 UID 和 GID 拥有挂载的系统内所有的文件和目录权限,文件默认权限为 644,目录默认权限为 755,这些信息不支持通过 chown
和 chmod
命令修改,您可以在挂载桶时通过 uid
、gid
、file_mode
和 dir_mode
参数来修改默认值。
参数说明:
参数 | 是否必选 | 说明 |
---|---|---|
uid | 否 | 设置文件或目录属于某个用户时,需要填写的用户 uid。 |
gid | 否 | 设置文件或目录属于某个用户组时,需要填写的用户 gid。 |
file_mode | 否 | 用于设置文件的权限,默认取值为 644。 |
dir_mode | 否 | 用于设置目录的权限,默认取值为 755。 |
配置示例:
允许所有用户访问,即权限为 777。
mount -t fsx /tos/<挂载的桶名>:/<桶内目录> <挂载点> -o region="<地域>",endpoint="<访问域名>",access_key_id="AK",secret_access_key="SK",no_writeback_cache,file_mode=777,dir_mode=777
进入 Linux 操作系统,执行以下命令,创建挂载点。
mkdir /mnt/point
执行以下命令,挂载存储桶。
mount -t fsx /tos/<挂载的桶名> <挂载点> -o region="<地域>",endpoint="<访问域名>",access_key_id="AK",secret_access_key="SK",no_writeback_cache
示例如下:
mount -t fsx /tos/bucketname /mnt/point -o region="cn-beijing",endpoint="http://tos-cn-beijing.volces.com",access_key_id="AKLTOGY3YjZiNzEyYjU3NDQ0MWIzYTEyOTUxMWMwNmI****",secret_access_key="WVdJMlpUSmlOak01WmpRMU5ESTRObUppT0RBNU5HSTBZakExWkRrd0****",no_writeback_cache
参数说明如下:
说明
以下介绍使用 FSX 客户端挂载存储桶的基本参数,您还可以在挂载存储桶时设置预热、读缓存等参数,详细介绍,请参见 FSX 挂载参数说明。
参数 | 是否必选 | 说明 |
---|---|---|
region | 是 | 存储桶所在地域。 |
no_writeback_cache | 是 | 不开启内核 page cache 回写功能,保证 write 请求是顺序写。 |
endpoint | 是 | TOS 的访问域名。如果没有指定协议,则默认使用 HTTPS 协议,完整格式为 |
access_key_id | 否 | 在挂载命令中指定密钥信息,关于获取 Access Key ID 和 Secret Access Key 的具体操作,请参见 Access Key(密钥)管理。 说明
|
secret_access_key | ||
security_token | ||
credential_filepath | 否 | 在挂载命令中指定包含鉴权信息的文件路径,文件扩展名必须为
|
credential_timeout_sec | 否 | FSX 客户端动态配置鉴权文件的时间,单位:秒。 说明
|
执行以下命令,查看存储桶挂载情况。
df -h
在返回内容中看到挂载点、挂载桶名,说明挂载成功。
Filesystem Size Used Avail Use% Mounted on BFA281845F:tos-fuse-test 8.0E 0 8.0E 0% /mnt/fuse_shm
进入 Linux 操作系统,执行以下命令,创建挂载点。
mkdir /mnt/point
执行以下命令,挂载存储桶下某个目录。
mount -t fsx /tos/<挂载的桶名>:/<桶内目录> <挂载点> -o region="<地域>",endpoint="<访问域名>",access_key_id="AK",secret_access_key="SK",no_writeback_cache
示例如下:
mount -t fsx /tos/bucketname:/dir /mnt/point -o region="cn-beijing",endpoint="http://tos-cn-beijing.volces.com",credential_filepath="/root/credential.json",credential_timeout_sec=100,no_writeback_cache
参数说明如下:
说明
以下介绍使用 FSX 客户端挂载存储桶的基本参数,您还可以在挂载存储桶指定目录时设置预读、读缓存等参数,详细介绍,请参见 FSX 挂载参数说明。
参数 | 是否必选 | 说明 |
---|---|---|
region | 是 | 存储桶所在地域。 |
no_writeback_cache | 是 | 不开启内核 page cache 回写功能,保证 write 请求是顺序写。 |
endpoint | 是 | TOS 的访问域名。如果没有指定协议,则默认使用 HTTPS 协议,完整格式为 |
access_key_id | 否 | 在挂载命令中指定密钥信息,关于获取 Access Key ID 和 Secret Access Key 的具体操作,请参见 Access Key(密钥)管理。 说明
|
secret_access_key | ||
security_token | ||
credential_filepath | 否 | 在挂载命令中指定包含鉴权信息的文件路径,文件扩展名必须为
|
credential_timeout_sec | 否 | FSX 客户端动态配置鉴权文件的时间,单位:秒。 说明
|
执行以下命令,查看存储桶挂载情况。
df -h
在返回内容中看到挂载点、挂载桶名,说明挂载成功。
Filesystem Size Used Avail Use% Mounted on BFA281845F:tos-fuse-test 8.0E 0 8.0E 0% /mnt/fuse_shm
默认日志打印在/var/log/fsx
路径下:
/var/log/fsx/fusedaemon/tos/fusedaemon
,可以查看 FSX 客户端日志。/var/log/fsx/fusedaemon/tos/tos-fuse
,可以查看 TOS 服务端交互日志。为了查看服务运行过程中的详细信息,定位问题,您可能需要开启调试日志,此时可以使用以下命令:
调整 FSX 客户端日志级别为调试级别
cd /opt/fsx/bin && ./fusetool flags set --instance tos --flag v --value 20 --force
调整 TOS 服务端交互日志级别为调试级别
cd /opt/fsx/bin && ./fusetool flags set --instance tos --flag tosfuse_log_level --value 1 --force
执行 unmount <挂载目录>
命令,可以在 Linux 系统中卸载挂载点。