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

相关推荐
dddwjzx3 小时前
嵌入式Linux C应用编程——tslib库的使用
linux·嵌入式
Huangjin007_3 小时前
【Linux 系统篇(三)】入门基础指令详解(三)
linux·服务器
言乐63 小时前
Python实现基本搜索引擎
java·linux·开发语言·python·搜索引擎
酷可达拉斯4 小时前
Linux操作系统-简单内核优化
linux·git·php
码上上班4 小时前
Filebeat课程
linux
weixin_516023075 小时前
LAMMPS(intel)的安装
linux·服务器
代码AC不AC5 小时前
【Linux】Socket编程UDP
linux·udp·socket编程
MMendex5 小时前
Nginx_day4——uWSGI,灰度发布,网站限流限速,Nginx跨域
运维·nginx
小小测试开发5 小时前
RAG检索评测实战:9种架构对比与自动化评估框架搭建
运维·人工智能·python·自动化
zzz_23685 小时前
智慧社区项目全维度测试报告:功能、接口、自动化与性能验证
运维·自动化