为什么故障的驱动器会导致系统无法启动?

为什么故障的驱动器会导致系统无法启动?

我有一台旧的(2006 年制造)Western Digital Caviar SE 250 GB,带有 SATA 接口,我从无法启动的系统中取出它。进一步的测试表明,将该驱动器插入另一个已知良好的系统,并将另一个驱动器设置为主驱动器,会导致系统无法启动并卡在启动顺序中,驱动器会反复发出“咔嗒”声。

现在,如果我在 POST 后插入驱动器,无论是在 BIOS 中还是在 OS 中,它都会检测到。在智能控制,驱动器显示了很多与故障前或老旧(好吧,所有标志都是一个或另一个)相关的标志。它通过了快速自检,但完整自检失败了。驱动器似乎对操作系统可见,内容也是如此,但我没有费心检查内容是否可以恢复(因为它是一个裸露的操作系统安装)。

那么,为什么一个明显是机械故障的驱动器会导致系统无法启动呢?如果需要,我愿意在 Linux 系统上运行任何(免费)测试,但这似乎级别较低。系统启动后驱动器似乎工作正常,这说明电气/系统故障是禁忌的,但没有其他原因导致系统无法启动。

答案1

进一步的测试表明,将该驱动器插入另一个已知良好的系统,并将另一个驱动器设置为主驱动器,会导致系统无法启动并卡在启动顺序中

这部分听起来就像您的 BIOS 在您没有意识到的情况下更改了启动设备。

一些 BIOS 允许您根据硬盘列表中的位置指定驱动器,如下所示(例如 HDD-1、HDD-2 等):

在此处输入图片描述

一些 BIOS 允许您通过名称指定特定的驱动器:

在此处输入图片描述

有些 BIOS 允许你为每个设备指定一个启动设备类型

在此处输入图片描述

对于此类 BIOS,如果有多个(例如多个 HD、多个 CD/DVD 驱动器等),则需要单独指定该类型的具体设备:

在此处输入图片描述

发生的情况是,如果您插入新的驱动器,有时 BIOS 会更改驱动器的顺序或重置启动设备列表,因此您需要确保再次指定正确的设备。

因此,可能发生的情况是,当您插入坏驱动器时,BIOS 会将启动设备从好驱动器更改为新驱动器,从而导致启动受阻。只需将其改回好驱动器即可。

答案2

当您启动系统时,IDE/SATA/RAID/等控制器会尝试初始化连接的驱动器。如果其中一个驱动器损坏,则可能需要一段时间才会超时,然后控制器才会放弃。启动过程(尤其是 POST)会阻止其大多数初始化过程,因此如果控制器停滞,则它将阻止启动继续,直到超时。

如果您在 POST 之后连接它,那么您会注意到系统会冻结一段时间,因为控制器会尝试初始化驱动器。当您在运行操作系统时插入损坏的可移动驱动器时,这种情况尤其明显;系统变得无响应,甚至到了鼠标光标冻结的地步,直到驱动器超时并且控制器继续移动。

从技术上讲,POST 期间的任何组件测试都可能发生同样的情况。例如,如果 RAM 损坏并且 POST RAM 测试失败,或者视频卡无法足够快地完成其自身的 POST。即使键盘和鼠标也可能导致启动延迟,但大多数其他组件都会很快失败,而驱动器(任何类型的驱动器)通常是这样做的,因为它们要求一些时间来启动等等,因此内置了超时功能。一些 BIOS 允许您指定等待驱动器初始化的时间,如下所示(可能有多个相关设置)。

在此处输入图片描述

答案3

BIOS 尝试在 POST 期间检测驱动器,问题驱动器可能需要太长时间才能响应,请尝试关闭自动检测。

此外,跳线是否设置正确,听起来坏的驱动器可能被设置为主驱动器或电缆选择。

答案4

面临类似的问题。一台 seagate x16。我的系统会转到可以按 F2 进入 BIOS 的屏幕,然后完全冻结。如果我继续按 F2 进入 BIOS 设置,它会发出哔哔声,但不会进入 BIOS 设置。只是冻结在那里。

拔掉驱动器,整个计算机就可以正常工作。(幸运的是,x16 不在我的操作系统所在位置。)

所以我猜测 BIOS 想向硬盘询问有关其自身的问题,但没有得到答案,并且不会只是放弃获取答案然后忘记这件事。

不过,如果我能做些什么来修复驱动器,那就太好了。

相关内容