Rclone 对接 Azure Storage Account
- 2025-01-04 20:04:00
- 丁国栋
- 原创 45
Rclone 是一个命令行工具,用来管理云上的文件。Rclone 具有强大的云上处理功能,等效于 unix 命令 rsync、cp、mv、mount、ls、ncdu、tree、rm 和 cat,rclone是受 rsync 启发并采用 Go 编写的。目前Rclone 已经是一个成熟的开源软件,拥有较为完备的文档和社区,可以提供丰富和友好的使用用例。
注:建议使用官网推荐的方式来安装,毕竟在发行版中的版本可能要比实际的稳定版差出好几个版本,可以使用命令sudo -v ; curl https://rclone.org/install.sh | sudo bash -x
来安装。
Rclone 功能非常丰富包括同步、文件传输、加密、缓存和挂载等,并且支持各大云存储供应商的接口、能提供统一的访问界面。Rclone 可以通过 S3 协议对接多种对象储存,支持上传、下载、删除、数据库同步、数据迁移等。
安装Rclone 可以通过包管理器安装,如直接 apt install rclone -y
进行安装。
安装Azure CLI 可以查阅 https://learn.microsoft.com/en-us/cli/azure/install-azure-cli-linux?pivots=apt
账户准备:
- Azure的管理员账户,可以是主账户也可以是子账户,在Azure中被称之为 Tenant。
- 订阅ID,subscription ID
- 资源组名称, Resource Group name
- 存储账户名称, Storage Account name
- 容器名称,Container name
Azure Storage Account在Rclone中的类型是 azureblob,为了简化配置,需要配置以下信息:
上图中的配置解读:
type: azureblob 这个是执行 rclone config 时选择出来的。
account: 这个是存储账户(Storage Account)的名字
service_principal_file: 这个需要设置,可以使用 az命令生成,在配置过程中有提示。这个实际上是在Azure AD(Microsoft Entra ID)中创建了一个应用(App registrations),这个配置文件里有名称(Display name)、应用ID(Application (client) ID)、密码和租户名称(Directory (tenant) ID)。
key: 这个是存储账户的Access Key,可以在Azure控制台上获取,导航到Storage accounts,选择要操作的存储账户,点击 Security + networking 里的 Access Keys,就可以看到有key1和key2两个access key,选择其中一个即可。
配置以后就可以使用rclone操作Azure Storage Account中的blob文件了。