重建Windows引导分区

windows+linux 双启动 卸载linux,重建windows引导(UEFI)
以下内容操作具有风险,操作前请提前备份数据。建议由有丰富经验的人使用,需要掌握diskpart。

背景

使用ubuntu+win10 dual boot后,需要重置回纯净win10系统。

BCD是Boot Config Data的缩写。
UEFI模式安装win10 + Ubuntu双系统后,由于Ubuntu会使用grub2托管启动项,所以卸载最大的难点在于如何重建windows启动索引。

步骤

  1. 重建windows启动
  2. 删除ubuntu安装分区并归入windows磁盘
  3. 删除bios menu
  4. 删除efi/ubuntu

卸载残留主要包括:

  1. bios的boot菜单,可以直接在bios的boot设置中,使用delete删除ubuntu启动项,
  2. efi/ubuntu中的残留文件。可通过DiskGenius图形化界面浏览分区中文件进行删除,
    也可使用windows的diskpart挂载efi分区,删除efi/ubuntu目录,详细操作如下:
cmd #管理员权限运行,下同
diskpart
list volume
select volume x #选择efi对应卷,fat32的,x为卷id
assign letter=p
exit

p:
dir
cd efi
rd /s ubuntu

#去除efi分区加载点(不手动去除,重启后也会消失)
diskpart
list volume
select volume p
remove letter=p

重建引导推荐使用windows自带的命令行工具:bcdboot、bootrec。

bcdboot windows安装后都会携带,各类PE中也包含。使用也较为简单,但使用后高级启动选项中会丢失Windows RE(Recovery Environment,恢复环境)相关功能选项。

bootrec 恢复较为完整,不过必须进入完整的Windows RE才能使用。

UEFI引导方式,启动是由EFI分区控制的,EFI分区目录结构如下:

EFI
-Boot
--bootx64.efi
-Microsoft
-Ubuntu
-fedora
...

efi分区中的文件,可使用diskgenius工具直接管理,也可通过diskpart挂载管理。

bcdboot

bcdboot是重建 Windows 启动项的最简方式。找到windows安装卷,并在命令行中指定。即可重新生成 Boot 与 Microsoft 目录

diskpart
list volume
exit

#注意如果是PE启动,此处一般不是c盘而是d盘,需要使用list volume显示的系统分区所在盘符
bcdboot c:\windows
#完整命令,p:为efi分区盘符,需要使用diskpart挂载efi分区并分配盘符,在前文卸载残留内容中有命令行样例
bcdboot c:\windows /s p: /f UEFI 

bcdboot执行后即可去除 Ubuntu 启动项,重启可通过Windows启动。

posted @ 2024-05-15 07:52  立体风  阅读(178)  评论(0编辑  收藏  举报