导语
最近NAS频繁出现了几次死机。
大致情况是,机器仍有上电,但服务都死了,ssh也进不去,但重启之后都一切恢复正常。前几天一直没空处理,今天有空就排查了一下。
NAS的大致情况:
1 | CPU: N5095 |
确认硬件没坏吧?
因为几次死机都是出现在下载PT大包的时候,所以怀疑是硬盘出问题了。而且,最近电脑的硬盘出现了0e,也有导致电脑死机,所以第一反应是这个。
但是查了查硬盘的smart信息,基本都是正常的。
问问ChatGPT怎么说
排除了硬件故障,我有点无从下手。于是去请教学校LUG的大佬,大佬给了个ChatGPT的方案,对啊,我怎么把ChatGPT给忘了呢。
ChatGPT给的很详细,也比较专业。内存问题、网络问题和磁盘健康问题应该都已经排查过了。于是从系统日志入手开始检查。
Jellyfin出问题了?
首先翻看了系统日志/var/log/syslog
,确定了死机出现的时间在前一天晚上23:28
前后。在死机前确实出现了两条异常日志。
该日志指向一个docker容器,通过docker ps -a
确定该容器运行的是jellyfin
。于是我又通过docker logs jellyfin
调取了jellyfin
的日志。
但事实上,在死机前的一段时间,我根本没有使用jellyfin
。因此在死机前的很长一段时间,jellyfin
的日志没有记录,当然,更没有任何异常信息。
看看内核日志
LUG的另外一位群友给出了建议,看看内核日志。
通过journalctl -k -b -1 --lines=1000 --reverse
看到了上次死机前的内核日志。在日志里果然得到了重要信息。
1 | Jul 01 23:28:29 n5095nas kernel: watchdog: BUG: soft lockup - CPU#2 stuck for 49s! [thermald:3766] |
上述是一部分标红日志,可以看到CPU出现了中断锁定。
qbittorrent
是挂着下载PT大包下载任务的软件。那thermald
是什么?
好家伙,原来是热监控守护程序。
答案浮出水面
看到热监控守护程序那刻,答案已然悄悄浮现在脑海。
这种小机箱确实散热捉急,而且碍于噪音我还把5510的机箱散热风扇给拆掉了。本来考虑到整机的功耗不高,而且当时正常使用一段时间的温度还算能接受,但事实证明还是我大意了。
那就验证一下是不是过热问题。还原了一下之前死机之前的任务场景,尽可能给到系统一定的压力。然后监控一下问题。
好家伙,固态硬盘来到了恐怖的91.8°C,那也难怪会死机了。
结语
这一块固态硬盘是我之前的笔记本拆机下来的。型号为SK hynix PC401
,主控是马牌88SS1093,海力士自家的颗粒。可喜也可悲的是,这块盘还有1GB的Dram缓存。
众所周知,有缓盘普遍比无缓盘温度高一大截。看来为了温度,这种小机箱包括笔记本还是搞个无缓盘比较合适。
至于我这个要如何处理,估计要等有时间换一块硬盘或者重新考虑在加一个机箱风扇了。
PS:机箱只能加装5010的风扇。小扇普遍声音大就算了,机箱孔位还比较小。风扇贴机箱壁近了风切声比较大,离远了散热效果差。除非加大转速,但转速上去噪声也上去了。哎难搞。