收起左侧

硬盘频繁被唤醒

1
回复
43
查看
[ 复制链接 ]

6

主题

27

回帖

0

牛值

fnOS系统内测组

设备环境

  • 威联通 TS - 453Bmini - J3455 物理机
  • 具备公网环境
  • 系统版本号为 0.8.47

BUG 现象

我设置了硬盘在 30 分钟后休眠。然而经过测试发现,昨晚硬盘每 60分钟就会自动唤醒,这与所设置的硬盘休眠时间并无关联,看起来就像是配置了一个 60 分钟的周期性任务。

根据群友猜测,可能是smart检测,但是我没有找到设置检测周期的地方,以往在威联通系统上,默认好像是设置的一周检测一次的频率。

出现频率

必现

联系方式

40 群 - gz_xiexl

日志文件

飞牛私有云分享【Debug_Log_20250422095024.zip】,点击链接下载文件,App打开可转存到NAS:https://s.fnnas.net/s/b410312442d241b585

5qlwowdr.dr2.png

(此处未提及日志文件具体信息)

经初步排查:

/etc/smartd.conf内:

DEVICESCAN -d removable -n standby -m root -M exec /usr/share/smartmontools/smartd-runner

查询日志好像又不是smartd造成的:

gzxiexl@TS-453Bmini:~$ sudo journalctl -xe | grep -i "smartd\|sdc\|sdb"
[sudo] password for gzxiexl: 
Apr 22 09:23:40 TS-453Bmini MAINEVENT[1496]: MAINEVENT:{"cat":1,"template":"DiskWakeup","disk":"sdc"}
Apr 22 09:24:40 TS-453Bmini MAINEVENT[1496]: MAINEVENT:{"cat":1,"template":"DiskWakeup","disk":"sdb"}
Apr 22 09:36:18 TS-453Bmini smartd[827]: Device: /dev/sda [SAT], SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 36 to 34
Apr 22 09:36:18 TS-453Bmini smartd[827]: Device: /dev/sdb [SAT], SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 62 to 63
Apr 22 09:36:18 TS-453Bmini smartd[827]: Device: /dev/sdb [SAT], SMART Usage Attribute: 194 Temperature_Celsius changed from 38 to 37
Apr 22 09:36:18 TS-453Bmini smartd[827]: Device: /dev/sdc [SAT], SMART Usage Attribute: 194 Temperature_Celsius changed from 111 to 113
Apr 22 10:01:00 TS-453Bmini smartd[480038]: smartd 7.3 2022-02-28 r5338 [x86_64-linux-6.6.38-trim] (local build)
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Copyright (C) 2002-22, Bruce Allen, Christian Franke, www.smartmontools.org
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Opened configuration file /etc/smartd.conf
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Drive: DEVICESCAN, implied '-a' Directive on line 21 of file /etc/smartd.conf
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Configuration file /etc/smartd.conf was parsed, found DEVICESCAN, scanning devices
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sda, type changed from 'scsi' to 'sat'
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], opened
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], INTEL SSDSC2BW240A4, S/N:BTDA331406NU2403GN, WWN:5-5cd2e4-04b41f0ce, FW:DC32, 240 GB
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], found in smartd database 7.3/5671: Intel 53x and Pro 1500/2500 Series SSDs
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], can't monitor Current_Pending_Sector count - no Attribute 197
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], can't monitor Offline_Uncorrectable count - no Attribute 198
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], no SMART Error Log, ignoring -l error (override with -T permissive)
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], is SMART capable. Adding to "monitor" list.
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], state read from /var/lib/smartmontools/smartd.INTEL_SSDSC2BW240A4-BTDA331406NU2403GN.ata.state
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sdb, type changed from 'scsi' to 'sat'
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sdb [SAT], opened
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sdb [SAT], ST4000VX015-3CU104, S/N:WW6212HZ, WWN:5-000c50-0f27d7b2d, FW:CV10, 4.00 TB
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sdb [SAT], not found in smartd database 7.3/5671.
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sdb [SAT], is SMART capable. Adding to "monitor" list.
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sdb [SAT], state read from /var/lib/smartmontools/smartd.ST4000VX015_3CU104-WW6212HZ.ata.state
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sdc, type changed from 'scsi' to 'sat'
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sdc [SAT], opened
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sdc [SAT], WDC WD40PURX-64N96Y0, S/N:WD-WCC7K1VH6JD2, WWN:5-0014ee-211e9a7aa, FW:80.00A80, 4.00 TB
Apr 22 10:01:00 TS-453Bmini smartd[480038]: Device: /dev/sdc [SAT], found in smartd database 7.3/5671: Western Digital Purple (Pro)
Apr 22 10:01:01 TS-453Bmini smartd[480038]: Device: /dev/sdc [SAT], is SMART capable. Adding to "monitor" list.
Apr 22 10:01:01 TS-453Bmini smartd[480038]: Device: /dev/sdc [SAT], state read from /var/lib/smartmontools/smartd.WDC_WD40PURX_64N96Y0-WD_WCC7K1VH6JD2.ata.state
Apr 22 10:01:01 TS-453Bmini smartd[480038]: Monitoring 3 ATA/SATA, 0 SCSI/SAS and 0 NVMe devices
Apr 22 10:01:01 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 34 to 33
Apr 22 10:01:01 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], previous self-test was interrupted by the host with a reset
Apr 22 10:01:01 TS-453Bmini smartd[480038]: Device: /dev/sda [SAT], state written to /var/lib/smartmontools/smartd.INTEL_SSDSC2BW240A4-BTDA331406NU2403GN.ata.state
Apr 22 10:01:01 TS-453Bmini smartd[480038]: Device: /dev/sdb [SAT], state written to /var/lib/smartmontools/smartd.ST4000VX015_3CU104-WW6212HZ.ata.state
Apr 22 10:01:01 TS-453Bmini smartd[480038]: Device: /dev/sdc [SAT], state written to /var/lib/smartmontools/smartd.WDC_WD40PURX_64N96Y0-WD_WCC7K1VH6JD2.ata.state
Apr 22 10:01:01 TS-453Bmini smartd[480040]: smartd has fork()ed into background mode. New PID=480040.
Apr 22 10:06:18 TS-453Bmini smartd[827]: Device: /dev/sda [SAT], SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 34 to 33
Apr 22 10:06:18 TS-453Bmini smartd[827]: Device: /dev/sdb [SAT], SMART Usage Attribute: 190 Airflow_Temperature_Cel changed from 63 to 62
Apr 22 10:06:18 TS-453Bmini smartd[827]: Device: /dev/sdb [SAT], SMART Usage Attribute: 194 Temperature_Celsius changed from 37 to 38

日志中提到

MAINEVENT[1496]: MAINEVENT:{"cat":1,"template":"DiskWakeup","disk":"sdc"}

再查询MAINEVENT的pid 1496:

gzxiexl@TS-453Bmini:~$ ps -ef | grep 1496
root        1496       1  0 Apr21 ?        00:04:52 /usr/trim/bin/trim
gzxiexl@TS-453Bmini:~$ ps aux | grep '/usr/trim/bin/trim'
root        1496  0.4  0.8 2167732 65128 ?       Ssl  Apr21  12:16 /usr/trim/bin/trim
root        1519  0.0  0.1 1600996 14128 ?       Ssl  Apr21   0:00 /usr/trim/bin/trim_app_cgi
root        1520  0.0  0.1  72396 14500 ?        Ssl  Apr21   2:30 /usr/trim/bin/trim_file_monitor
root        1522  0.0  0.1 1674888 12524 ?       Ssl  Apr21   0:00 /usr/trim/bin/trim_http_cgi
root        1527  0.1  0.3 1909464 28140 ?       Ssl  Apr21   3:38 /usr/trim/bin/trim_sac
root        1542  0.3  0.4 2353388 35944 ?       Ssl  Apr21   8:31 /usr/trim/bin/trim_app_center
root        3317  0.0  0.4 2003004 38108 ?       Ssl  Apr21   0:25 /usr/trim/bin/trim-connect/trim-connect --trimapi https://fnos.net
root        3380  0.0  0.4 1762740 33664 ?       Ssl  Apr21   0:21 /usr/trim/bin/trim-sharelink
gzxiexl  1062267  0.0  0.0   6464  2048 pts/0    S+   11:49   0:00 grep --color=auto /usr/trim/bin/trim

看来就是飞牛系统级程序把硬盘唤醒的原因了。

目前硬盘休眠是全局设置,建议可以增加每个硬盘的休眠策略,以我的使用来说,SSD做系统盘,所有应用、docker数据都挂载在ssd上,ssd没有必要休眠,但是我还有两块机械硬盘做了raid1,在没有应用读写上面的数据的情况下,可以实现机械硬盘上时间休眠,我另外还有一台unraid 5块机械硬盘就是这种休眠策略,一直用下来硬盘可以实现长时间正常休眠。

收藏
送赞
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

28

主题

6403

回帖

0

牛值

管理员

感谢反馈 我转给相关的同事看看。后续我们有计划优化硬盘休眠的逻辑
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则