最近攒了一台机器作为家里的 NAS,操作系统选择了 TrueNAS Scale ,之所以用这个系统原因有两个:
基本环境准备好了之后把由 5 块 HDD 组成的 RaidZ1 作为了主存储池就开始使用了。用了一段时间发现系统有一个小小的问题:这些 HDD 差不多每几秒就会卡卡响两下,不是什么异常的声音,就是正常的读写的声音,可我当时并没有使用它做什么事情,而且这种有节奏的噪音让我也有点难受。看了下监控,io 模式就是这个样子:
首先我就去 google 了,搜来搜去,用关键词「truenas scale idle read write」找到了 TrueNas Scale constant writes while idle 这个问题,下面的回复基本就就是清楚了原因,我这里简单复述下:
TrueNAS 会默认把你建立的第一个 data pool 设定为 System Dataset 然后会在这里塞日志等乱七八糟的东西,尤其是系统日志这种东西它就会持续的对系统进行写入。
既然 HDD 读写声音很讨厌,那我就还是再加一个 nvme 的盘做成存储池来用吧,幸好我的主板 m.2 的插槽管够。插上 nvme 硬盘并设置一个新的存储池后,通过「System Settings」-「Advanced」-「System Dataset Pool」把它修改成心态添加的 nvme 存储即可。
如果要使用上文提到的 Apps 的话,TrueNAS Scale 也会要求你指定存储的位置,考虑到性能和噪声也要把它指向 nvme 的存储。
所以对于 TrueNAS Scale 来说,最好要准备三个部分的存储: