用 RustFS 原生 CLI `rc` 管对象存储:从 alias 到 cp 的完整玩法

一句话定位:RustFS 是面向 AI 时代、从零原生打造的高性能分布式对象存储,100% 兼容 S3 API,Apache 2.0 协议,底层用 Rust 构建,可作为 MinIO 的 drop-in 替代方案。

目录

  1. [问题背景:mc 能用,但 rc 更贴 RustFS](#问题背景:mc 能用,但 rc 更贴 RustFS)
  2. [rc 和 mc、aws-cli 的分工](#rc 和 mc、aws-cli 的分工)
  3. 安装与登记实例
  4. 建桶、上传、列出:一段完整链路
  5. 日常管理还能做什么
  6. 总结与下一步

1. 问题背景:mc 能用,但 rc 更贴 RustFS

RustFS 100% 兼容 S3,所以 MinIO 的 mc、AWS 的 aws s3、各种 SDK 都能直接连,这没问题。但 RustFS 自己也有一个原生 CLI,叫 rc------对标 mc,命令名字和用法高度一致,又针对 RustFS 的特性做了优化(比如多流上传、本地到远程目录同步更快)。

我自己的习惯是:日常桶管理、对象搬运、快速验证,用 rc;写业务代码走 SDK;一次性批量迁移用 rclone。三者不冲突,rc 胜在"为 RustFS 而生、和 mc 肌肉记忆无缝切换"。


2. rc 和 mc、aws-cli 的分工

先说清三者怎么选,免得重复造轮子:

  • rc / mc :交互式管理首选。alias 登记实例、mb 建桶、cp 传文件、ls 看内容、admin 看状态,敲起来比 aws s3 短。
  • aws-cli / SDK:写进代码、进 CI、做自动化,走标准 S3 语义,跨云通用。
  • rclone:跨存储同步、增量备份、定时任务,擅长"两地之间搬"。

rc 和 mc 的命令几乎能逐字替换,原来 mc 的脚本把二进制名换掉就行。下面这张对照表是我常用的几个。


3. 安装与登记实例

rc 在 rustfs/cli 仓库发布。以官方 RPM 教程使用的 v0.1.31 为例(拉取时请取 cli 仓库最新 release 版本号;beta.10 时期是 v0.1.27,已带多流上传与更快的目录同步):

bash 复制代码
wget https://github.com/rustfs/cli/releases/download/v0.1.31/rustfs-cli-linux-amd64-gnu-v0.1.31.tar.gz
tar -zxvf rustfs-cli-linux-amd64-gnu-v0.1.31.tar.gz
chmod +x rc && cp rc /usr/local/bin

rc --version

登记一个 RustFS 实例(用法和 mc alias set 一致):

bash 复制代码
rc alias set local http://127.0.0.1:9000 <ACCESS_KEY> <SECRET_KEY>

local 是别名,后面所有命令都用它代替长长的 endpoint。有多个集群就登记多个 alias,比如 local、prod、edge。


4. 建桶、上传、列出:一段完整链路

一个最常见的动作:建业务桶 → 传一份配置 → 列出来确认。全程用 rc:

bash 复制代码
rc mb local/rc-demo

echo "Hello RustFS" > config.json
rc cp config.json local/rc-demo

rc ls local/rc-demo

这段链路和 mc 一字不差,运维老脚本基本不用改。差异在底层:rc 的多流上传在传大批小文件时更顺,目录同步也比 mc mirror 那种单流快一截------具体提速幅度看你的网络和对象分布,但"同样的命令、RustFS 上跑得更利索"是实打实的。


5. 日常管理还能做什么

除了上面那四个,rc 覆盖的还有不少日常动作:

  • 目录同步 :把本地目录整体推到桶里,对标 mc mirror,rc 在目录同步上做了提速。
  • 查服务状态 :实例健康、节点情况,用 rc 的管理类子命令直接看,不用每次都开浏览器控制台。
  • 跨实例搬运 :从一个 alias 拷到另一个 alias,等于内置的"存储间迁移",小批量腾挪比 rclone 更轻。

一点提醒:rc 的版本和 RustFS 服务端最好对齐节奏------服务端大版本升级后,顺手把 rc 也升到相近版本,避免管理命令用到新能力时客户端还不认。


6. 总结与下一步

rc 是 RustFS 自己的原生 CLI,命令和 mc 高度一致,老 MinIO 脚本几乎零成本切过来,又针对多流上传和目录同步做了提速。它和 aws-cli、SDK、rclone 各管一段:日常交互用 rc,写代码用 SDK,跨存储搬用 rclone。

下一步可以直接做:

  1. 装好 rc 并 rc alias set 登记你的实例;
  2. 用 rc mb + rc cp 跑通一次上传,再用 rc ls 确认;
  3. 把原来 mc 的运维脚本里二进制名换成 rc,验证一遍;
  4. 大目录同步时对比一下 rc 和 mc mirror 的耗时,记下你环境的实际差距。

以下是深入学习 RustFS 的推荐资源:RustFS

官方文档: RustFS 官方文档- 提供架构、安装指南和 API 参考。

GitHub 仓库: GitHub 仓库 - 获取源代码、提交问题或贡献代码。

社区支持: GitHub Discussions- 与开发者交流经验和解决方案。

意见反馈:GitHub Issues

相关推荐
wflynn1 小时前
GitHub 日榜趋势速报 | 2026-10-13
开源·github
冬奇Lab3 小时前
开源项目第236期:PentAGI — 全自主渗透测试多智能体系统,自带 20+ 专业工具箱
人工智能·开源·资讯
m4Rk_5 小时前
【论文阅读】Agent 记忆机制(99):PrisMem——从整体分数搜索走向能力驱动的记忆自进化
论文阅读·人工智能·学习·开源·github
SL_staff5 小时前
销售知识库7天落地实践:面向业务侧的零代码嵌入方案
java·开源·产品
microrain7 小时前
一套能真正交付的物联网开源平台 — SagooIoT
物联网·开源
IvorySQL7 小时前
PostgreSQL 日报|堆表选择性索引更新(10 月 13 日)
数据库·人工智能·postgresql·开源·区块链
特立独行的猫a7 小时前
用仓颉写桌面应用:从 npx 建工程到串口实时示波器
开源·harmonyos·tauri·仓颉·cj-tarui
张洛闻Eren7 小时前
Ansible【第一课】:Ansible介绍
运维·数据库·云原生·kubernetes·github·ansible
菜鸟阿达7 小时前
Postman 有哪些免费/开源的替代品?2026 年接口工具选型参考
测试工具·开源·postman
miofly7 小时前
Meta 发布 Muse Wonder 系列模型,长上下文智能体任务表现接近主流竞品
开源·github