You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

卸载Android Shell后Grub引导故障修复求助

卸载Android Shell后Grub引导故障修复求助

看起来你这Grub引导的连环坑踩得有点闹心啊!先别慌,我们一步步来把引导给拉回正轨。

先理清楚你现在的状况:之前装了Android Shell和Win10双系统,卸载时没处理好Grub,先是出了Error 15,用Ubuntu U盘执行了dd if=/dev/zero of=/dev/sda1 bs=446 count=1擦除MBR后,又变成Error 17,现在用Windows安装U盘启动还提示找不到/boot/grub/i386-pc/normal.mod——核心问题就是Grub的残留引导信息没清干净,同时Windows的引导也被干扰了。

给你两套针对性的修复方案,优先试第一套(回到正常Windows启动是核心目标):

方案一:用Windows安装U盘修复原生引导

  1. 插好Windows安装U盘,进BIOS/UEFI设置成U盘优先启动,进入安装界面后别点“现在安装”,选左下角的修复计算机
  2. 依次点「疑难解答」→「命令提示符」,进入命令行环境
  3. 先确认系统盘位置:
    • 输入diskpart回车,进入磁盘分区工具
    • 输入list disk回车,找到你的主系统盘(一般是Disk 0,看容量判断)
    • 输入select disk 0回车,选中主盘
    • 输入list partition回车,找到Windows系统所在的分区(通常是带「Boot」标记的分区,或者容量最大的那个分区),记下来它的盘符(比如C:)
    • 输入exit回车,退出diskpart
  4. 修复MBR和引导文件:
    • 输入bootrec /FixMbr回车,这会重写磁盘的主引导记录,把之前用dd擦除坏的部分覆盖掉
    • 输入bootrec /FixBoot回车,修复引导分区的启动文件
    • 输入bootrec /RebuildBcd回车,让系统重新扫描并重建Windows启动项,按提示选Y确认添加
  5. 重启电脑,拔掉U盘,看看能不能正常进入Win10

方案二:彻底清除Grub残留(如果方案一重启后还能看到Grub错误)

如果执行完方案一还是有Grub的提示,那说明EFI分区里还留着Grub的文件,继续用Windows命令提示符操作:

  1. 再次进入diskpart,执行list diskselect disk 0list partition,找到EFI分区(通常是100-500MB左右的小分区,类型是「System」)
  2. 输入assign letter=Z:回车,给EFI分区分配一个临时盘符Z:
  3. 输入exit退出diskpart,然后输入Z:回车进入EFI分区
  4. 输入rmdir /s /q EFI\grub回车,彻底删掉Grub的残留文件夹
  5. 确认没有其他Grub相关文件后,输入exit关闭命令提示符,重启电脑

为什么你之前的操作会出问题?

你用的dd if=/dev/zero of=/dev/sda1 bs=446 count=1命令,是擦除sda1分区的前446字节(也就是分区的MBR引导区),但如果你的电脑是UEFI启动,MBR其实只是个占位符,真正的引导信息存在EFI分区里;就算是传统BIOS启动,MBR是在整个磁盘的最开头(而不是sda1分区内部),所以这个操作不仅没清掉Grub的核心引导,还破坏了分区的引导数据,才导致后续的Error 17和找不到normal.mod的问题。

备注:内容来源于stack exchange,提问作者Jimmy

火山引擎 最新活动