威联通NAS折腾记录(二)
使用方式
文件存储
作为一台NAS,最基础的功能便是文件存储了,得益于新买的8T硬盘,我可以把之前十多年攒下来的所有数据资料都存起来了。
最先遇到的问题是如何创建划分共享文件夹。在上一篇文章发布后,我又重装过一次系统,把系统盘从机械硬盘变更到了新买的一块2T固态上,8T机械盘纯当作数据盘来使用。我原本打算还是跟重装系统之前一样,用Multimedia
文件夹来存放所有的多媒体文件(照片,音乐,视频),但是在数据盘新建文件夹时,总是提示我文件夹名称无效,如下图(图里是Web,实际上Multimedia是一样的):
尝试了半天,大概找到了规律,即使已经禁用了默认的共享文件夹,这些文件夹的名字还是被占用的状态不能用。所以我给多媒体文件夹起名叫MediaVault
。
照片备份
目前对我来说,NAS最重要的工作就是备份照片。照片属于最重要的数据,于是我参照遵循了数据备份的321原则,即3个数据副本,2个备份介质,1个异地备份:
- 3个数据副本 - 我这里严格意义上不是3个数据副本,而是加上原始数据一共三份,分别是手机上一份,NAS上一份,百度云上一份
- 2个备份介质 - NAS上的硬盘,以及百度云上的云存储
- 1个异地备份 - 本地NAS,异地百度云
威联通官方的备份程序HBS3支持百度云,而且经过测试,上传的速度还不错,平均下来有个20M每秒的样子,几个G的内容一会就上传完了。
使用官方的Qfile Pro
App(之前是QuMagie,后来改成Qfile了),可以方便地设置把手机上的哪些文件自动上传到NAS的哪个位置。我没有让他自动后台上传,而是每周定期启动App上传,个人习惯吧,这个App是支持后台上传,并且可以使用流量上传的(前提要配好外网访问)。
音乐和电影库
音乐和视频也在MediaVault
里存放,但是这些数据不是非常珍贵,即使丢失也不是不能接受的,所以就只在机械盘中存储了一份副本。
目录结构如下图:
游戏仓库
游戏仓库以及其他的杂项文件都放到了NasLocal
共享文件夹里面,这些数据同样不是非常珍贵,所以也只有一份副本。
之前有个想法是把Steam游戏库移动到NAS中,平时玩游戏就直接用远程硬盘中加载,由于我的台式机和NAS之间是用2.5G网线直连的,理论上可以跑满机械盘的速度,但我最终还是没采用这个方案,还是把游戏库都放到台式机本地了。原因是现在固态便宜了,电脑上装了2个2T的固态,空间容量已经完全够够的了,从SSD加载数据的速度也要比通过网络从机械盘里加载要快得多,所以NAS里就只做一个归档,存储一些之前收集的老游戏啥的。
监控存储
监控录像的存储文件夹为Surveillance
。
我之前买了个小米的云台摄像头,它支持把数据存储到本地NAS中,于是我给摄像头专门新建了一个用户叫做camerauser
,只能访问Surveillance
一个目录,确保最小权限。摄像头支持3个月滚动存储,支持删除最老的文件,但是我跑了这么久好像也没看到它有删除,不知道能不能用。。。另外,摄像头上传视频的即时性不太好,可能有一定的网络原因,即使设置了实时上传,查看NAS里的视频文件时好像上传总是会延迟几个小时。
Docker
威联通自带Docker,我扩展到20G内存一方面也是为了让Docker可以多跑几个服务考虑的。我这里主要跑了这些服务:
- HomeAssistant - 智能家居,这是个大项目,后面我要新开一个系列专门讲讲这个
- NodeRed - 为HA服务的,可以通过拉节点编程的方式创建自动化
- EclipseMosquitto - MQTT的一种实现,同样是为HA服务,用于跟其他IOT设备的通信
- BitWarden - 密码托管服务,把密码存在第三方服务商总觉得不太保险,所以就在自己家里自建了密码托管服务
外网访问
如果NAS只能在家庭局域网的环境访问的话,可玩性就低了很多,如果能在外面随时随地访问到家里的服务器,就可以实现随时备份手机照片,随时观看家里的电影,随时访问家里的共享文件等等。以及上面提到的HomeAssistant,就更需要可以在外网访问了,否则连家里发生了什么都不知道😂
ipv6方案:DDNS
最理想的情况肯定还是找网络服务提供商去申请公网IPv4,但是实际情况并不理想,问了电信客服,现在已经不能提供了,只能提供公网ipv6地址。其实ipv6也可以,现在ipv6的覆盖率已经很高了,至少手机流量是完全没问题的。
于是新建了NAS专用的域名,给这个域名配置DDNS,我的域名是阿里云的,使用这个Docker镜像,新建一个ddns的服务,定期更新域名解析。
配置好之后看下访问速度:
可以跑满家里宽带的上行带宽了。
ipv4方案:frp转发
然而ipv6+ddns的方案并不完美,在公司的网络环境下,是不支持ipv6的,此时就得换另外一种方案了:内网穿透。
内网穿透有很多方案,比如zerotier,frp等,我这里用的是frp的服务器中转模式,主要是不想额外安装客户端。
frp的安装就不再介绍了,看官方文档很容易。首先在云服务器上配置frps.ini
1 | [common] |
接下来在NAS端配置frpc.ini,在Docker里新建一个frp服务(参考这里)即可完成安装。
1 | [common] |
最后看下速度对比:
比ipv6直连还是满了很多,主要受限于中转服务器的带宽。
更多玩法
UPS
总担心家里突然停电,所以我还是买了个便宜的UPS:山特的TGBOX600,虽然说停电之后只能坚持16分钟,但是足够NAS做出反应并及时关机的时间了。
通过USB线接入NAS后的界面如下图:
在线视频(Kodi)
NAS里存了这么多电影,直接用SMB文件路径访问虽然也可以,但总感觉缺点仪式感,所以我调研了一下,发现了Kodi这个好东西。但具体的还没开始研究,有时间继续折腾~