现状
家里存在一些的替换下来的硬盘,从500MB到500GB不等。这其中大多数自带操作系统,包括Windows 98/XP/7等等,纯粹的备份盘不多。而手头正在使用的电脑中,硬盘中的文件也是塞得满满当当的。十分有必要去整理一下,并通过共享的方式来解放电脑的生产力。
原则
- 分级:按照文件种类、大小、重要性和使用频率进行分类、并进行分级存储。
- 集中:即构建中心化的NAS设备进行网络分发。
- 易用:构建资料检索数据库。
- 归档:将不常用的项目进行归档后存储。
- 智能:需要多特性文档进行特殊方式检索。
分类与分级
我用SpaceSniff来检索了电脑中的文件占用情况,找出以下几类文档:
- 视频文件:包括电影(包括日本大河剧、经典蓝光高清多音轨电影)、电视剧、幼教、技术类教程等等。还有日常手机拍摄视频。随着高清、4K、VR和5G时代的到来,视频将是最占容量的内容。
- 图像文件:最大宗的就是日常照片,产品照片等,如果爱好摄影,那么Raw图像文件占据的空间仅次于视频文件,且手机的使用也会使得这两类文件有一定的重叠。
- 音频文件:主要是音乐,根据个人品味,可能有个500GB也足够了。
- 工程文件:包括各类工程的教程、文档、设计文件、编译工具、源代码等等。
- 系统文件:包括各类操作系统的ISO Image,虚拟机,如果从事的是技术类工作,这方面容量也不会少了。
分清楚了文件种类,接下来要按照不同特性分别存储到不同种类的媒体中去,包括:
- 本机硬盘;
- 公网网络存储;
- 私网NAS硬盘;
- 备份硬盘;
- DVD刻录盘;
- 磁带(没错,阿里云之类的云端存储也有磁带机选项,容量很大,但是无法实时检索,适用于归档)。
集中存储
总的原则是使用NAS设备。但是现有的NAS设备功耗其实挺大的。有时候我也在想网络存储之所以在2016年间从互联网公司业务中裁撤,还是因为成本太高:能耗和带宽成本太高。能耗成本要高于硬件成本,再加上带宽费用,决定了这是一个很难盈利的业务。
我在家中则采用Linux盒子来扮演NAS的角色。相比路由器、树莓派等,国内OrangePi Lite2中非常合适作为NAS的主板,自带USB3.0,以及USB3/SATA3桥接芯片,而且往往带有红外遥控、HDMI、音频等接口,适合直接播放音视频媒体。另外一款江波龙的SoC主板也适合做NAS,采用MIPS Xburst内核,可惜缺乏独立的主板。基于x86(ATOM)的多SATA接口主板也非常适合用来做NAS,并兼任媒体播放。通过SAMBA/UPnP/DLNA等协议来实现文件和音视频文件播放。
这里可以通过主机控制USB和PMU来管理多个硬盘的供电,已实现远程的多个硬盘的挂载、卸载和待机。毕竟硬盘还是非常耗电的。
易用与检索
在家庭情况下,往往硬盘不是以RAID形式,或者以大数据的形式构成网络存储,那么需要手动维护一个硬盘文件检索系统,这一点可以参考Everything/FSearch的方式来做,构成一个简单的索引系统,并维护在一个随时可用的数据库中,即便是SQLite也可以,只需要记录文件名、路径、日期即可。还必须预留标签、散列值的字段。
归档
我从事的EE/IoT行业,需要对IC/MCU/MPU/Edge/Cloud/BD/AI等各个领域进行广泛地了解,从而积累了大量的教程、工具、文档、外部资料等。这些都需要分门别类地归档,这其中存在大量的冗余(空间不怕冗余,害怕浪费时间)。
而许多工程、项目、产品,开发完毕后使用频率很低,需要将其归档、压缩后按照类别时间保存、或者刻盘。而一些工程往往还有开发工具依赖项,则需要将工具包和许可证一起归档。
智能
针对文本、图像、音频、视频,往往需要智能化的检索。这方面需要利用到一些特殊的散列算法,并进行智能化归档。也是图像识别技术的数据来源和处理标的。
需要多少硬盘
从Windows 98/Windows XP/Windows 7/Windows 10开始,各种容量的硬盘可以分别保存一二。其中一个带系统,另外若干作为纯粹的数据盘。当然也可以使用虚拟机来实现操作系统的保存。
- 视频,容量最大,但使用效率较低,20TB;
- 图像,容量次之,使用效率不高,2TB;
- 音频,容量中等,使用效率较高,500GB;
- 系统,容量中等,使用效率较低,500GB;
- 工程,容量中等,使用效率最高,500GB。
- 杂项,容量中等,320GBGB足矣。
因为图像、音频和工程往往零散文件较多,所以可能需要分多个逻辑盘或物理盘。我的一台电脑上在开发过程中,曾经得到过操作系统报警:无法更配更多的文件句柄。这就是文件太细碎所导致的。