加入收藏 | 设为首页 | 会员中心 | 我要投稿 佛山站长网 (https://www.0757zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

如何从失败的Linux引导中恢复

发布时间:2016-11-04 04:20:50 所属栏目:Linux 来源:网络整理
导读:大多数 Linux 计算机使用 Grand Unified Bootloader (GRUB) 更具体的讲是 GRUB 2 来控制从计算机的固件到内核的转移。GRUB 2 提供了复杂的引导时用户交互功能,

如果您的计算机使用了独立磁盘冗余阵列 (RAID) 或逻辑卷管理 (Logical Volume Management, LVM),或者依赖于旧的并行 ATA (PATA) 磁盘或外部 USB 磁盘,那么您可能需要选择这些功能并按下 Enter 来激活它们。完成上述操作之后,您可以尝试检测选项。我发现 “Detect any GRUB2 configuration file (grub.cfg)” 和 “Detect any GRUB2 installation (even if the MBR is overwritten)” 选项一般最适合恢复损坏的 GRUB 安装。但是 “Detect any Operating System” 选项可能也值得一试。

如果检测成功,您应该看到一个新的 GRUB 选项菜单。在单操作系统安装中,此菜单可能仅包含一个选项,它使用路径来识别 GRUB 配置文件,就像 (hd0,gpt5)/grub/grub.cfg 中一样。在选中此选项时,应显示您的安装的正常 GRUB 屏幕。(字体和颜色可能不同,但菜单选项应该能够正常工作。)

执行永久修复

到目前为止,我介绍的修复都是永久性的。您可能已成功引导 Linux,但是,只要重新引导,就会看到原始的 GRUB 屏幕。要让您的更改永久生效,需要采取额外的步骤。

其中最简单的步骤是修改 GRUB 配置文件。尽管 可以直接编辑 grub.cfg 来修改您的设置,但此方法不可取,因为只要升级您的发行版提供的内核,自动化的脚本就可以从其他文件重新构建该文件。相反,您需要编辑 /etc/grub.d 中的文件和 /etc/default/grub 中的默认全局设置。然后可以使用 grub-mkconfig,从 Linux 命令提示符生成一个新的 grub.cfg 文件:

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

如果您的问题是 GRUB 仅显示了一个 grub> 提示符或完全未启动,那么您必须将 GRUB 重新安装到您硬盘上:

grub-install /dev/sda

在某些情况下,您可能需要将 GRUB 安装到 /dev/sda 以外的设备,比如 /dev/sdb。一般不建议将 GRUB 2 安装到某个分区。如果将 GRUB 安装到一个基于 BIOS 的计算机上的 GPT 磁盘,请确保该计算机包含一个 BIOS 引导分区。没有该分区,GRUB 可能拒绝安装或者可能不可靠。如果您将 GRUB 安装到一个基于 EFI 的计算机,那么可以省略设备规范,确保您的 ESP 挂载在 /boot/efi 上。grub-install 自动将必要的文件复制到这个目录(进而布置到 ESP)。如果 GRUB 由于不当的 NVRAM 设置而未在基于 EFI 的计算机上启动,那么您可能可以在固件自身内修复这些问题,但不同实现的细节可能有所不同。如果可以在 EFI 模式下引导一个应急系统,那么可以使用 efibootmgr 还原您的引导装载程序:

efibootmgr -c -l EFIloaderdirloadername.efi -L MenuName

结束语

GRUB 2 是一个直接引导 Linux(和其他一些)操作系统内核的灵活工具。但是由于引导过程中的漏洞和 GRUB 自身的复杂性,可能会出现一些问题,导致系统无法引导。在这些情况下,知道如何编辑各个 GRUB 代码段、如何使用 GRUB 命令行和如何使用 Super GRUB2 Disk 都是宝贵的技能。通过使用这些技术,您可以从各种引导问题中恢复并引导到您的正常安装中。此时,您可以编辑 GRUB 2 配置文件或重新安装引导装载程序让修复永久生效。

(编辑:佛山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读