DH3G游戏资讯网

技术向:如何通过阿里云盘备份群晖 NAS 数据

发表于:2024-11-21 作者:创始人
编辑最后更新 2024年11月21日,一、前言笔者最近在研究如何对 NAS 进行备份,在网上找了很久,方法基本上是通过 Hyper Backup 备份到移动硬盘备份或者另一台群晖 NAS。但这并不能满足我的需求:备份到移动硬盘:移动硬盘的

一、前言

笔者最近在研究如何对 NAS 进行备份,在网上找了很久,方法基本上是通过 Hyper Backup 备份到移动硬盘备份或者另一台群晖 NAS。但这并不能满足我的需求:

  • 备份到移动硬盘:移动硬盘的容量一般在 1T~2T,容量基本满足需求,但是无法移动存储介质,且存储介质不能保证高可靠,一旦移动硬盘故障,就会导致备份数据全部丢失。

  • 备份到另一台 NAS:备份数据高可靠,但是费钱,而且异地备份需要有第二个家,就更费钱了。

因此,笔者调研了国内云厂商的对象存储(Object Storage Service, OSS),其能够提供高可靠存储,同时价格勉强能接受。一般情况下,100 元 / 年可以购买到约 100G / 年的存储空间,下图是京东云的 OSS 价格,如果只是备份关键数据(论文、合同、证件照片等,小姐姐就暂时没法备份了)勉强能够接受。

综上所述,我最终选择了京东云的 OSS,并购买了 150GB 容量 + 50GB 的下行流量。

不过就在我购买一个月后,我发现了更廉价的异地备份方案,就是通过阿里云盘进行备份数据。

二、阿里云盘介绍

  • 阿里云盘是阿里云推出的一款不限速的云盘,用户默认空间是 500GB,足够大多数用户使用。

  • 阿里云盘支持分享,不过分享之前需要进行实名认证。

  • 阿里云盘还支持做任务增加容量,不过增加的容量一般是有有效期的(一般是 1 年,但是还是很讨厌),目前我的云盘容量大约 5TB,而且作为内测用户,有 3T 的永久容量,足够用很长时间了。

三、基于阿里云盘搭建 WebDAV

目前有两个开源项目可以把阿里云盘变成 WebDAV,通过 WebDAV 接口就可以让群晖 NAS 进行备份,黑白群晖均支持。

仓库地址:

  • zxbu/webdav-aliyundriver

  • messense/aliyundrive-webdav

从我的使用体验来看,zxbu/webdav-aliyundriver 比较稳定,但是比较吃资源,容器正常状况下大约占用 300MB 以上的内存。messense/aliyundrive-webdav 比较轻量,运行时占用约 50MB 内存。

两者的配置方法是类似的,都是需要通过 Docker,如果没有 Docker 的用户需要到套件中心中进行安装。若 NAS 本身不支持 Docker,可以将容器部署在局域网的其他设备中,比如 PC 或者路由器等支持 Dockers 的设备中,最好保证跟 NAS 处于一个局域网中,且有线连接,不然可能会影响文件传输速度。

PS:以下操作全部是基于 zxbu/webdav-aliyundriver,messense/aliyundrive-webdav 的操作也是相似的。

1. 下载 Docker 镜像

打开 Docker 套件,选择注册表,在右上角的搜索框中输入 webdav-aliyundriver 或者 aliyundrive-webdav,在搜索结果中选择对应的镜像进行下载。

2. 启动镜像

打开 Docker 套件,选择映像,并选择对应的镜像,点击上方启动按钮。

3. 配置镜像

根据自己的需要设置容器的名称,并且点击下方的高级设置

在弹出高级设置界面中,勾选启用自动重新启动,保证NAS重启后会自动启动对应的容器。

选择存储空间标签,点击添加文件夹,在弹出的界面中可以选择 / 创建一个空文件夹作为容器的配置文件夹。并将文件夹挂载到 /etc/aliyun-driver/,一定不要勾选只读。

选择端口设置标签,本地端口是你后续要访问 webdav 的端口,可以自己随意设置,容器端口必须是 8080,协议是 TCP

选择环境标签,添加以下四个环境变量:

    • 变量名:ALIYUNDRIVE_AUTH_USER_NAME,WebDAV 访问时需要填写的用户名。

    • 变量名:ALIYUNDRIVE_AUTH_PASSWORD,WebDAV 访问时需要填写的密码。

    • 变量名:ALIYUNDRIVE_REFRESH_TOKEN,登陆阿里云盘的 token,获取方法可以参考:通过浏览器获取 Refresh Token。

    • 变量名:TZ,值:Asia/Shanghai,设置时区为北京时间。

点击应用完成容器配置。

4. 启动容器

点击下一步,再点击完成即可启动容器。

四、设置 Hyper Backup

PS: 如果没有安装 Hyper Backup 的用户需要到套件中心中进行安装。

1. 创建备份任务

打开 Hyper Backup 套件,点击左上方加号,选择数据备份任务

备份目标选择文件服务器 -- WebDAV,并点击下一步。

配置 WebDAV 文件服务器信息:

  • 服务器地址:如果在 NAS 的 Docker 中部署的 WebDAV,就填写 http://127.0.0.1:8080,端口为之前配置 Docker 时填写的本地端口。若在其他设备部署的 WebDAV 镜像,则需要填写对应服务器的 IP 地址和端口。

  • 用户账号:启动容器时配置 ALIYUNDRIVE_AUTH_USER_NAME 环境变量对应的值。

  • 密码:启动容器时配置 ALIYUNDRIVE_AUTH_PASSWORD 环境变量对应的值。

  • 文件夹:选择一个阿里云盘中的文件夹作为备份地址。

  • 目录:输入 NAS 备份目录名称。

选择需要备份的共享文件夹,可以按子目录选择 / 排除,也可以配置文件过滤器进行自定义过滤。

选择需要备份的应用套件。需要注意的是:有些套件会要求必须备份某些共享文件夹,如 Audio Station 会要求备份 homes 和 music 两个共享文件夹的全部数据

设置备份任务的执行周期,强烈建议开启客户端加密,因为不确定阿里云盘是否会扫描你的备份数据,密码一定要记牢,一旦丢失就无法找回

设置备份版本替换规则,建议使用 Smart Recycle,会自动根据时间保留各个版本,时间距离越近,保留的版本越多,时间距离越远,保留的版本越少。

2. 开始备份

点击立即备份,就开始执行备份任务了,可以在阿里云盘中看到对应备份文件。

  1. 五、结语

阿里云盘的容量速度还是非常不错的,完美的平衡了容量和价格,重要数据、喜欢的剧集以及小姐姐都可以完整备份到云端了,并且是高可靠异地存储,哪怕 NAS 机械故障后,也能找回数据。

数据无价,诸位IT之家家友一定要保存好自己的重要数据,一旦丢失,就再也找不回来了。

参考

  • zxbu/webdav-aliyundriver

  • messense/aliyundrive-webdav

2022-05-06 15:31:31
0