讲师中心 微信公众号
AI工具推荐 视频效率加速

如何排查Linux GRUB引导失败问题完整教程

云晨君_2368

云晨君_2368

发布时间:2026-04-02 11:20:44

|

1327人浏览过

|

来源于php中文网

原创

GRUB引导失败需按报错分类处理:grub>或grub rescue>表明GRUB未正确安装;Error 15为内核或initrd路径错误;Error 17系根分区UUID变更或文件系统不识别;黑屏多因显卡驱动冲突或initramfs损坏。

如何排查linux grub引导失败问题完整教程 - php中文网

如果您在启动Linux系统时遭遇GRUB引导失败,屏幕停留在grub>、grub rescue>、Error 15、Error 17或黑屏等状态,则说明引导链在GRUB阶段中断。以下是覆盖多种典型故障场景的完整排查与修复流程:

一、依据报错信息快速分类故障类型

启动时出现的提示是首要诊断线索,不同报错指向不同层级的问题: “grub>”或“grub rescue>”表明GRUB主程序损坏或未正确安装到MBR/EFI分区;“Error 15: File not found”说明grub.cfg中指定的内核(vmlinuz)或initrd路径错误或文件缺失;“Error 17: Cannot mount selected partition”反映root=参数指向的根分区UUID变更、文件系统不被识别或/boot未挂载;黑屏/光标闪烁/无限重启常由显卡驱动冲突、initramfs损坏或内核panic导致。

二、临时编辑启动项进入系统

该方法适用于GRUB菜单仍可显示但默认项无法启动的情形,通过最小干预绕过当前错误,争取进入已安装系统完成后续修复。

1、在GRUB启动菜单界面按e键进入编辑模式。

2、定位以linux开头的行,检查其后root=参数值是否匹配当前根分区的实际UUID;若不确定,可在Live环境执行sudo blkid确认。

3、核对initrd行所列镜像文件名(如/boot/initrd.img-6.8.0-xx-generic)是否真实存在于/boot目录下;若路径错误或文件不存在,可临时删除整行再尝试启动。

4、若怀疑显卡驱动引发问题,在linux行末尾追加nomodeset(禁用GPU内核模式设置)或acpi=off(关闭ACPI支持,适用于老旧硬件)。

5、编辑完成后按Ctrl+X或F10启动;成功进入系统后立即执行sudo update-grub或sudo grub2-mkconfig -o /boot/grub2/grub.cfg更新配置。

三、使用GRUB命令行手动引导

当仅显示grub>或grub rescue>提示符且无菜单时,需依赖GRUB内置命令逐层加载组件,前提是/boot分区可被识别且关键文件完好。

1、输入ls列出所有磁盘与分区,例如输出(hd0) (hd0,gpt1) (hd0,gpt2)。

2、依次执行ls (hd0,gpt1)/、ls (hd0,gpt2)/等,寻找包含vmlinuz-、initramfs-及grub/或grub2/目录的分区,记下该分区标识(如(hd0,gpt2))。

3、执行set root=(hd0,gpt2)设定/boot所在分区为根设备。

4、执行insmod normal加载正常模块;若提示unknown filesystem,尝试先加载对应文件系统模块,如insmod xfs或insmod ext2。

5、执行linux /vmlinuz-xxxx root=/dev/mapper/centos-root ro(LVM环境)或linux /vmlinuz-xxxx root=/dev/sda2 ro(普通分区),其中xxxx可用Tab键自动补全内核版本号。

6、执行initrd /initramfs-xxxx.img加载初始内存盘镜像。

7、执行boot启动系统。

四、通过Live环境重装GRUB引导程序

当无法通过命令行临时引导时,必须借助外部Live USB/CD环境重建GRUB安装,此操作将恢复MBR或EFI引导扇区及必要模块。

1、启动Live系统,打开终端,运行lsblk -f或sudo fdisk -l识别目标硬盘(如/dev/sda)及根分区(如/dev/sda2)。

2、挂载根分区:sudo mount /dev/sda2 /mnt。

3、若/boot或/boot/efi为独立分区,需分别挂载:sudo mount /dev/sda1 /mnt/boot、sudo mount /dev/sda3 /mnt/boot/efi(根据实际分区调整)。

4、绑定虚拟文件系统:sudo mount -t proc proc /mnt/proc、sudo mount -t sysfs sys /mnt/sys、sudo mount -o bind /dev /mnt/dev。

5、切换至原系统环境:sudo chroot /mnt。

6、根据固件类型执行重装:BIOS模式运行grub-install /dev/sda;UEFI模式运行grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=GRUB。

7、更新GRUB配置:update-grub或grub2-mkconfig -o /boot/grub2/grub.cfg。

8、退出chroot并重启:exit两次,拔出Live介质后重启。

五、验证底层硬件与文件系统健康状态

即使GRUB恢复启动,若磁盘存在物理缺陷或文件系统损坏,仍可能再次触发引导异常,因此需同步检查基础支撑层。

1、在Live环境或已启动系统中运行sudo smartctl -a /dev/sda,重点观察Reallocated_Sector_Ct与Current_Pending_Sector两项数值,非零即表示磁盘存在不可逆坏道风险。

2、若怀疑文件系统异常,先卸载目标分区:sudo umount /dev/sda2。

3、对ext4/ext3分区执行强制修复:sudo fsck -y /dev/sda2。

4、对XFS分区执行修复:sudo xfs_repair /dev/sda2。

5、修复完成后重新挂载:sudo mount -a,并检查/boot目录下是否存在vmlinuz-、initramfs-及grub2/grub.cfg等关键文件。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

音述AI
音述AI Hot

一款AI音频处理工具,主要用于音述AI是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

相关专题

更多
scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

949

2023.10.18

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2680

2023.10.25

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

3910

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

3353

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2493

2023.06.30

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

6010

2023.07.05

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

5662

2023.07.06

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

3333

2023.07.20

FrankenPHP集成Laravel详细教程
FrankenPHP集成Laravel详细教程

本专题提供FrankenPHP集成Laravel的详细配置指南,全面解析运行原理、开发环境搭建、Caddyfile配置、Octane工作模式、数据库连接、队列任务、定时任务和生产环境优化,解决部署过程中常见的报错与兼容性问题。

40

2026.10.08

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn