BIOS 无法识别硬盘

BIOS 无法识别硬盘

由于我的主 PC 无法识别启动 USB,我将硬盘重新安装到另一台 PC 上的 Linux 中。但在我将硬盘添加到主 PC 后,它不再识别它,在 BIOS 启动选项中,我将“硬盘”作为第一个选项,但即便如此,它也只能启动到 EFI shell。

我也不知道 BIOS 管理员密码,这台电脑是我收到的礼物,上面已经设置了密码。

请帮忙,这台电脑对我的工作至关重要。

答案1

PC 有两种常见的固件类型(BIOS 和 UEFI),每种固件都有各自的从磁盘启动操作系统的方法。简而言之,BIOS 系统需要磁盘上的“引导扇区”,而 UEFI 系统需要找到特定分区上的特定 *.efi 文件。

从连接了此硬盘的 Linux Live CD 启动(无论在哪台计算机上),然后打开 fdisk、GParted 或其他分区工具。检查您的磁盘是否有“EFI 系统分区”或“BIOS 启动分区”,或者两者都没有。

或者,在 EFI shell 中,使用切换到磁盘的 EFI 系统分区(如果存在),然后使用和(类似 DOS)命令fs0:查看。如果可行,则磁盘dircd曾是被认可和Linux为 UEFI 系统安装。

如果你的 Linux 安装适用于 UEFI 系统

UEFI 启动方法允许磁盘拥有多个 *.efi 文件(因此来自不同操作系统的多个引导加载程序)。当您安装操作系统时,它会将文件名记录在固件的 NVRAM(“CMOS 内存”)中。可以有多个这样的启动项;它们都将显示在固件的启动菜单中,与您的磁盘一起显示。(例如,您可能会在磁盘列表中看到“Windows 启动管理器”。)

问题是这些启动项不是存储在磁盘上,而是存储在固件中,因此将磁盘移到另一台 PC 上不会保留它们。发生这种情况时,新 PC 将只查找相同的标准文件名,但无法找到存储在旧 PC 上的自定义启动项。

解决方案是在 EFI 系统分区中找到您的引导加载程序文件(对于 Linux,它最有可能被命名为“grubx64.efi”或“shimx64.efi”),然后将其复制到标准路径:\EFI\boot\bootx64.efi。您可以从 Linux、Windows 甚至 EFI Shell 执行此操作。

如果你的 Linux 安装适用于 BIOS 系统

大多数基于 UEFI 的 PC 可以从以 BIOS 模式安装的磁盘启动,但这是一个选项(通常标记为“传统”或“CSM”模式),通常在固件设置中将其关闭。

如果您没有管理员密码,则无法更改此选项。

相关内容