type
status
date
slug
summary
tags
category
icon
password
如需技术支持,请点击 👉 联系方式
2023-08-29 更新:最终原因是由于内存,更换内存之后就正常了。
0、背景
前两天有位朋友从博客联系到我寻求帮助:
当系统启动之后(启动过程很慢),要么无法进入网页,要么进入网页后台之后提示 U 盘崩溃或者掉线:
Your flash drive is corrupted or offline. Post your diagnostics in the forum for help. See also here 你的 U 盘已经崩溃或者离线。 请将你的数据上传至论坛寻求协助。
Fatal Flash Driver Error This usually means your flash drive is corrupted or has dropped offline The rest of th e Unraid GUI will also be affected. Post a new thread in the Unraid forums if this error continues. 这通常意味着你的 U 盘已损坏或已掉线。Unraid 的其他 GUI 也会受到影响。如果此错误持续,请在 Unraid 论坛中发表新帖。
硬件设备如下:
CPU:i5 - 12500tes
主板:精粤 B760M SNOW DREAM(雪之梦)
内存:海力士 DDR4 3200
1、初步测试和观察到的现象
(1)不是 U 盘问题:换了多个 U 盘也是一样的现象,但 U 盘是正常可用的。
尝试更换多个 U 盘,但最终的结果都一样。
(2)Unraid 系统无损坏:使用官方 USB 系统制作工具,系统完整性上是没问题的。
非开心版等破解版本,安装的文件均来自于官网,因此不会是系统文件完整上的问题。
(3)伴随 I/O 错误:日志输出显示存储设备出现 I/O 问题。
启动过程中伴随着关于硬盘的 I/O 错误,并且还涉及到虚拟化(IOMMU,DMAR)相关报错。
(4)网页无响应:且系统加载速度慢。
除了会系统会提示 U 盘损坏之外,网络访问也不稳定(页面无法登录,或者登录之后一会就失去连接)。
(5)其他
2、针对性测试
2.1、内存测试
由于 Unraid 系统是从 U 盘加载到内存中运行,因此如果内存在物理上存在硬件问题,那么会直接影响系统的正常运作。
由于从初步测试结果中观察到 Unraid 网页访问时出现系统加载速度慢、网页响应迟缓、无法访问以及断连等情况,因此怀疑有可能是内存有问题。
但经过一天的测试发现问题不在内存上:
2.2、内存超频与其他 BIOS 设置
官方文档中关于系统崩溃的解释,除了内存问题之外,还提到了内存超频(Over-clocking RAM)。之所以超频可能会导致系统崩溃,是因为主板和 CPU 的组合会有一个可承受的内存频率,当你超频内存之后频率大于主板和 CPU 可以承受的范围,那么就会导致系统崩溃。
(1)XMP
XMP 是一种内存超频的技术,可以读取内存SPD芯片内的的预置超频频率和时序档案,让内存快速超频到稳定的频率。
XMP 全称 Intel Extreme Memory Profile ( Intel )DOCP 全称 AMD Direct Over Clock Profile ( AMD )
这里重点提到 XMP 是因为存在不少因 XMP 导致 Unraid 死机的情况,例如下面的案例:
另外关于内存频率与 Unraid 之间的影响,可以参考此帖子:
但在本例当中 XMP 并不是罪魁祸首。
(2)其他 BIOS 设置
实际上可能会影响 Unraid 正常运行的 BIOS 设置中,电源这一块的设置可能性会大一点,比如说 CPU 的 C-State(C 状态) 、AMD 的 Power Supply Idle Control(参考案例)。
关于 BIOS 影响 Unraid 启动的内容,可以参考博主的另一篇文章:《常见问题-2:如何保证unRAID正确开机》。
但经过一番调试,问题也没有出在 BIOS 的电源管理或者其他相关的设置上。
包括前面提到过的 IOMMU 相关的虚拟化设置也不是罪魁祸首:
3、最终原因:内核与硬件不兼容
但是出现了另一个问题,就是设备上的 PCIE 光威 M2 固态无法驱动。我也曾经在帮别人处理问题时遇到升级系统版本后无法驱动 M2 固态的情况(比如博主遇到的三星 PM961 回退到 6.9.1 版本才能识别出来),主要原因是系统内核与 M2 的主控不兼容,具体细节可以参考以下案例:
虽然用 6.10.3 版本出现了不兼容 M2 主控的问题,但相比起来前面的情况已经算是小问题了。
后来我给这位朋友建议去尝试升级主板的 BIOS,然后再尝试安装更新的版本去测试是否存在一开始的问题。
4、补充:关于精粤主板在 BIOS 这一块的问题
以下观点仅针对 Linux 系统下的服务器应用场景,总的来说不建议在 NAS 上使用精粤的主板(仅代表个人观点)。
博主并不精通硬件,但是在此次问题之前,我也了解到精粤这个牌子的主板在 DIY 玩家中的口碑貌似不是很好,并且结合我过往处理过使用精粤主板的案例中,似乎也侧面印证了这一点。
目前来看,精粤主板的 BIOS 存在较多问题,结合我的经验,这对虚拟化来说是一个比较致命的缺陷(主要体现在硬件直通)。
以下是我截取到的一些关于精粤主板的评论:
博主在使用 Unraid 以来,处理过的所有类型的问题中,最复杂、难度最大的要属虚拟化问题了。2022 年我在 SMZDM 上发表过一篇关于核显直通的文章,详细的讲解了 Intel 核显直通给 Windows 虚拟机的各种理论和实时细节。
为了写这篇文章,我在一个多月的时间里天天找资料学习、整理和归纳虚拟化的相关知识,因为虚拟化的各种细节多且杂,即时到今天我也认为自己不过学到了一些皮毛而已。
我想表达的是,如果你用了一块在 BIOS 上做得不好的主板,那么你大概率在虚拟化应用这一块会栽跟头。
当然如果虚拟化不是你的主要需求,你也不需要直通网卡、显卡什么的给虚拟机,那么条件就会宽松许多。否则的话我建议还是谨慎,因为我处理过很多虚拟化出问题的案例中,主板往往是其中的一个主要影响因素。
举个例子,就拿核显直通来说。在上面的文章中,我提到需要提供核显 VBIOS 固件给到虚拟机去使用,否则可能核显直通不成功,其中的因素就跟主板密不可分。因为不是所有情况下都会需要使用 VBIOS 固件,因为我就处理过不需要使用 VBIOS 固件也可以正常直通核显的情况,这主要跟主板有关。
所以,如果大家注重虚拟化这一块的功能,建议还是选择服务器领域的一些比较信得过的牌子。
5、2023-08-24 后续:更换 6.9.2 版本
这位朋友更新主板 BIOS 版本之后依然出现同样的问题,并且安装 PVE 也是各种 I/O 报错,最后选择停留在 Unraid 6.9.2 版本。
但不好的地方在于 12 代核显不能正常用。
6、2023-08-28 后续:罪魁祸首 —— 内存
虽然使用了 6.9.2 版本,但依然出现崩溃的情况,后来更换了内存之后系统就稳定了,也没有再出现 I/O 或者 U 盘崩溃的报错,因此基本可以判定是内存问题导致的。
沟通
- 作者:JackieWu
- 链接:https://www.jackiewu.top/article/unraid-crash-due-to-ram-problem
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。