如何在无法进入Windows系统的情况下重建Windows引导文件
如何在无法进入Windows系统的情况下重建Windows引导文件
别担心,你的思路完全没问题——用Windows安装U盘启动修复引导是可行的,而且绝对不会影响到你现有的Linux引导项,我来一步步给你捋清楚操作步骤:
步骤1:准备并启动Windows安装U盘
- 先确保你有一个能正常启动的Windows安装U盘(和你当前系统版本匹配最好,比如Win10/11对应版本)
- 把U盘插到电脑上,重启后从U盘启动(注意选带UEFI标识的启动项,不要选Legacy模式)
步骤2:进入命令提示符修复环境
- 进入Windows安装界面后,别点“现在安装”,而是点击左下角的“修复计算机”
- 依次选择“疑难解答”→“高级选项”→“命令提示符”,打开命令行窗口
步骤3:确定Windows系统分区和EFI分区的盘符
- 先输入
diskpart启动磁盘分区工具 - 输入
list disk,找到你的主硬盘(看容量判断,比如装有双系统的512G/1T硬盘) - 输入
select disk X(X是你主硬盘的编号,比如0) - 输入
list volume,这里要找到两个关键分区:- Windows系统分区:NTFS格式,容量最大的那个,也就是你装Windows的原C盘
- EFI分区:FAT32格式,容量一般在100M-500M之间,就是之前被你清空的那个分区
- 记住这两个分区的盘符(比如系统分区是D,EFI分区是F),然后输入
exit退出diskpart
步骤4:用bcdboot重建引导文件
- 在命令提示符里输入:
bcdboot D:\Windows /s F: /f UEFI- 把
D:\Windows里的D换成你刚才找到的Windows系统盘符 /s F:里的F换成对应的EFI分区盘符/f UEFI明确指定是UEFI模式的引导
- 把
- 执行完如果提示“已成功创建启动文件”就大功告成了
额外小技巧:用Arch Live USB快速添加引导
如果你手头正好有Arch的Live USB,其实也可以不用WindowsU盘,直接用efibootmgr添加Windows引导项:
- 启动Arch Live USB,挂载你的EFI分区到
/mnt/efi(比如mount /dev/nvme0n1p1 /mnt/efi,根据你的实际分区调整) - 执行命令:
efibootmgr -c -d /dev/nvme0n1 -p 1 -L "Windows Boot Manager" -l "\EFI\Microsoft\Boot\bootmgfw.efi"-d指定你的硬盘设备,-p指定EFI分区的编号,-L是引导项显示的名称,-l是Windows引导文件的路径
- 这样就能直接把Windows引导加到systemd-boot的启动菜单里,更省事儿
重启电脑后,你就能在systemd-boot的启动菜单里看到Windows的选项了,完全不会影响你的Arch引导~
备注:内容来源于stack exchange,提问作者pixup1




