TOS 支持将存储桶作为磁盘挂载到 Windows 系统。本文以 64 位 的 Windows10 系统为例,介绍在 Windows 系统挂载 TOS 存储桶的相关操作和常见问题。
确保账号拥有存储桶的读写权限,并获取该账号的 Access Key ID、Secret Access Key。更多信息,请参见 Access Key(密钥)管理。
已获取存储桶所属账号 Region ID 和 S3 Endpoint。更多信息,请参见地域和访问域名(Endpoint)。
使用 Rclone 工具挂载存储桶适用于小量测试等场景,不建议生产环境使用此方式。生产环境建议使用 S3 、TOS API 或 TOS SDK。
安装依赖工具 Winfsp。
下载依赖工具 Winfsp 至本地。
双击安装程序 winfsp-2.0.23075.msi,根据界面提示完成 Winfsp 的安装。
安装挂载工具 Rclone。
下载并解压 Rclone 至本地,本文以解压 Rclone 至 C:\Tools
为例。更多信息,请参见 Rclone 论坛。
为 Rclone 配置环境变量。
在桌面,右键单击此电脑,选择属性。
在关于页面底部,单击高级系统设置。
在系统属性对话框,单击环境变量。
在环境变量对话框系统变量区域,双击 Path。
在编辑环境变量对话框,单击新建,输入 Rclone 解压后在本地的路径,本文为 C:\Tools\rclone-v1.57.0-windows-amd64
,单击确定。
在环境变量对话框,单击确定。
验证 Rclone 是否安装成功。
在桌面,搜索中输入 cmd
,打开命令提示符面板。
输入以下命令,验证 Rclone 是否安装成功。
rclone -version
返回类似如下内容,说明 Rclone 安装成功。
Usage: rclone [flags] rclone [command]
在命令提示符面板,输入 rclone config
,按 enter,开始配置 Rclone。
依次选择如下选项,并输入相关信息,配置 Rclone 信息。
说明
Rclone 版本不同,配置选项的数字编号可能会不同,请您根据选项的文字描述进行选择。
n) New remote //新建远程连接。 name> volces-tos //输入连接名称,本文中以 volces-tos 为例。 5 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, SeaweedFS, and Tencent COS \ "s3" //选择兼容 S3 协议的存储类型。 25 / Any other S3 compatible provider \ "Other" //选择其他 S3 兼容的存储提供商。 1 / Enter AWS credentials in the next step \ "false" //在下一步输入密钥。 access_key_id> AKLTYTBjY******* //输入AK。 secret_access_key> TVdaaFkyRTNNa***** //输入SK。 region> cn-beijing //输入 Region ID。 endpoint> https://tos-s3-cn-beijing.volces.com //输入 S3 Endpoint。 location_constraint> //按 Enter 键置空,保持默认即可。 acl> //按 Enter 键置空,保持默认即可。 n) No (default) //不编辑高级配置,保持默认即可。 y) Yes this is OK (default) //查看配置预览信息,然后选择 y。 q) Quit config //退出配置界面。
修改 Rclone 配置信息。
注意
配置完成后,Rclone 默认会使用 Path 模式访问对象存储,在访问 TOS 时需要您修改为虚拟主机模式。
Rclone 默认会使用 HTTP2 访问 TOS,在访问 TOS 时需要禁用 HTTP2 模式。
输入以下命令,获取配置文件的详细路径。
rclone config file
打开配置文件,在连接配置的末尾增加如下内容。
参数 | 是否必选 | 说明 |
---|---|---|
force_path_style = false | 必选 | 禁用 Path 模式访问对象存储。 |
disable_http2 = true | 必选 | 禁用 HTTP2 模式访问对象存储。 |
list_version = 2 | 可选 | 使用 V2 版本的接口列举对象。与 V1 接口相比,V2 接口调用参数更全面,优化了 V1 接口存在的超时问题。 说明 如果您未在配置文件中添加该参数,您也可以在使用列举命令时添加 --s3-list-version 2参数。具体示例,请参见查看桶或目录。 |
修改后的配置文件如下所示。
[volces-tos] type = s3 provider = Other access_key_id = AKLTYTBjY******* secret_access_key = TVdaaFkyRTNNa***** region = cn-beijing endpoint = https://tos-s3-cn-beijing.volces.com force_path_style = false disable_http2 = true list_version = 2
输入以下命令,按 Enter 。
rclone mount <远程连接的名称>:/ <盘符>: --cache-dir <缓存目录> --vfs-cache-mode writes
参数 | 说明 |
---|---|
远程连接的名称 | 与步骤二:配置 TOS 连接信息创建的远程连接名称相对应,本文为 volces-tos。 |
盘符 | 磁盘的标识符。本文设置为 F。 |
缓存目录 | 用于存放 Rclone 的缓存信息。本文设置为 C:\TOS_Cache 。 |
示例:
rclone mount volces-tos:/ F: --cache-dir C:\TOS_Cache --vfs-cache-mode writes
返回类似如下内容:
The service rclone has been started.
在桌面双击此电脑,单击上一步骤设置的盘符,本文为 F 盘。
在 F 盘可以看到存储桶,说明挂载存储桶到本地成功。
按 ctrl -c
,可以取消挂载存储桶。
注意
取消挂载存储桶之前,请确保已完成上传文件等操作。
Q:挂载存储桶到本地后,访问磁盘,提示 Dir.Stat error: BadRequest 怎么办?
A:该报错有可能是 Access Key ID 和 Secret Access Key 错误引起的。您需要在 rclone
配置文件中正确修改 Access Key ID 和 Secret Access Key,然后再挂载存储桶。