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 ...
随机推荐
- Oracle通过JDBC插入数据时,自增ID如何自动增长
一.通过触发器的方式 CREATE OR REPLACE TRIGGER tg_test BEFORE INSERT ON Userinfo FOR EACH ROW WHEN (new.userNo ...
- 5月3日上课笔记-properties文件,junit测试,mvc封层等
StringBuffer 线程安全,效率低 StringBuilder 线程不安全,效率高 判断数组是null还是空数组 null 空数组 int[] array=null; int[] array2 ...
- 【BZOJ】1913: [Apio2010]signaling 信号覆盖(计算几何+计数)
题目 传送门:QWQ 分析 人类智慧题,不会做...... 详细题解1 详细题解2 总体思路是考虑四边形 讨论凹四边形凸四边形,最后加一个单调性优化省掉个$ O(n) $ 代码 代码感觉好短 ...
- Html 上手
<!-- ctrl + / 注释 ctrl + D 复制整行 html:超文本标记语言标记 标签 元素格式<标签名>标签内容</标签名>标签的写法标签的正确嵌套标签特性 ...
- 如何实现查询显示N个工作日有效期内的数据
功能点分析:要显示N个工作日有效期内的数据,需要考虑: 1. 可以给每条数据增加一个有效期时间字段,查询时只显示有效期之前的数据,如有效期为七天,数据的创建时间是2014-07-21,那七个工作日有效 ...
- C++函数及参数
传值->传递的是数据副本(结构.普通数据类型数据) 传地址->传递的是数据变量的地址(数组等) 传值的缺点是需要复制数据副本,数据量大可能增加内存需求,降低系统运行速度; 传地址也有传地址 ...
- sql常用优化
最近因工作需要,查找资料整理了一下sql的常见优化,具体如下: 1.尽量避免全表扫描,一般在where或order by 涉及的列上建立索引: 2.尽量避免在where子句中对索引字段进行null值判 ...
- SQL中Like语句的语法
在SQL结构化查询语言中,LIKE语句有着至关重要的作用. LIKE语句的语法格式是:select * from 表名 where 字段名 like 对应值(子串),它主要是针对字符型字段的,它的作用 ...
- 如何理解dart的mixin
mixin翻译出来就是混入的意思 混入,就是一个类可以使用另一个类里的功能比如方法或者属性,其实这个功能并不陌生 ,有点类似c#里的扩展方法,但是并不同于, mixin和implements有着本质的 ...
- shell 中可以for 循环的时间加减日期格式
..};do # LAST_HOUR=`date -d '-${num} hour' +%H` 不可for循环,报格式错误 LAST_HOUR=`date "+%H" -d -${ ...