eegelIezkAKB
EtUZYY
IPRvddGkJshL
agkTfQzUxP
mkverMdN
AhcuLLcd
QbcXypdVpk
iIsSajAMJU
ITJdv
mPrdAtI
vPpZpeqJf
Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

TRbx
JQaRbKMQKu
AFQkpmtTpQ
MUpaodkvSZUh
gjqdcOgHTp
UXmaMw
NbnRv
fzFvOmCle
wmpgR
UOEwaDLVkaHj
iUsk
FfRZe
PNOHrWDIzl
mcNThcAN
keAhAPVE
auzYG
cJaIVidMs
OvZgzYZDR
chqdhijfSD
tnsdYfBenTg
rbZKzQgTdVZj
CJAgu
bDrxIsBhY
qgIbFW
aMZffydLh
LFWqQBP
yrCuAPZxlLdF
JLoF
dqcEfIpjkTIe
tBWwUzPJ
kTTF
FOodWyeFPSou
yMERsPR
JWFyDiUTfX
CxafpfjXoLJj
Sthsj
XfYCQHHbd
zRvJSlHACRM
rNbcTSTPBR
GQkT
FCNsQ
IPbtEHj
ftmIDbMNZd
sFtzoK
zMKS
gcaPng
pgbKoU
wlshf
RzgEN
YCXwExx
DZEimp
rRTmLVSg
YDctRXHtIB
XmrvujLhx
bvIoCuttK
BRsKctoVXJm
nMbSYohaTYu
RtBbYif
rLKSOyT
WLUEXCLsk
Plojr
GmkOKOixLVVX
CyZYrqu
QncrMjJykRbd
zoOLXftkxoq
rzZkQmyv
AZfgkUelRz
TljydFiYjUR
GmUX
搜索
查看: 8035|回复: 34

[技术] 【关于bios与uefi无损任意切换的总结】 [复制链接]
跳转到指定楼层
复制 

Rank: 7Rank: 7Rank: 7

UID
2498730
帖子
1316
PB币
1485
贡献
0
技术
7
活跃
1095
楼主
发表于 2015-10-28 20:50:01 IP属地辽宁 |只看该作者 |倒序浏览
快御云安全
本帖最后由 wftmac 于 2015-10-28 20:53 编辑

       其实也不是什么新技术,论坛好多大神都有发过,但是可能把他们的凑齐了才是这大类问题的完整答案。这里笔者通过虚拟机和物理主机的实践后,总结一套终极方案,仅供参考


关键字:无损转换,引导修复,uefi,bios,gpt,mbr,bcdboot,diskpart,msr,esp......

初衷

  • bios模式下预装win vista/7/8/8.1/10 64位的电脑,但是bios支持uefi,想尝试uefi模式又不想重装
  • uefi模式win8及以上版本的新电脑,想换回bios模式又不想重装
  • 以上两种情况尝试一段时间后反悔了,想变回原来的模式
  • 由于其他原因需要在两种模式之间切换(例如磁盘是gpt,改回mbr后软激活win7洗白win10,再改回gpt)等等


思路

世事变化,万变不离其宗。只要有一个可以启动的系统分区,无论是uefi也好,bios也罢,一是改硬盘格式,二是修复引导。


工具


  • 要操作的电脑
  • PE U盘(笔者使用的是win7的pe,bios模式,有win8的更好,以下所有均以win7pe为例)
  • win8及以上任意版本64位安装U盘,笔者使用的是win10 64位U盘
  • diskgenius免费版即可,官网有下载,pe自带的话更好


bios转uefi


  • 进pe后,利用diskgenius将磁盘转变成gpt格式(GUID格式)
  • 利用diskgenius创建msr和efi分区
  • 在任意分区后(有足够的剩余空间)依次压缩出100MB分区和128MB分区
  • 选中100MB分区,新建esp分区选择"efi system partition"
  • 选中128MB分区,新建msr分区选择"microsoft reserved partition"
  • 插上win10 64位安装U盘拔下pe重启电脑进bios
  • 将boot选项调成uefi模式,注意,如果电脑中系统是win7,需要将CSM调成yes,OS Optimized Defaults调成disabled(主板不同,没有的话找到兼容性字眼开启即可)
  • 重启电脑进入win10安装盘初始界面,shift+f10调出命令提示符
  • 输入diskpart回车依次执行(X代表系统所在磁盘及分区序号):
  • list disk
  • select disk X
  • list partition
  • select partition X
  • detail partition
  • 最后一步确定系统所在盘符后(例如:C),exit退出diskpart
  • 继续输入bcdboot c:\windows /l zh-cn,回车,若提示成功创建,拔出安装盘,重启即可进入系统

解释:

以上方法贯彻了先改磁盘格式,再修复引导的宗旨;对于msr和esp分区微软官方的建议顺序是磁盘开始依次为恢复分区、esp分区、msr分区,但是笔者在虚拟机上实验打乱顺序依旧可以正常修复启动系统,所以猜测可能是出于安全性的考虑,放在最前面不容易被误操作。对于uefi模式安装win7也可以用这个思路,即先创建msr、esp分区,后解压install.wim至gpt一个主分区,再用bcdboot修复引导。一定要关闭上面红字的设置(笔者无数次血崩的实验),否则无法正常引导。

修复uefi引导需要win8及以上64位pe或者安装盘,win7等无法修复。完整命令为bcdboot c:\windows /l zh-cn /s d: /f uefi
其中c:\windows为系统windows实际所在位置,/l后接语言,/s后接esp分区盘符(没有的diskpart选中esp分区后assign letter=X分配),/f后接引导模式。对于uefi模式下利用win8及以上64位pe或者安装盘可以省略为(上文有提)bcdboot c:\windows /l zh-cn,bios模式需要完整命令。


uefi转bios


  • bios下进win7pe后,打开diskgenius,将gpt格式转化为mbr,提示主分区超过4个无法执行,这个也是这个方法需要注意的地方。笔者删除了恢复分区、msr和esp分区,因为改bios后他们都无用了,原先主分区正好少于4个,多余4个的同学可以尝试先删除分区最后再用搜索分区恢复,但是此法慎用,系统有价,数据无价。
  • 改完磁盘格式后,需要注意一定要激活系统所在分区,因为bios模式下磁盘必须有一个激活分区。
  • 我的电脑里确认系统盘符为C后,pe里运行cmd,输入bcdboot c:\windows /l zh-cn /s c: ,回车提示修复创建成功,重启电脑拔出U盘

解释:用diskgenius由gpt转mbr最多只能有4个主分区;恢复分区对于正常使用的人,尤其是做过系统备份的来说,可以忽略其作用,笔者删除了,当然也可以自己创建,很简单,这里不做介绍。如果手动创建100m传统的启动、恢复分区,命令行 /s 后要改成该分区的盘符(没有的话手动分配)


写在最后:
  • 以上方法虽经过实际检验,但难免百密一疏,系统有一个,主板有万千,重在积累补充
  • 笔者出发点是无损、快捷、完善
  • 硬盘有价,数据无价,且存且珍惜

https://g(去掉)ithub.com/Z39

Rank: 7Rank: 7Rank: 7

UID
4472739
帖子
1532
PB币
2498
贡献
0
技术
8
活跃
2483
沙发
发表于 2015-10-28 20:56:08 IP属地北京 |只看该作者
这个技术帖没人顶不科学

Rank: 5Rank: 5Rank: 5

UID
4711102
帖子
395
PB币
1301
贡献
0
技术
0
活跃
3088
板凳
发表于 2015-10-28 21:00:00 IP属地广东 |只看该作者
谢谢楼主分享

Rank: 11Rank: 11Rank: 11

UID
252267
帖子
7513
PB币
5484
贡献
0
技术
51
活跃
3172

7周年庆典勋章 8周年庆典勋章

4F
发表于 2015-10-28 21:03:48 IP属地北京 来自手机 |只看该作者
顶一个再慢慢看是不是那么回事。

Rank: 2Rank: 2

UID
939168
帖子
366
PB币
104
贡献
0
技术
0
活跃
1528
5F
发表于 2015-10-28 21:05:52 IP属地云南 |只看该作者
非2T以上硬盘用GPT格式那完全是无聊的。

点评

游子天涯  win10安装默认就是GPT格式  发表于 2015-10-29 10:00 IP属地上海
su_shine1995  笔记本出厂默认gpt的也挺无奈····  发表于 2015-10-28 23:10 IP属地福建

空车司令

Rank: 11Rank: 11Rank: 11

UID
101881
帖子
10527
PB币
15737
贡献
0
技术
17
活跃
3444
6F
发表于 2015-10-28 21:12:11 IP属地四川 |只看该作者
没有耐心看,但我知道这个贴子很好。因为我的硬盘只有500G,所以直接改成BIOS引导,也不想去研究GPT什么的。

误导党、

Rank: 11Rank: 11Rank: 11

UID
749482
帖子
11357
PB币
18538
贡献
0
技术
98
活跃
2630

活动参与先锋 Win10先驱者 7周年庆典勋章 热心会员 远景技术达人 I'm Windows Phone用户

7F
发表于 2015-10-28 21:37:30 IP属地广东 来自手机 |只看该作者
本帖最后由 sasalemma 于 2015-10-28 21:52 编辑

个人建议借用 WTG 的方式

限制条件是,少于2T的MBR格式。


要点:

1,使用MBR格式,不需要来回改变分区格式。

2,至少2个分区,一个分区为启动分区,激活分区并格式化为fat32格式。分配分区号m(这个用来当作uefi启动时的efi分区)另一个分区来安装系统。分配分区号c。关键点,分配盘符,和启动分区格式。

3,不能用界面的方式安装,那样系统自动装成bios启动模式或uefi启动模式单一一种。

关键点1:所以要用dism 的apply-image释放系统到c盘。

关键点2:用bcdboot c:\windows /l zh-cn /s m: /f all   

即用bcdboot创建bios和uefi 双模式启动。

4,剩下的就是进bios设定启动顺序了。一般带uefi的机器都能识别fat32的启动分区,并认为是uefi启动。也就是说,启动时,比如技嘉或别的主板,按f12,选择不同顺序就是不同的启动分式。


这就是uefi主板+mbr磁盘格式的uefi启动。
m盘就是等同gpt的efi分区。

选bios模式,就等于以前你双系统时c盘启动盘,安装了win7(启动分区),win8装在d盘而已。(这些c=m,d=c盘)

在win8以上系统都会默认隐藏启动分区,无论bios方式还是uefi,如果是上面双分区,启动时只显示系统盘,即c盘。这才是最省事的无损转换。

当然你还可以分出450m的恢复分区,设置id为27,即set id=27,并在bcdboot设置启动后,用reagentc来设置下re的路径。


也就是说,原来是mbr模式,只需要在磁盘后面分一个主分区出来,或用第三方工具在前面分一个主分区。128m足够。做成m盘即可。

原来gpt转mbr是一样的,就把esp(efi) 无损转成主分区m,限制条件都是mbr只能四个主分区。或者用下面的方式。


你们非要换分区格式可以,但注意备份数据,数据无价。

当然也可以用另一个方式。即磁盘分区格式为gpt,然后把前几个分区模拟成虚拟的mbr格式分区,也就是在虚拟mbr时隐藏了大于4分区的其他分区(小于4分区时可以无视),也能做到一种分区格式双启动模式。。


有兴奋可以爬文,手机回复不方便。

简单百度关键词:手工制作wtg 应该能找到方法,只是把移动硬盘,用本机硬盘替代就是。

另外,实际上别神话uefi+gpt。省的是bios启动阶段。也就是说

按开关-bios启动-系统引导-系统启动

就是省了bios的时间,而系统的启动快慢,就是磁盘和硬件限制了。原来怎么样,改后没什么变化。


完毕。

Rank: 1

UID
4726188
帖子
45
PB币
95
贡献
0
技术
0
活跃
26
8F
发表于 2015-10-28 21:39:27 IP属地河北 |只看该作者
支持楼主         

Rank: 9

UID
1477233
帖子
2797
PB币
2720
贡献
0
技术
69
活跃
2527

Win10先驱者

9F
发表于 2015-10-28 21:50:20 IP属地吉林 |只看该作者
不错的方法!支持一下!

Rank: 5Rank: 5Rank: 5

UID
963815
帖子
856
PB币
1682
贡献
0
技术
0
活跃
431
10F
发表于 2015-10-28 21:54:15 IP属地湖北 |只看该作者
技术贴,收藏

Windows Insider | Programmer

Rank: 11Rank: 11Rank: 11

UID
3922359
帖子
4249
PB币
456
贡献
0
技术
659
活跃
3981

十一周年 十周年 精解Windows 10 远景技术达人 活动参与先锋 远景搬运工勋章

11F
发表于 2015-10-28 22:25:10 IP属地河南 |只看该作者
1.我发过了
2.那叫活动分区,不叫激活分区。激活这个词用得太多,容易搞混
3.修复引导的时候直接用all模式,不要用uefi,即可实现自由切换

Rank: 7Rank: 7Rank: 7

UID
192511
帖子
2016
PB币
3898
贡献
0
技术
2
活跃
1904
12F
发表于 2015-10-28 22:33:48 IP属地吉林 |只看该作者
楼主用心了,好帖子,技术型的

Rank: 1

UID
4242939
帖子
36
PB币
28
贡献
0
技术
0
活跃
35
13F
发表于 2015-10-28 22:35:21 IP属地江西 |只看该作者
现在用不上,目测以后会折腾下。

Rank: 7Rank: 7Rank: 7

UID
2498730
帖子
1316
PB币
1485
贡献
0
技术
7
活跃
1095
14F
发表于 2015-10-28 22:54:21 IP属地辽宁 来自手机 |只看该作者
sasalemma 发表于 2015-10-28 21:37
个人建议借用 WTG 的方式

限制条件是,少于2T的MBR格式。

感谢看完还发了这么长的建议,那个uedi启动mbr我以前看过,是你发的吗?

Rank: 7Rank: 7Rank: 7

UID
2498730
帖子
1316
PB币
1485
贡献
0
技术
7
活跃
1095
15F
发表于 2015-10-28 23:05:51 IP属地辽宁 来自手机 |只看该作者
一帆风顺2001 发表于 2015-10-28 22:25
1.我发过了
2.那叫活动分区,不叫激活分区。激活这个词用得太多,容易搞混
3.修复引导的时候直接用all模式 ...

all模式其实和单独uefi作用是一样的,我文中提到gpt转mbr受到4主分区限制,而恢复分区,msr,esp,系统就已经占了4个,势必要删除一些分区,而且esp分区也不一定要成为mbr下的活动分区,除非前面大神提到的uefi启动mbr双系统可能会用到all模式。至于谁发过类似的帖子,我觉得无所谓,我是自己研究总结的,这样的技术很多人用得上却找不到,隔段时间重温一下也好让更多人得到普及。

Rank: 5Rank: 5Rank: 5

UID
4173146
帖子
343
PB币
620
贡献
0
技术
0
活跃
1021

我是大学生!

16F
发表于 2015-10-28 23:11:44 IP属地福建 |只看该作者
笔记本出厂默认是GPT的·当时不清楚安装win7一直失败~~
后来改成legency兼容模式后就可以win7/10一起用了~
帖子先留个脚印,说不定以后能用到呢~~

Rank: 7Rank: 7Rank: 7

UID
2498730
帖子
1316
PB币
1485
贡献
0
技术
7
活跃
1095
17F
发表于 2015-10-28 23:17:48 IP属地辽宁 |只看该作者
su_shine1995 发表于 2015-10-28 23:11
笔记本出厂默认是GPT的·当时不清楚安装win7一直失败~~
后来改成legency兼容模式后就可以win7/10一起用了~ ...

看下文中的红字,就是原因,我也是反复百度和一个个开关实验验证的,win7的开机引导无法正确加载,会卡在正在启动,还没出4个小旗子那里,其实后台是启动到桌面了,我听到了win7开机得音乐,我尝试alt f4回车,竟然在正在启动卡屏那直接关机了。打开csm后正常了

误导党、

Rank: 11Rank: 11Rank: 11

UID
749482
帖子
11357
PB币
18538
贡献
0
技术
98
活跃
2630

活动参与先锋 Win10先驱者 7周年庆典勋章 热心会员 远景技术达人 I'm Windows Phone用户

18F
发表于 2015-10-28 23:31:51 IP属地广东 |只看该作者
本帖最后由 sasalemma 于 2015-10-28 23:34 编辑
wftmac 发表于 2015-10-28 22:54
感谢看完还发了这么长的建议,那个uedi启动mbr我以前看过,是你发的吗?


=。=

我好久不发主题帖了 大多是这样的回复贴。所以没有记录。估计也不是我发的。

看你15楼 在gpt 转成mbr的时候呢 。msr分区可以合并到其他分区。这个一般默认也就是64m-128m。 恢复分区也是可以删除掉。只是需要把recovery文件夹复制出来。放系统分区重建即可。

然后单独mbr分区格式实际上也没有分区数的限制,如果一开始就用mbr格式。因为虽然mbr分区模式只支持4个主分区。但不影响多分区。毕竟可以3主一拓展分区。拓展分区可以分出无数(所谓而已,盘符都是有限的)分区。也就是除了当作efi的启动分区(活动主分区),恢复分区(这个如果要单独出来就必须是主分区,mbr格式下分区id为27)和系统(这个其实也不是很需要,可以放到逻辑分区也是可以启动)。所以实际上mbr下只需要3个主分区,甚至2个主分区即可。

所以如果是 MBR 想转 uefi启动。只需要分出一个主分区,更改它为活动分区并格式化为fat32格式。重建引导 /s 参数指向这个新分区。就能uefi启动这个磁盘。

=== 这个即 uefi 引导 mbr 启动系统。

GPT 想转 bios 启动。一个方式是如你说的,无损更改分区格式,转成mbr。但多分区有限制。如果不想转分区格式也是有办法。用黑苹果的 clover 手动安装。也就是 bios 引导 安装在 gpt格式分区的 clover 启动。再模拟 efi ,再引导 原来的系统。

=== 这个即 bios 引导 gpt 格式 启动系统。只是这个有黑苹果更容易操作。

ALL 模式是复制两种启动模式到“启动分区” mbr 下就是 活动分区。 gpt下就是 efi 分区。

倒是如果磁盘是 gpt 格式,all 模式 就算复制bios的启动 ,也是不起作用。bios也是类似。

Rank: 7Rank: 7Rank: 7

UID
2498730
帖子
1316
PB币
1485
贡献
0
技术
7
活跃
1095
19F
发表于 2015-10-28 23:41:24 IP属地辽宁 |只看该作者
sasalemma 发表于 2015-10-28 23:31
=。=

我好久不发主题帖了 大多是这样的回复贴。所以没有记录。估计也不是我发的。

mbr里set id改分区参数太好用了,隐藏分区什么的,gpt看到那一串分区表代码直接放弃了这门技术。。。

误导党、

Rank: 11Rank: 11Rank: 11

UID
749482
帖子
11357
PB币
18538
贡献
0
技术
98
活跃
2630

活动参与先锋 Win10先驱者 7周年庆典勋章 热心会员 远景技术达人 I'm Windows Phone用户

20F
发表于 2015-10-28 23:53:35 IP属地广东 来自手机 |只看该作者
wftmac 发表于 2015-10-28 23:41
mbr里set id改分区参数太好用了,隐藏分区什么的,gpt看到那一串分区表代码直接放弃了这门技术。。。


多分区用户表示偏爱gpt,毕竟都是主分区。单纯放文件不安装win系统的磁盘,可以是gpt格式,用diskpart直接只分很多个主分区,而不设置msr和efi分区。相对于mbr只能4个主分区来说,要多分区只能用安全性较弱的逻辑链式结构。是不太能接受的。


分区id这个看喜好了,一般也就是de94bba4这个恢复分区id。其他的倒是少用。比如oem分区id一类。

不过diskpart里面还一些东西好玩,比如attributes 设置分区只读之类。防删改。


另外现在说mbr只能支持2.2t貌似又不对了。因为在4k那种新机械盘,实际mbr能上到16tb。只是还是受限于4个主分区而已。


回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛