无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 6059|回复: 27
打印 上一主题 下一主题

[求助] 请问下PE是怎么实现传统引导和UEFI引导同时支持的

[复制链接]
跳转到指定楼层
1#
发表于 2020-12-15 13:05:30 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
例如ITTK的优启通,就是即可以支持UEFI引导,又可以legacy,这是怎么实现的,能不能把这种思路用到系统引导上来。
2#
发表于 2020-12-15 13:44:27 | 只看该作者
很简单。

点评

请复杂的指点  详情 回复 发表于 2020-12-15 15:30
回复

使用道具 举报

3#
发表于 2020-12-15 15:30:49 | 只看该作者

请复杂的指点

点评

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=300422 看下这个贴  详情 回复 发表于 2020-12-15 16:35
回复

使用道具 举报

4#
发表于 2020-12-15 16:35:38 | 只看该作者

点评

感谢分享  详情 回复 发表于 2020-12-16 11:16
回复

使用道具 举报

5#
发表于 2020-12-15 17:53:41 | 只看该作者
有很多方法可以实现。
我是使用grub4dos做legacy引导,使用grub2做uefi引导。

因为同一个pe要用于多台电脑上,这些电脑有的支持uefi,有的不支持,所以才需要双引导
系统是在硬盘上的,一般只能用于同样的配置上,这样的配置是否支持uefi已经确定,所以没有必要做双引导,当然,要做也是可以的。

有兴趣的话,把你的u盘和硬盘结构贴上来,可以给你一个方案。
例如我的:


点评

你这个是什么分区工具呢  详情 回复 发表于 2020-12-15 20:42
回复

使用道具 举报

6#
发表于 2020-12-15 20:42:37 | 只看该作者
hilsonma 发表于 2020-12-15 17:53
有很多方法可以实现。
我是使用grub4dos做legacy引导,使用grub2做uefi引导。

你这个是什么分区工具呢

点评

是bootice的分区管理,可用来快速查看分区情况  详情 回复 发表于 2020-12-15 21:51
这个看起来像是bootice里面的分区管理界面吧  详情 回复 发表于 2020-12-15 21:01
回复

使用道具 举报

7#
发表于 2020-12-15 21:01:23 | 只看该作者
2012zhiwen 发表于 2020-12-15 20:42
你这个是什么分区工具呢

这个看起来像是bootice里面的分区管理界面吧

点评

感谢,我试下看看  详情 回复 发表于 2020-12-15 23:39
回复

使用道具 举报

8#
发表于 2020-12-15 21:51:05 | 只看该作者
本帖最后由 hilsonma 于 2020-12-15 21:53 编辑
2012zhiwen 发表于 2020-12-15 20:42
你这个是什么分区工具呢

是bootice的分区管理,可用来快速查看分区情况
要调整就用DiskGenius
要扇区对齐就用傲梅分区助手

点评

谢谢,我试下看看  详情 回复 发表于 2020-12-15 23:39
回复

使用道具 举报

9#
发表于 2020-12-15 23:39:28 | 只看该作者
ljq0527 发表于 2020-12-15 21:01
这个看起来像是bootice里面的分区管理界面吧

感谢,我试下看看

点评

我那两个图是我的U盘和硬盘的分区情况,并没有显示引导 我的意思是先了解分区情况,再了解使用场景,根据使用场景和分区情况来做相应的引导  详情 回复 发表于 2020-12-16 08:21
回复

使用道具 举报

10#
发表于 2020-12-15 23:39:48 | 只看该作者
hilsonma 发表于 2020-12-15 21:51
是bootice的分区管理,可用来快速查看分区情况
要调整就用DiskGenius
要扇区对齐就用傲梅分区助手

谢谢,我试下看看
回复

使用道具 举报

11#
发表于 2020-12-15 23:50:01 | 只看该作者
  1. bcdboot c:\windows /s z: /l zh-CN /f all
复制代码
回复

使用道具 举报

12#
发表于 2020-12-16 01:05:51 | 只看该作者
实际就是往U盘引导区放legacy和UEFI两套引导文件,BIOS会根据引导方式的设定加载其中对应的一套引导文件启动。

点评

是的,关键是要怎么做,我也知道你说的这套原理,就是做不出来,尝试好多次,均以失败告终  详情 回复 发表于 2020-12-16 20:51
回复

使用道具 举报

13#
发表于 2020-12-16 08:21:20 | 只看该作者
本帖最后由 hilsonma 于 2020-12-16 08:40 编辑
2012zhiwen 发表于 2020-12-15 23:39
感谢,我试下看看

我那两个图是我的U盘和硬盘的分区情况,并没有显示引导
我的意思是先了解分区情况,再了解使用场景,根据使用场景和分区情况来做相应的引导

比如:
32位的设备要做efi引导只能用32位的efi引导
64位的设备要做efi引导只能用64位的efi引导
legacy引导就不分32位还是64位,但做U盘引导时,不支持LBA的设备(一些10年前的老设备)用fbinst引导可能成功率高些,支持LBA的设备选择余地较多,就看第一分区前的空闲情况:wee要62个扇区,g4d要16个扇区,nt6只要1个扇区做主引导但还要进一步做分区引导。

回复

使用道具 举报

14#
发表于 2020-12-16 09:02:49 | 只看该作者
本帖最后由 2010sya 于 2020-12-16 09:09 编辑

1、说个最简单的,现在8、10PE大都支持双引导,只要用u+方式写入优盘就好了。。。
2、要说原理的话,现在的电脑,老一点的可能只支持bios方式,多数的同时支持bios/uefi两种引导模式,两种模式分别对应两套引导文件。。。

3、如果电脑当前系统是bios引导的,想改为uefi引导,可以使用11#提供的命令。。。
4、hilsonma提供的资料可以好好研究一下


双引导说简单也简单,说复杂也挺复杂,多用用就好了。。。




回复

使用道具 举报

15#
发表于 2020-12-16 11:16:05 | 只看该作者
2012zhiwen 发表于 2020-12-15 16:35
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=300422

看下这个贴

感谢分享
回复

使用道具 举报

16#
 楼主| 发表于 2020-12-16 20:51:31 | 只看该作者
lps4290 发表于 2020-12-16 01:05
实际就是往U盘引导区放legacy和UEFI两套引导文件,BIOS会根据引导方式的设定加载其中对应的一套引导文件启 ...

是的,关键是要怎么做,我也知道你说的这套原理,就是做不出来,尝试好多次,均以失败告终

点评

先确认只插一个U盘到电脑上,这个U盘将被制作成legacy/uefi双启动 到 http://hilsonma.ys168.com/ 下载 bootu 里的 双启U盘制作脚本.7z 解压后运行 双启U盘制作脚本.cmd 将你想要启动的pe的wim镜像命名为pe.wim放  详情 回复 发表于 2020-12-16 22:38
很简单啊,用系统自带的bcdboot命令就可以实现。 首先,在一块MBR硬盘上分一个FAT16或FAT32的分区出来,100MB足够了,并且设为活动分区,假设盘符为Z: 然后,运行 bcdboot C:\windows /s Z: /f all Z盘就会生成  详情 回复 发表于 2020-12-16 22:01
回复

使用道具 举报

17#
发表于 2020-12-16 22:01:07 | 只看该作者
本帖最后由 lps4290 于 2020-12-16 22:16 编辑
lihui612ld 发表于 2020-12-16 20:51
是的,关键是要怎么做,我也知道你说的这套原理,就是做不出来,尝试好多次,均以失败告终

很简单啊,用系统自带的bcdboot命令就可以实现。

首先,在一块MBR硬盘上分一个FAT16或FAT32的分区出来,100MB足够了,并且设为活动分区,假设盘
符为Z: ,并且确保此硬盘主引导记录、活动分区引导记录正常,如图所示。

然后,运行 bcdboot C:\windows /s Z: /f all

Z盘就会生成两套引导文件,其中EFI目录用于UEFI引导,隐藏的bootmgr、BOOTNXT、Boot目录用于legacy。
重启进BIOS,设置从这块MBR硬盘启动,就能启动C:\windows系统了,无论BIOS设置的是哪种启动。
不过要注意,有些较新主板需要在BIOS中开启CSM才能legacy引导。

如果所有硬盘都是GPT,那就没办法实现legacy引导了,因为GPT硬盘没有主引导记录、活动分区这些
概念,所以即使在某分区生成了bootmgr、BOOTNXT、Boot目录,BIOS也找不到路去读取。

你也可以找一只U盘来测试,保证分区表类型是MBR、存在一个FAT16或FAT32活动分区,运行 bcdboot

命令将引导文件生成到U盘活动分区,重启从这个U盘启动即可。







点评

这种情况下,如果分区是GPT格式,就实现不了MBR引导  详情 回复 发表于 2020-12-25 20:48
bcdboot 是实现了windows的双引导 磁盘的双引导还要另外制作 gpt硬盘也可以实现legacy引导的,将grldr_gpt.mbr 写到第一扇区,将grldr.mbr写到第一分区前的空闲空间 参见 http://bbs.wuyou.net/forum.php?mod=red  详情 回复 发表于 2020-12-16 23:03
回复

使用道具 举报

18#
发表于 2020-12-16 22:38:12 | 只看该作者
lihui612ld 发表于 2020-12-16 20:51
是的,关键是要怎么做,我也知道你说的这套原理,就是做不出来,尝试好多次,均以失败告终

先确认只插一个U盘到电脑上,这个U盘将被制作成legacy/uefi双启动
http://hilsonma.ys168.com/ 下载 bootu 里的 双启U盘制作脚本.7z
解压后运行 双启U盘制作脚本.cmd
将你想要启动的pe的wim镜像命名为pe.wim放到任一分区的根目录
使用这个U盘启动就可以进入pe,legacy和uefi都可以。

点评

这个做完,提示no file,启动不了。  详情 回复 发表于 2021-1-3 11:28
回复

使用道具 举报

19#
发表于 2020-12-16 23:03:22 | 只看该作者
本帖最后由 hilsonma 于 2020-12-16 23:07 编辑
lps4290 发表于 2020-12-16 22:01
很简单啊,用系统自带的bcdboot命令就可以实现。

首先,在一块MBR硬盘上分一个FAT16或FAT32的分区出来 ...

bcdboot 是实现了windows的双引导
磁盘的双引导还要另外制作

gpt硬盘也可以实现legacy引导的,将grldr_gpt.mbr 写到第一扇区,将grldr.mbr写到第一分区前的空闲空间
参见 http://bbs.wuyou.net/forum.php?m ... 0920&fromuid=586362
贴中的grldr_gpt_boot.bin我改名为grldr_gpt.mbr

不过不是熟手的话建议不要搞,万一搞丢数据就惨了
硬盘也不是很有双启的必要,极少拿硬盘到不同的电脑上运行的吧。
用U盘双启就可以了,同样可以用U盘启动硬盘上的操作系统的,只是要做出菜单配置而已。
如果是熟手自己有把握,怎样折腾都可以。
回复

使用道具 举报

20#
 楼主| 发表于 2020-12-25 20:48:34 | 只看该作者
lps4290 发表于 2020-12-16 22:01
很简单啊,用系统自带的bcdboot命令就可以实现。

首先,在一块MBR硬盘上分一个FAT16或FAT32的分区出来 ...

这种情况下,如果分区是GPT格式,就实现不了MBR引导

点评

拿ventoy来说吧,u盘不采用mGPT分区格式,为了兼容bios启动。总共分两个区,前边分区可见,用于存储数据和iso等。后边fat16分区隐藏,作为efi启动。bios启动在mbr写入grub2引导代码。在bios启动会读取mbr加载grub2,  详情 回复 发表于 2020-12-25 21:14
回复

使用道具 举报

21#
发表于 2020-12-25 21:14:51 | 只看该作者
lihui612ld 发表于 2020-12-25 20:48
这种情况下,如果分区是GPT格式,就实现不了MBR引导

拿ventoy来说吧,u盘不采用GPT分区格式,为了兼容bios启动。总共分两个区,前边分区可见,用于存储数据和iso等。后边fat16分区隐藏,作为efi启动。bios启动在mbr写入grub2引导代码。在bios启动会读取mbr加载grub2,而uefi启动会默认启动esp分区/boot/efi/bootx64.efi,至于efi启动原理不用深究,知道就好了!
回复

使用道具 举报

22#
发表于 2021-1-3 11:28:27 | 只看该作者
hilsonma 发表于 2020-12-16 22:38
先确认只插一个U盘到电脑上,这个U盘将被制作成legacy/uefi双启动
http://hilsonma.ys168.com/ 下载  ...

这个做完,提示no file,启动不了。是哪部做错了?

点评

先确认只插一个U盘到电脑上,这个U盘将被制作成legacy/uefi双启动 到 http://hilsonma.ys168.com/ 下载 bootu 里的 双启U盘制作脚本.7z 解压后运行 双启U盘制作脚本.cmd 将你想要启动的pe的wim镜像命名为pe.wim放  详情 回复 发表于 2021-1-3 12:50
回复

使用道具 举报

23#
发表于 2021-1-3 12:50:41 | 只看该作者
本帖最后由 hilsonma 于 2021-1-3 12:52 编辑
Liberation 发表于 2021-1-3 11:28
这个做完,提示no file,启动不了。是哪部做错了?

先确认只插一个U盘到电脑上,这个U盘将被制作成legacy/uefi双启动
http://hilsonma.ys168.com/ 下载 bootu 里的 双启U盘制作脚本.7z
解压后运行 双启U盘制作脚本.cmd
将你想要启动的pe的wim镜像命名为pe.wim放到任一分区的根目录
使用这个U盘启动就可以进入pe,legacy和uefi都可以。

将你想要启动的pe的wim镜像命名为pe.wim放到任一分区的根目录
这一步你做了没有?
建议就提取你说的软碟通里的那个pe,找到里面的wim文件,改名为pe.wim放到U盘的根目录。

点评

我就是改成pe. wim,放在u盘根目录了,启动是no file。  详情 回复 发表于 2021-1-3 12:54
回复

使用道具 举报

24#
发表于 2021-1-3 12:54:35 | 只看该作者
hilsonma 发表于 2021-1-3 12:50
先确认只插一个U盘到电脑上,这个U盘将被制作成legacy/uefi双启动
到 http://hilsonma.ys168.com/ 下载  ...

我就是改成pe. wim,放在u盘根目录了,启动是no file。

点评

你这回贴里,文件名带空格,不知你实际文件名有没有带空格,应该不带空格的。 我刚刚也检查了一遍分享的启动文件,确实是引导根目录的pe.wim的。 如果你U盘根目录上有pe.wim,使用我的启动文件却启动不了,可以  详情 回复 发表于 2021-1-3 13:04
回复

使用道具 举报

25#
发表于 2021-1-3 13:04:18 | 只看该作者
Liberation 发表于 2021-1-3 12:54
我就是改成pe. wim,放在u盘根目录了,启动是no file。

你这回贴里,文件名带空格,不知你实际文件名有没有带空格,应该不带空格的。

我刚刚也检查了一遍分享的启动文件,确实是引导根目录的pe.wim的。
如果你U盘根目录上有pe.wim,使用我的启动文件却启动不了,可以上图给我看看。

点评

谢谢,抽空再试下  详情 回复 发表于 2021-1-4 22:35
回复

使用道具 举报

26#
发表于 2021-1-4 22:35:12 | 只看该作者
hilsonma 发表于 2021-1-3 13:04
你这回贴里,文件名带空格,不知你实际文件名有没有带空格,应该不带空格的。

我刚刚也检查了一遍分享 ...

谢谢,抽空再试下
回复

使用道具 举报

27#
发表于 2021-1-5 09:12:04 | 只看该作者
找好久了,謝謝
回复

使用道具 举报

28#
发表于 2021-1-5 11:09:59 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-16 09:47

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表