如何恢复已删除的Windows启动文件?Windows无法启动故障求助
修复Ubuntu重装后无法启动Windows的问题
我完全懂你现在的烦躁——折腾GRUB损坏、误删启动文件,重装Ubuntu后Windows彻底罢工了,咱们一步步把它拉回来:
方案1:用官方Windows安装介质修复启动(优先推荐)
你之前用unetbootin做的U盘可能存在兼容性问题,建议先换成微软官方的Media Creation Tool制作启动U盘,步骤更稳妥:
- 插入U盘重启,从U盘启动,进入Windows安装界面后点击「修复计算机」
- 依次进入「疑难解答」>「高级选项」>「命令提示符」,执行以下命令:
- 启动磁盘分区工具:
diskpart - 列出所有磁盘,找到Windows所在的磁盘(比如Disk 0):
list disk - 选中目标磁盘:
select disk 0 - 列出分区,找到FAT32格式、100-500MB大小的EFI系统分区:
list volume - 选中EFI分区(替换X为分区编号):
select volume X - 给EFI分区分配临时盘符:
assign letter=Z: - 退出diskpart:
exit - 修复EFI启动项(C是Windows系统盘的盘符,确认好再执行):
bcdboot C:\Windows /s Z: /f UEFI
- 启动磁盘分区工具:
- 执行完重启电脑,看看能不能看到Windows启动选项
方案2:通过Ubuntu修复GRUB中的Windows启动项
如果你的Ubuntu还能正常启动,可以先试试让GRUB重新识别Windows:
- 打开终端,先安装系统检测工具:
sudo apt install os-prober - 让GRUB扫描所有可启动系统:
sudo update-grub - 重启后查看GRUB菜单,应该会出现Windows的启动选项,选择它试试
方案3:手动重建EFI启动文件(前两个方案失效时用)
如果EFI分区里的Windows启动文件已经被误删,需要手动重建:
- 还是用Windows命令提示符(步骤同方案1进入命令提示符):
- 用diskpart给EFI分区分配盘符(比如Z)
- 创建Windows启动目录(如果不存在):
mkdir Z:\EFI\Microsoft\Boot - 复制系统自带的启动文件:
xcopy /s C:\Windows\Boot\EFI\* Z:\EFI\Microsoft\Boot\ - 再次修复启动项:
bcdboot C:\Windows /s Z: /f UEFI
- 如果你习惯在Ubuntu里操作,还可以用efibootmgr添加启动项:
注意替换sudo efibootmgr -c -d /dev/sda -p X -L "Windows Boot Manager" -l \\EFI\\Microsoft\\Boot\\bootmgfw.efi/dev/sda为你的磁盘名称,X为EFI分区的编号(比如1)
额外注意事项
- 操作前一定要备份重要数据,避免误操作导致数据丢失
- 如果你的电脑是BIOS/MBR模式(不是UEFI),上面的命令不适用,应该执行以下命令:
bootrec /fixmbr、bootrec /fixboot、bootrec /scanos、bootrec /rebuildbcd - 确认盘符和分区编号时一定要仔细,别选错磁盘/分区
内容的提问来源于stack exchange,提问作者Doğuş




