以下内容操作具有风险,操作前请提前备份数据。建议由有丰富经验的人使用,需要掌握diskpart。
背景使用ubuntu+win10 dual boot后,需要重置回纯净win10系统。
BCD是Boot Config Data的缩写。
UEFI模式安装win10 + Ubuntu双系统后,由于Ubuntu会使用grub2托管启动项,所以卸载最大的难点在于如何重建windows启动索引。
步骤重建windows启动
删除ubuntu安装分区并归入windows磁盘
删除bios menu
删除efi/ubuntu
重建windows启动最简单的方式其实是使用EasyBCD,EasyBCD对个人用户是免费的,简单的填写邮箱即可下载,也不用验证邮箱。建议官网下载:https://neosmart.net/EasyBCD/
通过 “bcd备份/恢复 - 重新创建/修复引导文件 - 执行动作” 来修复引导文件,如下图:
使用EasyBCD重建引导后,开机启动恢复为windows启动。此后使用windows自带的磁盘管理工具(diskmgmt.msc)删除ubuntu的分区,并拓展windows分区即可。
卸载残留主要包括:
bios的boot菜单,可以直接在bios的boot设置中,使用delete删除ubuntu启动项,
efi/ubuntu中的残留文件。可通过DiskGenius图形化界面浏览分区中文件进行删除,
也可使用windows的diskpart挂载efi分区,删除efi/ubuntu目录,详细操作如下:
UEFI引导方式,启动是由EFI分区控制的,EFI分区目录结构如下:
EFI -Boot --bootx64.efi -Microsoft -Ubuntu -fedora ...重建引导需要重建EFI目录下的文件内容。
EasyBCD属于第三方软件,安全性低于微软的官方工具
因此重建引导推荐使用windows自带的命令行工具:bcdboot、bootrec。
bcdboot windows安装后都会携带,各类PE中也包含。使用也较为简单,但使用后高级启动选项中会丢失Windows RE(Recovery Environment,恢复环境)相关功能选项。
bootrec 恢复较为完整,不过必须进入完整的Windows RE才能使用。
为了演示极端情况,在重启进入windows后格式化efi分区,后续会重建windows启动相关文件。实际使用时,可酌情调整。
注意:格式化efi分区后,注意电脑不要直接关机,否则将无法正常启动。不过可以通过U盘启动WINPE / Windows RE环境恢复。
或者也可使用diskgenius工具直接浏览删除efi分区中的文件
bcdboot通过bcdboot命令重建BCD。需先找到windows安装卷,并在命令行中指定。可重新生成 Boot 与 Microsoft 目录
diskpart list volume exit bcdboot c:\windows #注意如果是PE启动,此处一般不是c盘而是d盘,需要使用list volume显示的系统分区所在盘符 #bcdboot c:\windows /s p: /f UEFI #完整命令,p:为efi分区盘符,需要使用diskpart挂载efi分区并分配盘符,在前文卸载残留内容中有命令行样例 bootrec进入Windows RE方法如下:
shift+点击重启 或 设置-更新和安全-恢复-高级启动
通过高级选项进入命令行模式
电脑无法启动进入windows系统,或者没有命令行模式选项的,可使用Media Creation Tool制作win10启动盘启动后,进入命令行模式。
菜单路径为:修复此计算机->疑难解答(高级选项)->命令行模式,快捷键为shift+f10
重建efi/microsoft命令如下:
bootrec /rebuildbcd上述命令,会重建efi/Microsoft,但不会重建efi/boot。需要通过启动修复选项恢复引导,菜单路径如下:
(windows光盘启动点击下一步->修复此计算机->)点击疑难解答(高级选项)->启动修复
等待恢复后,即可正常进入windows。此方式恢复比bcdboot更全面,会附带Windows RE环境。RE相关文件位于P:\EFI\Microsoft\Recovery
bootrec 的完整命令参数如下:
bootrec /fixboot # 提示access is denied,可尝试cd至p:\EFI\Microsoft\Boot再运行 bootrec /rebuildbcd #重建bcd bootrec /scanos # 查找已安装系统的windows目录 bootrec /fixmbr # 非UEFI引导方式,修复mbr参考:
https://askubuntu.com/questions/133533/how-to-remove-ubuntu-and-put-windows-back-on
https://askubuntu.com/questions/63610/how-do-i-remove-ubuntu-in-the-bios-boot-menu-uefi?newreg=11a19a9af4ea40ee8b2ec3d14be133a1
https://www.lifewire.com/how-to-rebuild-the-bcd-in-windows-2624508
https://itsfoss.com/install-ubuntu-dual-boot-mode-windows/
https://support.microsoft.com/en-us/help/927392/use-bootrec-exe-in-the-windows-re-to-troubleshoot-startup-issues
https://www.partitionwizard.com/clone-disk/bootrec-fixboot-access-is-denied.html