Rclone 的使用,告别云盘工具
2025年12月31日 · 1137 字 · 3 分钟
在云存储百花齐放的今天,如何高效、统一地管理不同平台的资料?Rclone 给了我们最终答案。它是一款命令行工具,支持 40 多种云存储,被公认为云端管理的“瑞士军刀”。
本文将带你从原生安装开始,一步步深入到 Docker 高级挂载实战。
1. 认识 Rclone
Rclone 不仅仅是一个简单的上传下载工具,它的强大之处在于:
- 多协议支持:S3, FTP, WebDAV, Google Drive, OneDrive 等。
- 文件同步:支持增量备份,只传输变化的部分。
- 虚拟挂载:将云端直接挂载为本地磁盘。
- 加密传输:支持端到端加密。
2. 基础安装与配置(原生环境)
在正式使用前,我们先在本地系统完成安装与配置。
2.1 安装
在大多数 Linux 环境(如 Ubuntu, postmarketOS)中,安装非常简单:
sudo apk add rclone # Alpine/postmarketOS
sudo apt install rclone # Ubuntu/Debian
2.2 快速生成配置文件
通常 Rclone 使用 rclone config 进行交互式配置,但在自动化部署中,我们更倾向于直接手动编写配置文件。
关键点:加密密码 Rclone 的配置文件不支持明文密码,需使用内置命令加密:
rclone obscure your_password_here
# 输出示例:V41e4y8RMBcbKHp95Xjyihii0G4
创建配置文件:
在 ~/.config/rclone/rclone.conf(或自定义路径)写入以下内容:
[my_cloud]
type = webdav
url = http://192.168.1.200:5244/dav/share
vendor = other
user = admin
pass = V41e4y8RMBcbKHp95Xjyihii0G4 (填入刚才生成的加密串)
2.3 原生常用命令
有了配置文件后,你可以直接使用以下命令:
- 列出文件:
rclone lsf my_cloud:/ - 拷贝文件:
rclone copy /local/path my_cloud:/remote/path --progress - 本地挂载:
mkdir -p ~/mnt/cloud
rclone mount my_cloud:/ ~/mnt/cloud --vfs-cache-mode full &
3. Docker 版本:复用配置与进阶部署
在服务器端,使用 Docker 部署 Rclone 可以实现环境隔离。我们可以轻松复用前面生成的 rclone.conf。
3.1 Docker Compose 一键启动
创建 docker-compose.yml:
services:
rclone:
image: rclone/rclone:latest
container_name: rclone-app
restart: always
cap_add:
- SYS_ADMIN
devices:
- /dev/fuse:/dev/fuse
security_opt:
- apparmor:unconfined
volumes:
- /root/Docker/rclone/rclone.conf:/config/rclone/rclone.conf:ro
- /root/Docker/rclone/data:/data:shared # 重点::shared
command: mount my_cloud:/ /data --allow-other --vfs-cache-mode full
3.2 常见坑点:宿主机看不到文件?
这是 Docker 挂载最容易遇到的问题。即使容器内显示挂载成功,宿主机目录也可能是空的。
- 根本原因:Linux 默认的挂载传播是“私有”的。
- 解决方案:
- 在 Volumes 映射中必须添加
:shared标记。 - 如果启动报错
not a shared mount,请在宿主机执行:
sudo mount --make-shared /
4. 大传输场景:如何选择最优方案?
当你需要传输成百上千 GB 的资料时,不要使用挂载模式进行拷贝。
方案对比
| 方案 | 操作方式 | 优点 | 缺点 |
|---|---|---|---|
| 挂载拷贝 | cp /local /mnt/cloud |
操作直观,像本地盘 | 缓存压力大,网络波动易导致系统卡死 |
| 原生 Copy | rclone copy ... |
最稳定,支持重试,资源占用极低 | 无法直观预览文件 |
传输大量文件的“终极命令”
针对 WebDAV(尤其是 Alist/网盘)的稳定性优化:
nohup rclone --config ./rclone.conf \
copy "/local/path" my_cloud:/remote/path \
--transfers 1 \
--multi-thread-streams 0 \
--header "Overwrite: T" \
--no-modtime \
--ignore-existing \
-v > rclone.log 2>&1 &
--transfers 1:虽然慢,但避免了 WebDAV 频繁报错 405。--no-modtime:跳过时间戳修改,这是适配国内网盘的关键。
5. 总结
Rclone 的强大在于其灵活性:
- 日常轻度使用:选 Docker 挂载。配置好
:shared传播,直接像操作硬盘一样管理云端。 - 大批量迁移/备份:选 原生 Copy。配合
nohup放入后台,让它在低资源消耗下稳定完成任务。