UEFI下win10+Ubuntu双启动后完全纯净卸载Ubuntu,重建BCD
以下内容操作具有风险,操作前请提前备份数据。建议由有丰富经验的人使用,需要掌握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 2.3+。直接重建引导文件。

EasyBCD对个人用户是免费的,简单的填写邮箱即可下载,也不用验证邮箱。建议官网下载:https://neosmart.net/EasyBCD/
使用EasyBCD后,开机应该可以进入win10。此后使用windows自带的磁盘管理工具删除ubuntu的分区,拓展windows分区即可。
接下来我们需要删除boot menu启动项,删除efi/ubuntu文件夹。
你可以直接在bios的boot设置中,使用delete删除ubuntu启动项,然后使用windows diskpart挂载efi分区,删除ubuntu目录
cmd #管理员权限运行,下同
diskpart
list volume
select volume x #选择efi对应卷,fat32的,x为卷id
assigin letter=p
exit
p:
dir
cd efi
rmdir /s ubuntu
去除efi分区加载点(不手动去除,重启后也会消失)
diskpart
list volume
select volume p
remove letter=p
至此其实所有问题都已经解决了。
进阶
可是,EasyBCD毕竟属于第三方软件,用起来始终不太放心。或者你可能玩着玩着,发现把启动项玩崩了。不要怕,继续看下去吧。
如何不使用第三方软件,修复启动呢?
首先我们进入recovery模式,有三种方法(推荐使用第三种):
- shift+点击重启
- 设置-更新和安全-恢复-高级启动进入
- 使用win10安装盘启动。可使用Media Creation Tool下载镜像,然后将光盘内的文件拷贝到U盘根目录。U盘需要FAT32格式。UEFI可以自动识别。无需使用ultraiso一类的工具。
进入命令行模式后可使用diskpart命令格式化efi分区。(有风险,建议提前备份重要数据)
diskpart
list volume
select volume x
format fs=fat32 quick
exit
然后重建bcd,有两种方法,bootrec或者bcdboot
bootrec /rebuildbcd
bootrec /rebuildbcd重建后会建立efi/microsoft,而不会建立efi/boot,此时只需在recovery模式中(windows光盘启动点击下一步->修复此计算机->)点击疑难解答->高级选项->启动修复。即可恢复启动项,正常进入windows。
update:可以尝试依次输入:
# bootrec /fixmbr
bootrec /fixboot
bootrec /scanos
bootrec /rebuildbcd
也可通过bcdboot命令重建BCD。找到windows安装卷后,指定bcdboot为该盘的windows目录,此方法能同时创建eft\boot与eft\microsoft,只是存在一个问题:重置后,会导致 recovery模式->疑难解答->高级选项 功能减少。建议优先使用 bootrec + 启动修复 的方式。
diskpart
list volume
exit
bcdboot d:\windows #注意此处一般不是c盘,应为list volume显示的系统所在盘符
拓展阅读:
使用微软光盘启动,可通过shift+f10快捷键快速进入命令行
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.tenforums.com/installation-upgrade/73478-how-do-i-restore-w10-bootloader-dual-boot-ubuntu-separate-hdd-3.html#post901772
https://www.lifewire.com/how-to-rebuild-the-bcd-in-windows-2624508
https://itsfoss.com/install-ubuntu-dual-boot-mode-windows/
UEFI下win10+Ubuntu双启动后完全纯净卸载Ubuntu,重建BCD的更多相关文章
- win10 ubuntu双系统安装后无法引导进入ubuntu
之前按照先装windows后装ubuntu的方式装的系统,都可以引导到ubuntu,无论是将ubuntu挂在到/boot在windows用easy BCD建立ubuntu引导,还是将ubuntu挂在到 ...
- Win10开启快速启动后关机变重启
同样可以用来解决,“msconfig引导为空”,“默认操作系统为空”,“win10改为uefi启动后关机变重启”,“legacy转uefi后无法关机” 问题起因 换完主板和cpu后,新的主板在开机时总 ...
- 【原】安装Win7和Ubuntu双系统后,Win7耳机无声音的解决办法
最近安装了Ubuntu的桌面版,作成了双系统,可是发现了一个问题:进入Win7后有时插耳机会没有声音,外放有声音.后来更新驱动也没有解决问题,最后在网上查到了解决办法. 产生原因:进入Ubuntu后, ...
- 安装windows7和ubuntu双系统后引导项设置
win7系统,U盘安装ubuntu,在选择[安装启动引导器的设备]时,1.如果你选择的是/dev/sda,即整个硬盘,他会将启动引导器使用grub进行系统引导,而不再使用windows loader, ...
- win7/ubuntu双系统下,如何恢复成win7引导及卸载ubuntu
电脑原来是win7系统,后来通过硬盘安装了Ubuntu,同时把Ubuntu设置成了开机引导项(开机时选择操作系统的界面成了紫色背景白色字体的界面),ubuntu引导开机的缺点是将来要卸载Ubuntu时 ...
- uefi模式下win10安装双系统ubuntu18.04LTS
自己折腾了半天,血与泪啊(难得一个可爱的周末 wwww我一定要写下来 跟这个博客几乎一模一样了 https://blog.csdn.net/xrinosvip/article/details/8042 ...
- uefi安装win7,deepin15双系统后grub没有windows选项
本帖最后由 873792861 于 2015-12-23 16:17 编辑 如题,首先电脑是GPT+uefi的,电脑上安装有64位的win7.用U盘工具制造好驱动U盘后,在安装时选择 专家模式 ,选择 ...
- Ubuntu双系统后时间不对解决方案
先在ubuntu下更新一下时间,确保时间无误 sudo apt install ntpdate sudo ntpdate time.windows.com 然后将时间更新到硬件上 sudo hwclo ...
- win7下装ubuntu双系统后无法进入win7的解决方法
本来电脑的系统是win7,然后用u盘装了ubuntu之后可能会出现开机没有引导界面而直接进入ubuntu系统的情况. 原因:没有设置gurb引导 解决方法:需要更新gurb来使ubuntu识别出win ...
随机推荐
- windows10 vs2015编译 带nginx-rtmp-module 模块的32位nginx
1 下载必要软件 从 http://xhmikosr.1f0.de/tools/msys/下载msys:http://xhmikosr.1f0.de/tools/msys/MSYS_MinGW-w6 ...
- android 文件上传,中文utf-8编码
要上传文件到后台的php服务器,服务器能收到中文,手机发送过去,却只能收到一堆转了UTF-8的编码(就是要decode后才是中文的编码).android这边上传文件通常是用stream方式上传的,用M ...
- windows 安装redis
git :https://github.com/ServiceStack/redis-windows 备份地址:https://gitee.com/liuq1991v/redis-for-window ...
- configure: error: jpeglib.h not found.
编译出现错误: configure: error: jpeglib.h not found. 解决方法:yum install libjpeg libjpeg-devel -y libjpeg-dev ...
- thinkphp如果表名有下划线需要用Model
模型命名规范 ThinkPHP 对数据库的表名和模型类的命名遵循一定的规范.首先数据库的表名和字段全部采用小写形式,模型类的命名规则是除去表前缀的数据表名称,并且首字母大写,然后加上模型类的后缀定义. ...
- 深入浅出 Java Concurrency (9): 锁机制 part 4 锁释放与条件变量 (Lock.unlock And Condition)
本小节介绍锁释放Lock.unlock(). Release/TryRelease unlock操作实际上就调用了AQS的release操作,释放持有的锁. public final boolean ...
- stm32库函数FSMC_NORSRAMInit()解析
这是一段对nor存储器的时序进行编程的函数,函数形式为void FSMC_NORSRAMInit(FSMC_NORSRAMInitTypeDef* FSMC_NORSRAMInitStruct),里面 ...
- TCP报文大小
链路层(二层)MTU最大传输单元:1500KByte.每个以太网帧64bytes-1518bytes,减去帧头(DMAC目的MAC地址48bit=6Bytes+SMAC源MAC地址48bit=6Byt ...
- 转--activemq的官方中文文档
1 JMS 在介绍ActiveMQ之前,首先简要介绍一下JMS规范. 1.1 JMS的基本构件 1.1.1 连接工厂 连接工厂是客户用来创建连接的对象,例如ActiveMQ提供的ActiveMQCon ...
- flutter container image FittedBox AspectRatio
当container指定了大小时,里面放入图片后,图片是居中自适应的,根据图片的大小,垂直居中或者水平居中.因为Image的默认自适应就是Contain, BoxFit.Contain 如果conta ...