GRUB 2 启动错误:“内存不足”

GRUB 2 启动错误:“内存不足”

我刚刚安装了一个SAS/SATA 3控制器(IBM M1015),现在我无法启动系统(GRUB 2 引导加载程序)。

我看到的最后启动消息是:

Verifying DMI Pool Data .................
.
out of memory
Aborted. Press any key to exit...

我启动了 Fedora 20 live CD(安装了所有当前更新),挂载了我的主 LVM 系统映像,并尝试重新安装 GRUB 2:

mkdir /x
mount /dev/fedora/root /x
grub2-install --root-directory=/x /dev/sda

最终报告取得成功。

但在启动时它仍然会失败,并出现前面提到的“内存不足错误”。

我还尝试添加vmalloc=256m到 GRUB 默认命令行并更新 GRUB 2 grub2-mkconfig -o /boot/grub2(当然是在没有安装控制器的情况下启动系统)。

我该如何解决这个问题?

答案1

检查文件系统错误

这也可能是驱动器根分区上的文件系统错误。

我昨天有这个

# grub-mkconfig -o /boot/grub/grub.cfg

因此使用装有“系统救援盘”的可启动 USB 记忆棒重新启动 http://www.system-rescue-cd.org/

并运行 Gparted 进行磁盘和文件检查。菜单 > 系统 > Gparted

在 / 分区中发现并更正了错误。

重新启动并重新运行“grub-mkconfig -o /boot/grub/grub.cfg”且未发现错误。

答案2

在我看来,您的问题与 GRUB 完全无关,并且我从以下消息中得到了线索:

 Verifying DMI pool data

DMI(桌面管理接口)是系统组件和管理它们的软件之间的抽象层。系统管理 BIOS (SMBIOS) 是基本输入输出系统 (BIOS) 的扩展,它制定并向操作系统提供此信息。池数据就是信息。简而言之,当 BIOS“验证 DMI 池数据”时,它正在验证它发送给操作系统的数据表。

在您更换 SAS/SATA 3 控制器后立即出现此消息这一事实是问题真正起源的另一个线索。

可能的选择包括:

  1. 恢复到旧控制器。

  2. 检查是否存在适合您的启动选项 (Legacy/UEFI) 类型的分区表 (MS-DOS/UEFI)。

  3. 将主板 CMOS 设置设置为驱动器类型的自动,已断开驱动器。

  4. 在主板 CMOS 设置 PNP/PCI 配置中启用“重置配置数据”(某些 CMOS 设置中为“强制更新 ESCD”)。下次重新启动将自动禁用它。

  5. 清除 CMOS,它可能因更换控制器而损坏。

相关内容