在 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

  1. 输入 n (New remote),名字起为 cf-r2-0

  2. 类型选择 s3

  3. 提供商 (provider) 选择 Cloudflare

  4. env_auth 输入 false

  5. 输入你的 access_key_idsecret_access_key

  6. region 选择 auto

  7. endpoint 输入 Cloudflare 提供的专属 URL。

  8. 其他选项默认(回车)即可。

2. 配置 Minio

  1. 输入 n,名字起为 minio

  2. 类型选择 s3

  3. 提供商选择 Minio

  4. 输入你的 access_key_idsecret_access_key

  5. region 留空或选 us-east-1

  6. endpoint 输入你的 Minio 服务器地址(例如 http://192.168.1.100:9000)。

  7. 其他默认。


📂 第四步:挂载为本地硬盘

为了方便访问,我们先创建挂载点:

复制代码
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)

为了不用每次重启电脑都敲命令,我们可以为每个挂载点创建一个服务文件。

  1. 创建服务文件(以 R2 为例):

    sudo nano /etc/systemd/system/rclone-r2.service

  2. 粘贴以下内容 (注意替换 <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

  3. 启动并使服务生效

    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 强制卸载。

相关推荐
AlfredZhao14 小时前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐2 天前
Linux内存扩容指南
linux
zylyehuo2 天前
Linux 彻底且安全地删除文件
linux
用户805533698033 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297913 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
乘云数字DATABUFF3 天前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
Web3探索者4 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo5 天前
Linux系统中网线与USB网络共享冲突
linux
荣--5 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森5 天前
动手实战学 Docker — 从零到集群编排完全指南
运维