把鸡蛋放在通了电的篮子里——NAS折腾 vol.1

很久之前就想拥有一台NAS,把家里人所有的照片都存进去,这样父母和我自己就不用再考虑手机存储空间不够用的问题了。但是国内运营商很早就不再给分配外网IP地址,做内网穿透又比较麻烦;加之考虑数据安全问题,多盘位组RAID必不可少,而多盘位的机器又比较贵,搞不明白NAS是什么东西的父母没有给批预算;家里放一台UPS的安全问题也需要考虑。总之种种原因下一直没有实践过。

临近回德国之前突然想起来德国这边的运营商应该给了外网IP,所以决定弄一台小猫盘带来试一试。从淘宝上购买了洗白群晖的机器,带电源,成色也很新(嗯,再新也是电子垃圾),关键是价格只要138。这两天收拾完行李就拿出来玩,群晖的系统上手非常快,孩子很满意。




本文主要介绍NAS是什么,猫盘又是什么(不是装着猫猫的盘子)。




NAS

NAS是什么

Network Attached Storage,网络附加存储,缩写NAS。与直接存储设备DAS相对,是独立于应用服务器外的专门用于存储数据的设备,其操作系统和应用程序都服务于文件的访存和管理功能。

家用NAS的应用场景

家用的NAS构建了家庭数据中心,应用场景非常丰富。例如,可以把父母和自己手机中的照片定期上传,减少对手机存储空间的占用,同时也方便了日后查看和分享。以前用胶片机拍照时,我们家会把冲洗的照片都装进相册放在一个抽屉里,偶尔拿出来翻一翻;现在有了NAS,在家中拿着平板电脑就可以查看所有的照片。

另外,实现外网访问的NAS充当了私有云的角色,父母可以把公司电脑上没有处理完的文件上传到家里的NAS,回家后使用自己的电脑、或者是在出差路上用平板电脑都可以继续编辑。而我习惯把重要文件在多个地方备份,除了百度网盘、OneDrive、Google Drive以外又多了一个选择。

日后在家庭影院的时候,NAS也可以发挥很大用处。通过万兆内网把NAS连接到流媒体播放机上,下载和存储资源交给NAS,取代了多盘位大体积的硬盘播放机;而解码则交给流媒体播放机处理,硬件解码更能满足家庭影院对画质的需求。

家用NAS系统中的设备

想要在家中组建一个安全可靠的NAS系统,除了NAS主机以外还需要一些额外的设备来支持。

  1. 构建局域网环境:目前大多数NAS主机都至少带有一个及以上的千兆以太网口(入门级的万兆网口也已经很多了),为了充分发挥他的性能,千兆交换机是必不可少的。布线上一般选择超五类及以上的网线,ps. 最近看了不少装修埋线的文章,感觉预埋光纤也是很有前瞻性的选择。
  2. 广域网的设备:带有千兆网口的路由器。以及最好选择能分配外网IP的网络供应商…
  3. 不间断电源:除了磁盘阵列以外,UPS也是保护数据安全必不可少的组成部分,毕竟没有人能保证自己家里不突然停电。使用UPS的通信端口连接NAS,可以实现在断电切换后通知NAS在一定时间内关机,防止因为UPS电池耗尽而再次导致异常关机。




关于猫盘

猫盘和星际蜗牛一样是淘汰矿机,配置和群晖入门级机器DS120j基本一样,刷入群晖的系统之后可以作为NAS使用。

处理器 Marvell ARMADA A3720 1.0Ghz 2xCortex-A53
RAM 512MB DDR3L
ROM 8GB eMMC
硬盘 SATA3.0 支持2.5寸HDD或SSD
网口 Marvell 88e1512 千兆有线网口

我手里的这一块是所谓内置了洗白码的版本,白群晖的好处主要在于可以使用QuickConnect,这是群晖自带的内网穿透应用,然而速度极慢,在能直接用外网IP访问时可以忽略。国内玩家大多数都没有外网IP地址,所以为了使用QC,需要把黑群晖洗白,有些商家会直接提供带有洗白码的版本。

小猫盘内部有一个2.5寸硬盘的SATA接口,HDD和SSD都可以用,我用的是上一台笔记本里拆出来的128GB SSD,来自闪迪。这块固态之前一直插在硬盘盒里,原本是打算拿来做一个便携的Linux系统的,结果装Archlinux两次都失败了,原因好像在于USB接口在写入的时候出了问题。后面就扔在一边没有管过它,这次终于在猫盘上继续发挥价值了。用SSD的好处是不用担心突然掉电对硬盘造成不可逆的损坏,但还是应该注意正确开关机保证数据安全。

机器内部预留了USB和UART的引脚,前者可以外界存储介质,比如U盘或者移动硬盘;后者加上一根TTL线也可以用来刷系统。外部只有一个千兆网口和电源接口,电源使用5V3A。




群晖系统刷入和使用

猫盘的黑群晖初始化

根据商家推荐下载DS120j的6.2.3固件(DSM,Diskstation Manager),电脑端安装Synology Assistant,把猫盘有线接入同一路由器。软件发现猫盘的ip之后,同意用户许可协议,会自动打开浏览器进行猫盘的初始化设置。

在安装DSM的界面选择手动安装,找到之前下载的固件文件,自动安装的话是最新版本,对黑群晖来说可能不太友好。

安装完系统会自动重启,重启后设置管理员账户,安装需要的套件等等,完全不牵涉到命令行操作,普通用户也能完成初始化的全部操作。

群晖的套件

以上是我安装的套件。File Station提供文件管理,对应手机端的DS File,是NAS最基础的功能。查看文件内容时根据文件类型使用不同套件:

  • 音频:Audio Staion,提供按文件夹、专辑、艺人、风格等分类方式,放在窗口左侧的边栏(这么简单的事为什么某云做不到呢)。网络电台方面还提供了SHOUTcast,可以按风格收听。

    (这篇文章就是听着ROCK ANTENNE写的。)
  • 视频:媒体服务器,其实是图片、音频、视频都可以解码的工具,但是浏览其他媒体都有更好的选择,而且鉴于猫盘这一点可怜的性能,平时看电影看剧并不打算用它来解码视频做串流播放,所以这个套件的作用应该只在于看一些手机相册里的短视频。局域网视频播放的方案在后面介绍。
  • 照片:Moments,群晖套件里做得很精致的一款照片查看器应用,支持图片和视频格式,但是苹果录制的MOV格式视频好像不支持,只显示封面无法播放,后面研究一下怎么做自动转码。有自己的手机端APP,看照片很方便,MOV视频和网页端一样无法播放,但是会自动唤起DS File应用进行播放。
  • PDF文件:PDF查看器,重要的文档可以在猫盘上放一份,方便出门时查看和分享。

其他的应用类套件还包括:Cloud Sync、Synology Drive Server。

Cloud Sync用于与远程存储服务进行同步,比如除了NAS外,我还在使用百度网盘、Google Drive、Microsoft OneDrive等,这个套件可以设置同步文件夹,将该文件夹下的内容进行双向备份。也就是说,本地上传到这个文件夹内的文件会被自动同步到云端存储,而云端移动到或者保存到这个共享文件夹下的文件也会被NAS自动下载。

通过设置可以指定工作计划,在一周内的哪一天哪个时间段进行同步,精确到小时。这个应用通过轮询云端共享文件夹下内容来确定是否产生了更新,轮询期也可以手动设置,默认60s。

通过这个应用就可以实现自动下载百度网盘中的影视资源。从Cloud Sync中登录百度网盘账号并授权操作,设置共享文件夹即可。共享文件夹位于百度网盘的根目录下“我的应用数据”中,在NAS上可以访问到的根目录就在这里。




通过局域网播放NAS中的视频

前面说到我不想用猫盘做解码进行DLAN或UPnP串流播放,所以在局域网中共享的是视频文件本身。群晖提供了很多种文件服务的实现方法,包括:

  • SMB(Service Message Block,服务器消息块)
  • AFP(Apple Filing Protocol,苹果归档协议)
  • NFS(Network File System,网络文件系统)
  • FTP(File Transfer Protocol,文件传输协议)
  • FTPS(基于SSL/TLS的FTP)
  • SFTP(SSH File Transfer Protocol,基于SSH的FTP)

目前使用的是SMB进行文件共享,关于几种文件服务的区别和特点日后研究一下再单独写一篇文章。

打开控制面板-文件服务,勾选“启用SMB服务”即可,下方给出了Windows和Mac系统中访问共享文件夹的地址。

在视频播放器端的文件系统里找到网络文件共享的选项,应该就可以看到NAS了。这样一来,结合Cloud Sync的自动同步功能,可以实现保存资源到网盘共享目录之后,过一段时间自动下载到NAS,这个目录又可以被播放器通过SMB访问到,就实现了局域网的视频播放。

目前存在的问题包括:

  1. 视频播放过程中出现过跳帧,而且较为频繁,考虑更换其他的协议(NFS)来做文件共享。
  2. 百度网盘下载到NAS时,即使开了会员仍然有限速,应该是为了防止某一个用户长时间使用自动下载工具占用带宽而设置的。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注