系统版本:X86/ARM
设备环境:物理机
BUG现象:硬盘的休眠及按需唤醒在1.1.26版本及之前是正常的(即登录web页面不唤醒、登录APP不唤醒,APP点击资源管理会唤醒)。在升级1.1.30及之后的版本中,会出现莫名其妙被唤醒的情况。在结合论坛里其他人的相关反馈总结如下,主要表现有:
自己遇到的:
1.登录web页面,有概率唤醒,一般看两次登录间隔时长,间隔越长越容易触发,实测与资源监控中的“存储读写”、“存储空间”无关,大概原因后面会解释;;
2.登录APP,有概率唤醒,具体没有详测;
3.偶尔莫名其妙唤醒,无规律,大概原因后面会解释;
论坛其他人反馈的:
4.会出现连续反复的唤醒、休眠;
出现频率:必现
联系方式:论坛回复即可
测试分析过程、日志文件、原因猜测及优化建议,过程如下:
1.最开始有人反应是“trim_file_monitor”的问题(https://club.fnnas.com/forum.php?mod=viewthread&tid=63437),沿着这个思路,我使用 iotop -a 排查,发现在开启web时,主要有五个进程或者服务访问了磁盘,如下:trim_tfa、nginx:worker process、postgres: 15/main: postgres appcenter [local] idle、trim_app_center、 resmon_service。这几个分别是,双重认证、网页服务、数据库服务(应用中心)、应用中心、资源监控。最开始是怀疑“resmon_service”,但实测不对。
2.后来我使用fatrace监听唤醒硬盘的进程及操作。看到了离谱的操作。你们为什么要在trim程序里每5秒关闭并打开/vol句柄?这操作完全看硬盘的缓存有没有命中,我的是命中的,所以大部分是休眠,这个操作不会触发唤醒,但论坛里有人出现频繁唤醒,很可能是这个导致的。
日志:

出现此问题帖子:
https://club.fnnas.com/forum.php?mod=viewthread&tid=63437
https://club.fnnas.com/forum.php?mod=viewthread&tid=63756
https://club.fnnas.com/forum.php?mod=viewthread&tid=63996
https://club.fnnas.com/forum.php?mod=viewthread&tid=63964
3.顺着这个思路,我开始排查登录web唤醒的问题,抓到了罪魁祸首:

应用中心为什么会在登录web的时候,偶尔会触发打开、读取机械硬盘里的appcenter-downloads?这是啥谜之操作?关键我的应用中心配置就是默认是存储空间1,也就是SSD。由于我fatrace只监听了存储空间2,不代表没有带去存储空间3、4、5。

4.在app登录后,也会有与web登录同样的应用中心读取机械硬盘的操作,并且还多了一条打开关闭/vol2/1000的记录。

5.在fatrace监听的过程中,还意外监听到了相册读取同步文件夹的问题,关键我的相册同步按钮是关闭的了。这个操作应该也会触发硬盘唤醒,日志如下:


而且是两个进程触发的。
以上是针对新版本(1.1.30及以后)硬盘被莫名其妙唤醒的排查情况,麻烦飞牛官方复测并修复问题。