当前位置: 首页 > java >正文

飞牛Nas每天定时加密数据备份到网盘,基于restic的Backrest笔记分享

1. 前言

受前辈“RAID≠备份”的经验,也考虑到硬盘故障时 RAID 重建步骤繁琐,我干脆放弃阵列,直接单盘运行。
重要数据则加密后上传至大厂云盘:一方面文件对外不可读,规避扫描和谐;另一方面依靠大厂的数据安全保护,也算是异地备份吧。

2. 选工具

以下工具都都支持加密快备份,即大文件会分为多个小文件加密:

  • Duplicati:Web 界面支持中文,GitHub 上有 13k star。用过半年,备份经常报错,界面显示信息没有backrest全面,所以我转用了 Backrest。

  • Backrest:基于 Restic(GitHub 30k star,只有命令行),支持定时计划的备份和维护,但Web 界面仅英文,不过英文不多,整体感觉更稳定可靠,好用一些。

    • 国内平台关于这个工具的使用教程寥寥无几,因此记录一下教程分享给飞牛用户
    • 期待飞牛备份能出加密功能,但估计得迭代很久才能达到少bug版本

3. 选网盘

  • 123网盘

  • 阿里云盘

    我试了123网盘和阿里云盘,在没开通会员情况下,对上传没有限速,都能跑满上传带宽。

    在需要下载数据时候再开个VIP就行,平时免费异地备份

4. 我的数据分类

  • 重要文件夹(存储在机械硬盘)

    • 录音
    • 音乐
    • 照片
    • 文档
    • 软件
    • 数据
    • docker_data
  • 非重要文件夹

    • 电影

    • 电视剧

    • 动漫

  • docker_data(存储固态硬盘,存储各种容器的数据,例如思源笔记)

使用飞牛自带的备份,自动备份其他重要数据到重要文件夹中,例如docker持久化数据、zotero、Win系统备份(以前喜欢折腾,重装过很多次,累了,实用为上。使用傲梅定时备份C盘数据(所有软件都装C盘))

在这里插入图片描述
在这里插入图片描述

5. 挂载网盘

以备份到123盘为例,需要飞牛Nas中挂载了123盘

在这里插入图片描述
在这里插入图片描述

在挂载的123云盘下,创建fnnas_backrest文件夹,复制原始路径,例如/vol02/1000-1-6dd3221b/fnnas_backrest

6. docker compose安装backrest

services:backrest:image: garethgeorge/backrest:latestcontainer_name: backresthostname: backrestvolumes:- ./backrest/data:/data- ./backrest/config:/config- ./backrest/cache:/cache- /vol02/1000-1-6dd3221b/fnnas_backrest:/123pan_fnnas_backrest	# 映射挂载的网盘		——》容器中- /vol2/1000/重要文件夹:/重要文件夹:ro   							# 映射需要备份的文件夹	——》容器中,只读environment:- BACKREST_DATA=/data- BACKREST_CONFIG=/config/config.json- XDG_CACHE_HOME=/cache- TMPDIR=/tmp- TZ=Asia/Shanghaiports:- "9898:9898"restart: always

7. backrest设置

7.1 开启Web验证登录

在这里插入图片描述

7.2 添加存储池

在这里插入图片描述

7.3 定时计划任务

在这里插入图片描述

7.4 备份出错,qq邮箱通知

登录qq邮箱,在账号与安全中,生成授权码

在这里插入图片描述
计划任务中:
在这里插入图片描述
在这里插入图片描述

smtp://邮箱地址:授权码@smtp.qq.com:465/?fromaddress=邮箱地址&fromname=Backrest&toaddresses=收件人邮箱地址&subject=Backrest%20Backup%20Error

如果显示报错:error closing session: short response: 不影响使用,暂未知解决方法

8. 回滚数据

在这里插入图片描述

9. 参考

  1. 适合全NAS系统的低成本云端加密块备份方案,Backrest(restic)教程分享

http://www.xdnf.cn/news/19170.html

相关文章:

  • C# WinForms 使用 CyUSB.dll 访问 USB 设备
  • 第6.4节:awk语言 for 语句
  • Java ThreadLocal为什么要用弱引用
  • 2025最新:Salesforce认证考试—考试中心预约全流程
  • 香港电讯为知名投资公司搭建高效、安全IT管理服务体系
  • GraphRAG 知识图谱核心升级:集成 langextract 与 Gemini ----实现高精度实体与关系抽取
  • 营业执照识别技术应用OCR与深度学习,实现高效、精准提取企业核心信息,推动数字化管理发展。
  • Linux时间处理函数
  • 机器学习(三)sklearn机器学习
  • 第二阶段WinForm-11:自定义控件
  • Java全栈工程师的面试实战:从技术细节到业务场景
  • 在八月点燃AI智慧之火:CSDN创作之星挑战赛开启灵感盛宴
  • 04.《VLAN基础与配置实践指南》
  • Django Admin 管理工具
  • NSSCTF-[NISACTF 2022]string_WP
  • 身份证实名认证API集成—身份核验接口-网络平台安全合规
  • mitmproxy的使用初试
  • windows中Qwen3‑Coder 与 Claude Code 搭配使用
  • 《UE5_C++多人TPS完整教程》学习笔记45 ——《P46 待机与跳跃动画(Idle And Jumps)》
  • 【完整源码+数据集+部署教程】植物病害检测系统源码和数据集:改进yolo11-EMSCP
  • Lombok vs Java Record:谁才是未来?
  • week5-[二维数组]翻转
  • Node.js 的流(Stream)是什么?有哪些类型?
  • DBeaver 的 PostgreSQL 驱动包默认存储位置
  • 计算机网络知识--对称加密、非对称加密和数字证书详解
  • “上门做饭”平台的核心技术栈与运营壁垒是什么?
  • OpenCV之霍夫变换
  • Linux系统部署:Certbot 实现 Nginx 自动续期部署 Let‘s Encrypt 免费 SSL 证书
  • css三角形
  • 万字解析RAG(检索增强生成)系统的构建与优化,从基础架构逐步深入到高级技术