在 Linux上配置 rclone,将 Cloudflare R2 和 Minio 挂载为本地硬盘。
🛠️ 第一步:安装 rclone
大多数 Linux 发行版的仓库里都有 rclone,但建议使用官方脚本以获取最新版:
sudo curl https://rclone.org/install.sh | sudo bash
验证安装:rclone version
🔑 第二步:获取 API 凭证
在配置之前,你需要准备好以下信息:
| 信息 | Cloudflare R2 | Minio |
| Endpoint | https://<accountid>.r2.cloudflarestorage.com |
http://your-ip:9000 |
| Access Key ID | 在 R2 控制台创建 API 令牌获得 | Minio 控制台生成 |
| Secret Access Key | 在 R2 控制台创建 API 令牌获得 | Minio 控制台生成 |
⚙️ 第三步:配置 rclone (rclone config)
输入 rclone config 进入交互式配置界面。
1. 配置 Cloudflare R2
-
输入
n(New remote),名字起为cf-r2-0。 -
类型选择
s3。 -
提供商 (provider) 选择
Cloudflare。 -
env_auth输入false。 -
输入你的
access_key_id和secret_access_key。 -
region选择auto。 -
endpoint输入 Cloudflare 提供的专属 URL。 -
其他选项默认(回车)即可。
2. 配置 Minio
-
输入
n,名字起为minio。 -
类型选择
s3。 -
提供商选择
Minio。 -
输入你的
access_key_id和secret_access_key。 -
region留空或选us-east-1。 -
endpoint输入你的 Minio 服务器地址(例如http://192.168.1.100:9000)。 -
其他默认。
📂 第四步:挂载为本地硬盘
为了方便访问,我们先创建挂载点:
mkdir -p ~/Cloud/R2
mkdir -p ~/Cloud/Minio
手动挂载测试
使用以下优化后的命令进行挂载:
# 挂载 R2
rclone mount cf-r2-0: ~/Cloud/R2 --vfs-cache-mode full --vfs-cache-max-size 10G --daemon
# 挂载 Minio
rclone mount minio: ~/Cloud/Minio --vfs-cache-mode full --vfs-cache-max-size 10G --daemon
参数解释:
--vfs-cache-mode full: 允许像普通硬盘一样任意读写、打开文件(非常重要)。
--vfs-cache-max-size 10G: 限制缓存大小,防止撑爆你的物理硬盘。
--daemon: 后台运行。
🚀 第五步:设置开机自动挂载 (Systemd)
为了不用每次重启电脑都敲命令,我们可以为每个挂载点创建一个服务文件。
-
创建服务文件(以 R2 为例):
sudo nano /etc/systemd/system/rclone-r2.service -
粘贴以下内容(注意替换
<YOUR_USER>为你的用户名):
[Unit]
Description=Rclone Mount R2
After=network-online.target
[Service]
Type=simple
User=<YOUR_USER>
ExecStart=/usr/bin/rclone mount cf-r2-0: /home/<YOUR_USER>/Cloud/R2 \
--vfs-cache-mode full \
--vfs-cache-max-size 10G \
--vfs-read-chunk-size 64M \
--allow-other
ExecStop=/bin/fusermount -u /home/<YOUR_USER>/Cloud/R2
Restart=on-failure
[Install]
WantedBy=default.target
-
启动并使服务生效:
sudo systemctl daemon-reload
sudo systemctl enable rclone-r2
sudo systemctl start rclone-r2
(Minio 的服务配置同理,只需修改名称和路径即可。)
⚠️ 注意事项
-
流量成本:Cloudflare R2 虽然下载免费(B Class 操作限额内),但 Minio 如果部署在云服务器上,挂载使用会消耗服务器下行流量。
-
权限问题:如果在非家目录挂载,需要在
/etc/fuse.conf中把user_allow_other前面的#号删掉。 -
卸载:如果挂载卡死,使用
fusermount -u ~/Cloud/R2强制卸载。
本文来自博客园,作者:木子欢儿,转载请注明原文链接:https://www.cnblogs.com/HGNET/p/19815734

浙公网安备 33010602011771号