使用COSCLI六步将对象存储文件迁移至轻量对象存储

由于我的服务器大多都是轻量应用服务器,近期轻量云也推出了个轻量对象存储,套餐包的形式相比cos资源包还是挺划算,最主要的是没有读写请求计费,一个套餐包涵盖所有内容。

而且对于轻量应用服务器也可以进行一键挂载,对小白用户也十分友好,那么如何将原来在cos的文件迁移到lhcos呢?

最开始我想到的是使用腾讯云的迁移平台,但是似乎并不支持cos >> lhcos,那么就有了今天这篇文章。

COSCLI 是腾讯云对象存储(Cloud Object Storage,COS)提供的客户端命令行工具。通过 COSCLI 工具,您可以通过简单的命令行指令对您 COS 中的对象(Object)实现批量上传、下载、删除等操作。

下列步骤均在Linux环境下运行

一、下载与安装COSCLI

下载COSCLI

代码语言:bash
复制
wget -O coscli https://cosbrowser.cloud.tencent.com/software/coscli/coscli-linux

运行以下命令修改文件执行权限:

代码语言:bash
复制
chmod 755 coscli

输入./coscli --version,若打印出以下信息则代表安装成功:

代码语言:bash
复制
coscli version v0.20.0-beta

二、创建API密钥

在进行这些权限配置的时候,建议遵循最小权限原则,以保障您的数据资产安全。可参考此文档进行配置https://cloud.tencent.com/document/product/436/38618

三、交互式生成cos配置

代码语言:bash
复制
./coscli config init

配置项

说明

Secret ID

密钥 ID,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 子账号访问密钥管理。

Secret Key

密钥 Key,建议使用子账号密钥,授权遵循最小权限指引,降低使用风险。子账号密钥获取可参见 子账号访问密钥管理。

Session Token

临时密钥 token,当使用临时密钥时需要配置,若不使用可以直接按 Enter 跳过。 关于临时密钥的更多信息,详见 使用临时密钥访问 COS。

Mode

设置身份模式,支持枚举值 SecretKeyCvmRole。可以为空,空值默认为SecretKey,表示使用密钥请求 COS。当Mode 为CvmRole时,表示是用 管理实例角色 请求 COS。

Cvm Role Name

设置 CVM 角色实例名称,详情参考 管理实例角色。若Mode为空或SecretKey,此项直接回车跳过

Auto Switch Host

可直接回车跳过

Bucket Name

存储桶名称,和 APPID 一起构成存储桶全称,格式为 <BucketName-APPID>,详情请参见 存储桶命名规范。

Bucket Endpoint

存储桶所在地域的域名,默认域名格式为 cos.<region>.myqcloud.com,其中 <region> 代表存储桶地域,例如 ap-guangzhou、ap-beijing 等,COS 支持的地域列表可参见 地域与访问域名。

Bucket Alias

存储桶别名,配置后可以在使用时用 BucketAlias 代替 BucketName-APPID,减少所需输入的命令长度,这里我将cos的桶名配置成了cos

四、添加lhcos配置

代码语言:bash
复制
./coscli config add -b BucketName-APPID -a lhcos -r <region>

五、开始迁移

代码语言:bash
复制
./coscli sync cos://cos/ cos://lhcos/ -r

执行完之后可前往轻量对象存储控制台=>存储桶查看迁移后的文件,确认文件全部迁移完成后,可前往对象存储控制台将存储桶清空避免后续计费~