









记录正在发生的一切
写在前面
记录我学习和实践中正在发生的一切
标签
AI工具 Anadius APNG C++ DeepSeek Docker Electron GIF GitHub Hexo Linux Markdown Mermaid mizuki Mizuki Office PAC Python Steam Tampermonkey The Sims 4 Visual Studio Windows SDK 个人成长 个体觉醒 产品设计 代理设置 加密 动效 博客写作 备份 安全 实用工具 工具 排坑 时间维度 服务部署 杂谈 权力反思 模拟人生4 汉化教程 油猴脚本 测试 温柔记录 游戏 游戏感悟 演示 漫画 独立开发 示例 视频 系统 网盘工具 网站维护 网络 网络代理 网络配置 自动化 自定义 自我觉察 软件推荐 软路由 远程控制 避坑 音乐播放器 黑神话悟空
站点统计
34
7
66
41,499
0 天
0 天前
一
二
三
四
五
六
日
778 字
4 分钟
从 Cloudflare R2 迁移文件到 Cloudreve 本地存储
本文记录了我如何将之前存储在 Cloudflare R2 上的模拟人生 4 模组文件,迁移回自己服务器本地,并接入 Cloudreve 实现统一管理和展示的全过程。
背景简介#
我原先将所有大体量图片与模组文件上传到 Cloudflare 的 R2 对象存储,配合 Cloudflare Worker 分发。然而,随着使用量增加与成本控制考虑,以及想实现更多定制化需求(比如 NSFW 控制、文件统计、资源多用途管理),我决定将文件统一迁移回本地存储,并通过 Cloudreve 搭建轻量化私有云盘进行统一管理。
服务器配置如下:
- CPU:4 核
- 内存:4GB DDR4
- 磁盘:系统盘 40G + 数据盘 60G
- 带宽:300Mbps
- 操作系统:CentOS 7 / Ubuntu 均适用
工具准备#
- rclone:用于远程访问 R2 并下载
- Cloudreve:本地私有云盘管理平台
- 宝塔面板:用于部署 LNMP 环境和 PHP 支持
- 浏览器 + VSCode:用于手动校验下载资源和链接替换
一、配置 rclone 并连接 Cloudflare R2#
1. 安装 rclone:#
1curl https://rclone.org/install.sh | bash2. 配置 remote#
1rclone config输入流程如下:
1n) New remote2name> r2mod3type> 6 (选择 Amazon S3)4provider> Cloudflare R25access_key_id> [你的 Access Key]6secret_access_key> [你的 Secret Key]7endpoint> https://[你的R2 Endpoint].r2.cloudflarestorage.com8region> auto⚠️注意事项:
- endpoint 必须填管辖区域的 R2 地址(不是 AWS 默认)
- 记得在 Cloudflare Dashboard 中为 API 创建 R2 Token,赋予 list、read 权限
3. 测试连接#
1rclone ls r2mod:kkdrive二、将文件同步至本地目录#
首先创建 Cloudreve 存储目录:
1mkdir -p /www/wwwroot/cloudreve/uploads/r2_import然后执行迁移命令:
1rclone copy r2mod:kkdrive /www/wwwroot/cloudreve/uploads/r2_import --progress如果你有多个子目录,请使用
sync而非copy并加上--create-empty-src-dirs参数
⚠️注意:确保服务器磁盘空间充足(我这里提前做了 df -h 检查)
三、配置 Cloudreve 识别本地存储#
在 Cloudreve 后台新建存储策略:
- 名称:R2导入
- 类型:本地存储
- 路径:
/www/wwwroot/cloudreve/uploads/r2_import/{uid}/{path} - Blob 文件命名:
{uuid}_{originname} - 允许的扩展名:留空表示不限制,也可以填写
zip,rar,7z,package,ts4script,png,jpg,mp4 - 分片上传大小:推荐 10-25MB
- 开启预分配硬盘空间(节省碎片)
如果非会员版 Cloudreve,建议用管理员账户绑定此策略(普通用户限制多)
四、校验与维护#
- 通过 Cloudreve 前台手动校验文件是否可访问
- 开启防盗链、访问日志等功能
- 清理旧的 R2 存储或 CDN 配置
- 更新 Hexo / WordPress 等博客中的引用链接
五、迁移 Hexo 中旧链接到新地址#
在 VSCode 中全局搜索:
1https://bu\.dusays\.com/[^"')\s]+(?=["')\s])执行替换:
1https://kkdrive.jisuk.top/$1若路径结构改变,可使用正则批量替换,或者写 Python 脚本匹配 hash 名
六、后续建议#
- 定期使用 rclone sync 更新 Cloudreve 文件
- 增加 Cloudreve 的 Redis 缓存加速
- 搭配 CDN(如又拍云)加速 Cloudreve 外部访问
- 整合上传按钮至 Hexo 或 Flarum 管理界面
如你一样追求自主控制内容、尊重创作者权益,Cloudreve + rclone + Flarum/Hexo 构建的本地云与社区一体化平台,是目前非常高效且轻量的解决方案。
从 Cloudflare R2 迁移文件到 Cloudreve 本地存储
https://blog.jisuk.top/posts/图床迁移/ 部分信息可能已经过时