、什么是rclone?

rclone是一个命令行程序,全称:rsync for cloud storage。是用于将文件和目录同步到云存储提供商的工具。因其支持多种云存储服务的备份,如Google Drive、Amazon S3、Dropbox、Backblaze B2、One Drive、Swift、Wasabi、Google Cloud Storage、Azure Blob、Azure Files、NAS、对象存储(OOS/S3)等,所以常常称rclone为云存储备份的瑞士军刀。因其备份的特性,现在很多迁移厂商也用其来做存储数据迁移的场景。

二、功能

Rclone支持但不仅限于下面列出功能:

①将文件备份(和加密)到云存储

②从云存储恢复(和解密)文件

③将数据迁移到云端,或在云存储供应商之间迁移

④将多个、加密、缓存或多样化的云存储挂载为磁盘

更详细功能可查看官网:

5a214fcfecb57847501d19c839089145.png

三、程序特性

①接送服务

  • 始终检查 MD5、SHA1 哈希值以确保文件完整性

  • 时间戳保留在文件中

  • 可以随时重新启动操作

  • 可以进出网络,例如两个不同的云提供商

  • 可以使用多线程下载到本地磁盘

②将新文件或更改的文件复制到云存储

③同步(一种方式)使目录相同

④验证后将文件移动到云存储删除本地

⑤检查哈希和丢失/额外的文件

⑥将您的云存储挂载为网络磁盘

⑦通过HTTP / WebDav / FTP / SFTP / DLNA服务本地或远程文件

⑧实验性基于 Web 的 GUI

a3a679fb312d91f7a3dc619dbb3a4d8e.png

四、具体支持的云存储厂商

d3147623c8de4716f31c69f92fa85848.png

五、rclone下载及安装

下载链接:https://rclone.org/downloads/

35b57b70caf8bd670542269c3ca9fc01.png

安装链接:https://rclone.org/install/

本次操作使用“linux预编译二进制文件”安装,步骤如下:

获取和解压缩

curl -O https://downloads.rclone.org/v1.68.2/rclone-v1.68.2-linux-amd64.zip
unzip rclone-v1.68.2-linux-amd64.zip
cd rclone-v1.68.2-linux-amd64

复制二进制文件

sudo cp rclone /usr/bin/
sudo chown root:root /usr/bin/rclone
sudo chmod 755 /usr/bin/rclone

安装 manpage

sudo mkdir -p /usr/local/share/man/man1
sudo cp rclone.1 /usr/local/share/man/man1/
sudo mandb

运行以设置

rclone config

六、rclone备份操作

例1、如我要不linux的文件备份到nas云存储文件

我挂载的路径如下:

mount -t nfs -o vers=3,timeo=600,noresvport,nolock,tcp sfs-nas01.cn-fcscmsk1a.cmsk-cloud.com:/share-0920b451 /mnt/Lihx

执行如下命令进行备份我linux指定目录的文件:

rclone copy /home /mnt/Lihx -P --transfers 32 --checkers 64 --links --create-empty-src-dirs

说明:

参数说明如下,transfers和checkers数目可以根据系统规格自行配置:

--transfers:传输文件的并发数目。

--checkers:扫描本地文件的并发数目。

--P:数据拷贝进度。

--links:复制源端的软链接,目的端保持为软链接的形式。

--copy-links:复制源端软链接指向的文件内容,目的端变成文件的形式,不再是软链接。

--create-empty-src-dirs:复制源端的空目录到目的端。

13be6bf626466e58336dbbcb95373376.png

例2、迁移对象存储

①创建new remote,自定义的名称

b9e6ee7c821be312cfdea0c674ee999c.png

②选择存储类型,对象存储选S3,而其他根据具体情况选择。058e38dd75541f41a016d5c3a2e025c0.png

③选择厂商的对象存储类型,什么亚马逊、阿里、华为、IBM,常见的都在其中

2483f172fdba4e4d8aba2db8230f6eef.png

④剩下配置:

env_auth = false   # 不通过环境变量配置认证

access_key_id = AKxxxxxxxx  # 云后台生成的密钥key

secret_access_key = Secretxxxxxxx # 云后台生成的密钥secret

endpoint = cos.ap-chengdu.myqcloud.com # 云存储所在的地区,看你所在存储桶的公网地址

⑤具体备份指令格式

使用rclone sync命令将本地文件同步到云存储:

rclone sync /path/to/local/folder <remote_name>:remote/folder

使用rclone copy命令将云存储中的文件复制到本地:

rclone copy <remote_name>:remote/folder /path/to/local/folder

七、常用指令表

命令
说明
rclone copy
复制文件
rclone move
移动文件
rclone sync
同步源目目录数据
rclone ls
列出指定路径下的所有的文件以及文件信息
rclone lsl
比ls多显示上传时间
rclone lsd
列出指定路径下的目录
rclone lsf 列出指定路径下的目录和文件
rclone size 查看云存储文件占用大小

八、常用参数表

命令 说明
-n = --dry-run 测试运行,查看 rclone 在实际运行中会进行哪些操作
-P = --progress 显示实时传输进度,500 ms刷新一次,否则默认1分钟刷新一次
--cache-chunk-size 5M 块的大小,默认 5M 越大上传越快,占用内存越多,太大可能会导致进程中断
--transfers=N 并行文件数,默认为4。在比较小的内存的VPS上建议调小这个参数,比如 128M 的小机上使用建议设置为1。
--checkers 扫描本地文件的并发数目。
--links 复制源端的软链接,目的端保持为软链接的形式。

注:更详细的指令和参数表,可查看官网

不想错过文章内容?读完请点一下“在看fa6cb0e459369b2858913234e14ece04.gif,加个关注”,您的支持是我创作的动力

期待您的一键三连支持(点赞、在看、分享~)

Logo

火山引擎开发者社区是火山引擎打造的AI技术生态平台,聚焦Agent与大模型开发,提供豆包系列模型(图像/视频/视觉)、智能分析与会话工具,并配套评测集、动手实验室及行业案例库。社区通过技术沙龙、挑战赛等活动促进开发者成长,新用户可领50万Tokens权益,助力构建智能应用。

更多推荐