前言
最近在在研究如何对NAS进行备份,在网上找了很久,基本上是通过Hyper Backup备份到移动硬盘备份或者另一台群晖NAS。但这并不能满足我的需求:
- 备份到移动硬盘:移动硬盘的容量一般在1T~2T,容量基本满足需求,但是无法移动存储,且存储介质不能保证高可靠,一旦移动硬盘故障,就会导致数据丢失。
- 备份到另一台NAS:备份数据高可靠,但是费钱,而且异地备份需要有第二个家,就更缺钱了。
因此调研了一下国内云厂商的对象存储(Object Storage Service, OSS),能够提供高可靠存储且价格勉强能够接受。一般情况下,100元/年可以购买到约100G/年的存储空间,下图是京东云的OSS价格

综上所属,我最终选择了京东云的OSS,并购买了150GB容量+50GB的下行流量。
就在我购买后的一个月,我发现了更廉价的异地备份方案,就是通过阿里云盘进行备份数据。
阿里云盘介绍
阿里云盘是阿里云推出的一款不限速的云盘,用户默认空间是500GB,足够大多数用户使用。
阿里云盘支持分享,不过分享之前需要进行实名认证,还是比较讨厌的。如果要分享一些不太合适的文件/视频,建议不要使用阿里云盘分享。
阿里云盘还支持做任务增加容量,不过增加的容量一般是有有效期的(一般是1年),目前我的云盘容量大约5TB,足够用很长时间了。
现在通过邀请注册阿里云盘,还可以额外获得500GB容量(有效期1年)。
基于阿里云盘搭建WebDAV
目前有两个开源项目可以把阿里云盘变成WebDAV,通过WebDAV接口就可以让群晖NAS进行备份,黑白群晖均支持。
仓库地址:
从我的使用体验来看,zxbu/webdav-aliyundriver比较稳定,但是比较吃资源,容器正常状况下大约占用300MB+内存。messense/aliyundrive-webdav比较轻量,运行时占用约50MB。
两者的配置方法是类似的,都是需要通过Docker,如果没有Docker的用户需要到套件中心中进行安装。若NAS本身不支持Docker,可以将容器部署在局域网的其他设备中国,如PC或者路由器等。
PS: 以下操作全部是基于zxbu/webdav-aliyundriver,messense/aliyundrive-webdav的操作也是相似的。
下载Docker镜像
打开Docker套件,选择
注册表,在右上角的搜索框中输入webdav-aliyundriver或者aliyundrive-webdav,在搜索结果中选择对应的镜像进行下载。

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

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

在弹出高级设置界面中,勾选
启用自动重新启动。

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

选择
端口设置标签,本地端口是你后续要访问webdav的端口,可以自己随意设置,容器端口必须是8080,协议是TCP。
选择
环境标签,添加以下四个环境变量:变量名:
ALIYUNDRIVE_AUTH_USER_NAME,WebDAV访问时需要填写的用户名变量名:
ALIYUNDRIVE_AUTH_PASSWORD,WebDAV访问时需要填写的密码变量名:
ALIYUNDRIVE_REFRESH_TOKEN,登陆阿里云盘的token,获取方法可以参考:通过浏览器获取Refresh Token变量名:
TZ,值:Asia/Shanghai,设置时区为北京时间
点击
应用完成容器配置
启动容器
点击
下一步,再点击完成即可启动容器。

设置Hyper Backup
如果没有Hyper Backup的用户需要到
套件中心中进行安装。
创建备份任务
打开Hyper Backup套件,点击左上方加号,选择
数据备份任务

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

配置WebDAV文件服务器信息
服务器地址:如果在NAS的Docker中部署的WebDAV,就填写
http://127.0.0.1:8080,端口为之前启动Docker时对外暴露的端口。若在外部Docker部署的WebDAV,则需要填写对应服务器的IP地址和端口。用户账号:启动容器时配置
ALIYUNDRIVE_AUTH_USER_NAME环境变量对应的值密码:启动容器时配置
ALIYUNDRIVE_AUTH_PASSWORD环境变量对应的值文件夹:选择一个阿里云盘中的文件夹作为备份地址
目录:输入NAS备份目录名称

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

选择需要备份的应用套件,注意,有些套件会要求必须备份某些共享文件夹。

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

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

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

结语
阿里云盘的容量速度还是非常不错的,完美的平衡了容量和价格,并且是高可靠异地存储,哪怕NAS机械故障后,也能找回数据。
数据无价,大家保存好自己的数据,一旦丢失,就再也找不回来了。