收起左侧

休眠问题排查攻略

37
回复
1297
查看
[ 复制链接 ]

43

主题

8429

回帖

0

牛值

管理员

2025-7-3 17:17:28 显示全部楼层 阅读模式

自系统版本 v0.9.10 起,飞牛系统新增支持设置硬盘自动唤醒偏好。当开启了硬盘休眠后,可选择硬盘唤醒的策略:

  1. 按需唤醒:仅在对存储空间读写数据时。 选择此选项后,系统只在读写数据时唤醒硬盘,不被读写到硬盘仍将保持休眠状态。
  2. 响应更快:有用户登录即唤醒。 选择此选项后,除了读写数据会唤醒硬盘外,有用户登录网页端、App时,系统也将自动唤醒全部硬盘,以提升读写操作时的响应速度,使用体验更丝滑。

为了实现以上功能,我们采用了更准确的休眠检测方式,也做了一些休眠日志展示策略的调整,引发了大家对不同版本休眠日志情况变化的关注。

因此,我们根据近期收集了无法休眠的案例,结合系统休眠机制,总结了不休眠的原因与自助排查方法,遇到疑似休眠异常的朋友可以按照以下各种情况排查系统不休眠的原因。

第一种情况,本身有文件读写行为,导致无法休眠

常见会唤醒硬盘的读写操作有:

  1. 存储空间任意的文件读写
    1. 通过任意方式访问文件管理
    2. 硬盘所在的存储空间上有正在执行的文件任务,包括上传、下载、移动、复制等;
    3. 其他设备通过各类远程挂载的方式在访问飞牛的文件
  2. 某个程序进程运行
    1. 应用或 Docker 安装在硬盘所在的存储空间上,且正在运行产生传输;
    2. 应用或 Docker 正在访问存储空间上的文件,包括影视刮削播放、相册查看和 AI 识别等;
    3. 下载类应用或 Docker 容器中有任务正在下载或做种。
    4. 其他一些自己手动安装的基于debian环境的应用**(容易被忽视,因为不被系统监控)**
  3. 获取硬盘运行状态
    1. APP或者web访问 系统设置 > 存储空间管理硬盘信息 页面时,由于需要查询存储相关信息,也会唤醒已被用于存储空间的所有硬盘。如不希望唤醒,可通过 资源监控 查看硬盘状态和信息。

排查方法:

关闭所有可能影响休眠的相关服务

  1. 关闭docker服务,避免服务自动运行

  1. 关闭所有共享协议,包括SMB\WebDAV\FTP\NFS\DLNA,避免其他设备自动访问飞牛

  1. 在应用中心,停用所有应用,避免应用自动运行

  1. 停用非本人使用账号,修改当前账号密码,避免其他用户在你不知情情况下访问

  1. 暂停所有下载进程

在完成以上五点之后,设置休眠时间为5分钟,重启一下设备,过一段时间之后再观察, 如果没有异常唤醒行为,则是由于应用或者读写导致的唤醒,并非BUG。可以逐步开启相关服务,看是由于那个服务引起的唤醒。

第二种情况,APM错误导致无法休眠

硬盘中的 APMAdvanced Power Management(高级电源管理) 的缩写。

因为一部分硬盘或者盘柜有内置的APM休眠策略,与系统通过hdparm发送休眠指令的行为有冲突,导致休眠失败,或者反复唤醒的情况。

需要手动配置APM为255,保障休眠服务正常。

一、APM 的作用:

APM 是一种节能机制,允许操作系统或硬盘固件根据当前的使用情况动态调整硬盘的功耗状态,以降低能耗和噪音,延长硬盘寿命。

具体来说,APM 会在空闲时:

  • 降低马达转速
  • 提前让硬盘进入休眠或低功耗状态
  • 减少磁头寻道频率

二、APM 的设置值含义:

APM 的数值通常是 0~255 之间的一个值,表示电源管理的激进程度。不同厂家的解释略有差异,但大致如下:

APM 数值 行为 特点
0 关闭 APM 不节能,性能优先,硬盘一直运行
1–127 激进节能 快速降速、快速待机,噪音低,可能增加磁头起停次数(影响寿命)
128–254 适中节能 平衡性能与能耗
255 最大性能 几乎无电源管理,硬盘保持高速运行,适合服务器/NAS

部分硬盘厂商(如 Western Digital)在低值时(例如 128 以下)会频繁地“停头”以省电,但这会导致 Load/Unload Cycle(装载/卸载磁头次数) 非常高,可能影响寿命。

三、APM的查询与配置

# 进入高级管理员模式
sudo -i
  1. 在日志里面找到盘符,sda sdb sdc等,为盘符标识

  1. 查询对应盘符的APM,注意修改sdX为你需要查询的盘符,例如sda sdb sdc
hdparm -I /dev/sdX | grep -i 'Advanced power management'

如果正常运行,你可以看到以下内容,level后面就是内容

[你的用户名]@feiniu:~$ sudo hdparm -I /dev/sda | grep -i 'Advanced power management'
        Advanced power management level: 254
           *    Advanced Power Management feature set

  1. 修改APM数值为255

查询到的值如果不是255或者display 就运行以下指令,注意修改sdX为你需要查询的盘符,例如sda sdb sdc

hdparm -B 255 /dev/sdX

第三种情况,固态硬盘不休眠

升级后,可能会遇到固态硬盘在日志里面没有显示休眠的情况,这个是设计如此。

固态硬盘实际没有休眠这个状态的, 过去大家会把低功耗模式作为广义的休眠,但是这个东西还比较新,实际上不同厂家会有不同的休眠标准。

系统新版本更新了对硬盘休眠的准确检测方式,上线了针对HDD机械硬盘更精准的休眠策略,但是与此同时,不同厂家的低功耗模式,很难准确的识别与控制,所以新版本之后,日志不会识别跟展示固态硬盘进入低功耗模式的状态。

第四种情况,主板、转接卡、硬盘或者硬盘柜的固件本身不支持hdparm休眠

因为系统让硬盘休眠的时候,会通过hdparm发送指令,但是部分设备的芯片会无视或者过滤系统发送的休眠指令,导致休眠失败。

这种类型的休眠失败,需要硬件厂家升级固件来解决

例如已知有希捷的部分设备,例如Seagate BarraCuda 3.5(CMR)不支持hdparm

验证此情况,可以手动发送hdparm休眠指令,看看硬盘是否会正常休眠,注意修改sdX为你需要查询的盘符,例如sda sdb sdc

hdparm -y /dev/sdX

输入指令之后,可以进入web端,可以看到休眠信息,则不是该原因导致。如果看到报错或者未执行,则代表可能存在硬件兼容问题。

第五种情况,不支持SMART检测的硬盘,无法正确返回休眠信息

如果你的硬盘柜本身不支持smart检测,即使休眠了,也不会返回休眠的信息给系统,所以不会有休眠的日志。

实际硬盘可能会按照自己的逻辑进行休眠

第六种情况,主板识别了错误的存储信息,导致无法正常休眠

感谢@mark8776661 同学补充

如果发现硬盘不休眠,没组raid存储空间却显示raid或者USB,不显示HDD的可以尝试去主板关闭raid模式,关闭后存储空间会恢复显示hdd,所有机械硬盘正常休眠。


遇到不确定硬盘无法正常休眠的原因,可以根据上面步骤排查一下。如果以上情况均排除,可以再联系我们定位问题。

收藏
送赞 1
分享

6

主题

15

回帖

0

牛值

江湖小虾

2025-7-3 20:30:37 显示全部楼层

另一种方法:如果发现硬盘不休眠,没组raid存储空间却显示raid或者USB,不显示HDD的可以尝试去主板关闭raid模式,刚试过了关闭后存储空间会恢复显示hdd,所有机械硬盘正常休眠

需不需要备份硬盘数据?不会改了模式数据不见了吧?  详情 回复
2025-7-6 11:43
感谢大神,我的主板关闭raid就可以休眠了,问题解决了!  详情 回复
2025-7-5 00:20
请问怎么关啊,用的N150小主机 找不到入口  详情 回复
2025-7-4 16:57
赞,这种属于硬件返回了错误信息,导致未识别休眠信息 我也补充到帖子里  详情 回复
2025-7-4 12:18
有用,我硬盘休眠问题通过此方案已解决  详情 回复
2025-7-4 00:01

1

主题

16

回帖

0

牛值

江湖小虾

2025-7-4 00:01:37 显示全部楼层
mark8776661 发表于 2025-7-3 20:30
另一种方法:如果发现硬盘不休眠,没组raid存储空间却显示raid或者USB,不显示HDD的可以尝试去主板关闭raid ...

有用,我硬盘休眠问题通过此方案已解决

1

主题

1

回帖

0

牛值

江湖小虾

2025-7-6 11:26:28 显示全部楼层

确认了下是ASM固件的问题,应该是主控对某些ATA指令支持不太好,比较新的usb硬盘盒可能都有这种问题。

简单测试了下直接调用 smartctl -d sat -n standby /dev/sdb 指令查询不会触发唤醒,但飞牛实现的定时smart轮询会,对比了下系统调用是有一些差别的。硬件兼容性可能还得再调调。

找绿联官方把硬盘盒的休眠时间设置为永不休眠就可以了。 如果这么操作了,系统设置的休眠时间到时候了硬盘盒的硬盘休眠还会起作用吗? 比如系统关机时硬盘盒会让硬盘停转之类的吗? 这种情况下假如一直不休眠且系统  详情 回复
4 天前

1

主题

16

回帖

0

牛值

江湖小虾

2025-7-3 19:28:21 显示全部楼层

输入这条指令hdparm -y /dev/sdX可以马上休眠。但是日志并没有休眠记录。其他情况都尝试了没有用。系统是新装的。

硬件支持smart检测么,休眠成功了,需要硬件返回正确的休眠信息,才会在日志显示  详情 回复
2025-7-4 12:16
现在的问题是还是无法自动休眠。  详情 回复
2025-7-3 19:42

1

主题

16

回帖

0

牛值

江湖小虾

2025-7-3 19:42:53 显示全部楼层
  NullNull 发表于 2025-7-3 19:28
输入这条指令hdparm -y /dev/sdX可以马上休眠。但是日志并没有休眠记录。其他情况都尝试了没有用。系统是新 ...

现在的问题是还是无法自动休眠。

0

主题

21

回帖

0

牛值

江湖小虾

2025-7-3 20:19:23 显示全部楼层

请解释一下 什么都不改变,同样的硬件,同样的硬盘,安装同样的应用,只有影视和相册, 0.98以后从不休眠, 现在重装回0.92就能够休眠

跟帖,希望能回到v0.9.2的休眠模式  详情 回复
6 天前
不管系统是不是模糊,我是实实在在地摸硬盘确定的  详情 回复
2025-7-4 13:45
以前的休眠是模糊检测,系统发了休眠指令就认为休眠了,实际设备的休眠情况并不会去主动识别。 自定义休眠逻辑更新后,会靠smart信息准确判断休眠,判断不了日志就不会不展示休眠,包括不支持SMART检测的硬件,也不  详情 回复
2025-7-4 12:12
我也今天上午,刚重新刷机回0.9.2了  详情 回复
2025-7-4 09:32

1

主题

12

回帖

0

牛值

江湖小虾

2025-7-4 09:32:31 显示全部楼层
petal 发表于 2025-7-3 20:19
请解释一下 什么都不改变,同样的硬件,同样的硬盘,安装同样的应用,只有影视和相册, 0.98以后从不休眠, 现在 ...

我也今天上午,刚重新刷机回0.9.2了

1

主题

2

回帖

0

牛值

江湖小虾

2025-7-4 10:46:43 显示全部楼层

之前的系统日志还显示机械硬盘的休眠,现在是一点休眠信息都没有

43

主题

8429

回帖

0

牛值

管理员

2025-7-4 12:12:42 楼主 显示全部楼层
petal 发表于 2025-7-3 20:19
请解释一下 什么都不改变,同样的硬件,同样的硬盘,安装同样的应用,只有影视和相册, 0.98以后从不休眠, 现在 ...

以前的休眠是模糊检测,系统发了休眠指令就认为休眠了,实际设备的休眠情况并不会去主动识别。

自定义休眠逻辑更新后,会靠smart信息准确判断休眠,判断不了日志就不会不展示休眠,包括不支持SMART检测的硬件,也不会记录为休眠了,实际硬盘可能会自动休眠。

43

主题

8429

回帖

0

牛值

管理员

2025-7-4 12:16:10 楼主 显示全部楼层
  NullNull 发表于 2025-7-3 19:28
输入这条指令hdparm -y /dev/sdX可以马上休眠。但是日志并没有休眠记录。其他情况都尝试了没有用。系统是新 ...

硬件支持smart检测么,休眠成功了,需要硬件返回正确的休眠信息,才会在日志显示

43

主题

8429

回帖

0

牛值

管理员

2025-7-4 12:18:09 楼主 显示全部楼层
mark8776661 发表于 2025-7-3 20:30
另一种方法:如果发现硬盘不休眠,没组raid存储空间却显示raid或者USB,不显示HDD的可以尝试去主板关闭raid ...

赞,这种属于硬件返回了错误信息,导致未识别休眠信息
我也补充到帖子里
我的是组了raid的磁盘显示为USB,这种应该怎么解决?  详情 回复
2025-7-4 15:07

0

主题

21

回帖

0

牛值

江湖小虾

2025-7-4 13:45:56 显示全部楼层
petal 发表于 2025-7-3 20:19
请解释一下 什么都不改变,同样的硬件,同样的硬盘,安装同样的应用,只有影视和相册, 0.98以后从不休眠, 现在 ...

不管系统是不是模糊,我是实实在在地摸硬盘确定的
但是硬盘也确实没休眠  详情 回复
2025-7-4 18:19
嗯,系统也需要类似摸的操作来识别休眠 就是smart方式获取,但是硬盘不一定会允许系统摸一下,所以新系统会存在系统不知道盘有没有休眠的情况  详情 回复
2025-7-4 15:14

1

主题

8

回帖

0

牛值

江湖小虾

2025-7-4 15:07:00 显示全部楼层
飞牛技术同学 发表于 2025-7-4 12:18
赞,这种属于硬件返回了错误信息,导致未识别休眠信息
我也补充到帖子里 ...

我的是组了raid的磁盘显示为USB,这种应该怎么解决?

43

主题

8429

回帖

0

牛值

管理员

2025-7-4 15:14:33 楼主 显示全部楼层
petal 发表于 2025-7-4 13:45
不管系统是不是模糊,我是实实在在地摸硬盘确定的

嗯,系统也需要类似摸的操作来识别休眠  就是smart方式获取,但是硬盘不一定会允许系统摸一下,所以新系统会存在系统不知道盘有没有休眠的情况

0

主题

1

回帖

0

牛值

江湖小虾

2025-7-4 16:57:54 显示全部楼层
mark8776661 发表于 2025-7-3 20:30
另一种方法:如果发现硬盘不休眠,没组raid存储空间却显示raid或者USB,不显示HDD的可以尝试去主板关闭raid ...

请问怎么关啊,用的N150小主机 找不到入口

0

主题

21

回帖

0

牛值

江湖小虾

2025-7-4 18:19:13 显示全部楼层
petal 发表于 2025-7-4 13:45
不管系统是不是模糊,我是实实在在地摸硬盘确定的

但是硬盘也确实没休眠

1

主题

10

回帖

0

牛值

江湖小虾

2025-7-4 19:28:37 显示全部楼层

都试过了,有一个硬盘一直休眠不了,在更新之前一直正常休眠,这块硬盘唯一的作用就是周一,把其他几个盘的数据备份过来

1

主题

7

回帖

0

牛值

江湖小虾

2025-7-4 23:00:26 显示全部楼层

没用,查出来AMP是128,修改成255不生效,手动休眠也不生效,0.98以前的版本是可以正常休眠的

0

主题

1

回帖

0

牛值

江湖小虾

2025-7-5 00:20:14 显示全部楼层
mark8776661 发表于 2025-7-3 20:30
另一种方法:如果发现硬盘不休眠,没组raid存储空间却显示raid或者USB,不显示HDD的可以尝试去主板关闭raid ...

感谢大神,我的主板关闭raid就可以休眠了,问题解决了!

1

主题

10

回帖

0

牛值

江湖小虾

2025-7-5 08:48:23 显示全部楼层
我有四块硬盘,之前版本一直正常休眠,待机功率11w,更新以后有一块硬盘一直不休眠,待机功率16w,证明这么硬盘的确一直未休眠。日志显示,15分钟该硬盘正常休眠,但是1分钟整就唤醒该硬盘,一直这样循环,导致我现在不敢开机,怕频繁唤醒损坏硬盘。按照所有问题排查,都没问题,而且我发现论坛很多人和我一样的情况(一分钟整就唤醒硬盘并循环)。该硬盘按正常情况一周就一次读写 就是设置定时备份,对其他盘数据周一进行定时备份,我把定时备份任务删除后,还是一直频繁唤醒,按理论没有任何数据需要这块盘读写。

0

主题

6

回帖

0

牛值

江湖小虾

2025-7-5 10:43:14 显示全部楼层

已按排查方法测试,查询apm返回SG_IO: bad/missing sense data, sb[]: 70 00 05 00 00 00 00 0a 00 00 00 00 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00,输入手动休眠命令日志无休眠记录。0.98版本之前一直休眠正常,更新后这几个版本都不能休眠,前天重装最新系统,问题依旧。

2

主题

9

回帖

0

牛值

江湖小虾

2025-7-5 12:58:49 显示全部楼层
上述方法都排除了,还是无法解决问题。已更新最新版本V0.9.13。飞牛账号13128987188,技术看到信息可以后台关注下我的机器。

0

主题

1

回帖

0

牛值

江湖小虾

2025-7-5 14:53:13 显示全部楼层

我是用的Hyper_v安装的飞牛系统,虚拟盘装的飞牛系统,另外直通两块8T硬盘做的raid1,不支持SMART检测的硬盘,也无法休眠,这是什么情况?

0

主题

4

回帖

0

牛值

江湖小虾

2025-7-5 17:45:19 显示全部楼层

外接硬盘盒,无法自动休眠,0.9.8版本开始的,输入 hdparm -y /dev/sdX 能进入休眠,但是没有日志,没有组raid,硬盘类型也是HDD识别正常,smart信息识别正常的,主板是关闭raid模式设置ahci的。

0

主题

1

回帖

0

牛值

江湖小虾

2025-7-6 08:20:21 显示全部楼层

手动休眠后可以用hdparm检查休眠状态

执行休眠
lefty@nasLab:~~~$ sudo hdparm  -y /dev/sdc
/dev/sdc:
issuing standby command
检查休眠
lefty@nasLab:~$~~ sudo hdparm  -C /dev/sdc
/dev/sdc:
drive state is:  standby

0

主题

12

回帖

0

牛值

江湖小虾

2025-7-6 11:43:44 显示全部楼层
mark8776661 发表于 2025-7-3 20:30
另一种方法:如果发现硬盘不休眠,没组raid存储空间却显示raid或者USB,不显示HDD的可以尝试去主板关闭raid ...

需不需要备份硬盘数据?不会改了模式数据不见了吧?

2

主题

2

回帖

0

牛值

江湖小虾

大佬们救救孩子吧!!!TAT,我USB外接的一个ORICO硬盘柜,已经一个多月没休眠了。。。APM改到255了,手动休眠也不生效。。。明明之前几个月都好好的,(这个硬盘盒有休眠指示灯,之前版本的系统都正常唤出休眠灯的)
我也是用奥睿科磁盘柜,系统是PVE,直通磁盘柜的 我从来都没看到过休眠的日志,以为不能休眠呢 请飞牛大神有空帮我看看  详情 回复
6 天前

1

主题

3

回帖

0

牛值

江湖小虾

设备环境:天钡WTR MAX迷你电脑主机 AMD R7企业级PRO8845HS,硬盘4块西数hc550,两块东芝mg08

image.png

BUG现象:0.9.8版本出现西数hc550被频繁唤醒,之前设置半小时休眠,休眠后5分种必唤醒,东芝mg08无影响,4块西数hc550全唤醒;按照官方排查休眠攻略排查,关闭docker/各种应用/SMB等,并且把调整从254调整到255,均无任何作用;一个月以来已经启停上千次,是最近睡觉时候经常能听到硬盘启停才发现的;

出现频率:必现

0

主题

2

回帖

0

牛值

江湖小虾

[quote][size=2][url=forum.php?mod=redirect&goto=findpost&pid=144341&ptid=30721][color=#999999]萬蘅磊 发表于 2025-7-8 11:05[/color][/url][/size] 大佬们救救孩子吧!!!TAT,我USB外接的一个ORICO硬盘柜,已经一个多月没休眠了。。。APM改到255了,手动 ...[/quote]

我也是用奥睿科磁盘柜,系统是PVE,直通磁盘柜的

我从来都没看到过休眠的日志,以为不能休眠呢shocked

请飞牛大神有空帮我看看

2

主题

9

回帖

0

牛值

江湖小虾

petal 发表于 2025-7-3 20:19
请解释一下 什么都不改变,同样的硬件,同样的硬盘,安装同样的应用,只有影视和相册, 0.98以后从不休眠, 现在 ...

跟帖,希望能回到v0.9.2的休眠模式

26

主题

126

回帖

0

牛值

fnOS系统内测组

社区上线纪念勋章

arno.z 发表于 2025-7-6 11:26
绿联的硬盘盒默认有个休眠时间(idle timer)好像会和飞牛更新后新增的定时休眠查询指令冲突,导致休眠后一 ...

找绿联官方把硬盘盒的休眠时间设置为永不休眠就可以了。

如果这么操作了,系统设置的休眠时间到时候了硬盘盒的硬盘休眠还会起作用吗?
比如系统关机时硬盘盒会让硬盘停转之类的吗?
这种情况下假如一直不休眠且系统关机了,我再拔了硬盘盒电源对硬盘算不算是异常断 电?

最近换机器了,新机器上硬盘盒相比旧机器上差异太大了。头疼

3

主题

2

回帖

0

牛值

江湖小虾

外接海康威视硬盘底座,硬盘底座3分钟自动休眠硬盘,不可变。目前出现问题为:登录飞牛后常出现,外置硬盘显示损坏,重启飞牛后正常。现在飞牛OS硬盘休眠设置为:外接硬盘5分钟休眠,唤醒偏好:登录即唤醒。怎么设置能解决。

0

主题

15

回帖

0

牛值

江湖小虾

下载盘经常休眠启动,能不能修改APM让指定的盘不休眠。

0

主题

6

回帖

0

牛值

江湖小虾

短时间无法解决就先做个选择窗口让用户自己选择用哪种休眠模式吧,0.98升级过去差不多两个月了,影响使用关机快两个月了。

5

主题

8

回帖

0

牛值

江湖小虾

看明白了, 属于情况五, 也就是之前日志能看到休眠是假休眠, 并不是以前能休眠0.9.8之后不能休眠了, 是0.9.8之后休眠是真的检测硬盘状态。

1

主题

57

回帖

0

牛值

初出茅庐

手机app打开资源监控就会唤醒硬盘,算不算是个bug

2

主题

3

回帖

0

牛值

江湖小虾

网页端和手机app打开文件管理,全部机械硬盘都会唤醒,这非常不合理!!!!!!我可能只是想打开固态硬盘上的共享文件夹操作文件,你把我8个机械硬盘都唤醒了,这合理吗???????????????

还有手机打开资源监控,全部硬盘也会被唤醒。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则