无忧启动论坛

标题: 如何防止PE、ramos每次启动都更新我的Uefi启动项? [打印本页]

作者: superium    时间: 2016-3-18 21:32
标题: 如何防止PE、ramos每次启动都更新我的Uefi启动项?
很多pe都有更改uefi启动项的优良传统,不知道如何才能超脱出来,有的pe即使启动失败,也会执行这个操作:
那就是 如果windows boot manager不在第一启动序列,就添加一个windows boot manager到第一位。
我想保留我的xorboot在第一位啊!这几天不停的测试pe,每次启动都只有手工删除他。。。。太痛苦了。
作者: mdyblog    时间: 2016-3-18 23:35
你理解错了吧。
不干这事的。
这事 不是PE干的。
作者: zengqcyxx    时间: 2016-3-19 00:09
Uefi启动预装win系统,Uefi默认的第一启动项就是windows boot manager,与人家的PE何干?个人不建议将PE安装到Uefi启动的实机硬盘里,因为假若有其中一个引导出问题的话,就可能什么系统都用不了。而且你说的不断添加windows boot manager,也可能是你将PE安装到实机硬盘里造成的。关于EFI你要理解一下微软的bootX64.efi 、bootmgr.efi、bootmgfw.efi的作用和工作原理。U盘安装系统和装好系统硬盘第一次进入系统的流程,bootX64.efi》bootmgr.efi》BCD,硬盘系统会向EFI固件写入windows boot manager启动项,指向就是\EFI\Microsoft\Boot\bootmgfw.efi》BCD,这样每次进入系统就直接调用这个bootmgfw.efi。假若EFI固件里的windows boot manager启动项丢失,它才会调用bootX64.efi进入系统,并修复再次向EFI固件写入windows boot manager。用第三方引导想进入本地硬盘的WIN系统,不要调用硬盘里的EFI分区bootX64.efi,应该调用
\EFI\Microsoft\Boot\bootmgfw.efi。
作者: superium    时间: 2016-3-19 10:10
zengqcyxx 发表于 2016-3-19 00:09
Uefi启动预装win系统,Uefi默认的第一启动项就是windows boot manager,与人家的PE何干?个人不建议将PE安 ...

多謝大俠如此詳盡的解答!

我只是用xorboot引導pe的wim,可是經過反複觀察,的確是每次啓動到pe后,uefi啟動項就被修改一次。
(pe並沒有釋放到硬盤)
按您到分析,反複被修改最大的可能性是bootx64.efi 丟失,可是我剛剛查看了,這個文件並未丟失。

我到uefi啓動序列:
1.xorboot
2.grub2
3.windows boot manager

可是每次啓動pe后會在最前面再次多出一個 windows boot manager.(指向 bootmgfw.efi)
作者: zengqcyxx    时间: 2016-3-19 21:24
superium 发表于 2016-3-19 10:10
多謝大俠如此詳盡的解答!

我只是用xorboot引導pe的wim,可是經過反複觀察,的確是每次啓動到pe后,ue ...

我未用过xorboot,不方便回答你。既然你有grub2,可以用它的GRUB.cfg添加PE的启动菜单,而WINPE的引导文件最好用别人修改过的(例如bootx64_wpe.efi+BPE)。
作者: superium    时间: 2016-3-20 08:52
本帖最后由 superium 于 2016-3-20 08:54 编辑
zengqcyxx 发表于 2016-3-19 21:24
我未用过xorboot,不方便回答你。既然你有grub2,可以用它的GRUB.cfg添加PE的启动菜单,而WINPE的引导文 ...


最先就是打算用grub2引导的,但是遇到无法加载镜像的问题才找到xorboot。
grub2 所谓的memdisk,在uefi+gpt的环境下无法成功引导img/wim/iso之类镜像啊。

关于grub2引导问题,前贴在此 http://bbs.wuyou.net/forum.php?mod=viewthread&tid=376029&extra=
作者: superium    时间: 2016-3-20 13:42
如果其他人的pe没有这样的问题,或许还真和xorboot有关。
作者: zengqcyxx    时间: 2016-3-20 19:23
superium 发表于 2016-3-20 08:52
最先就是打算用grub2引导的,但是遇到无法加载镜像的问题才找到xorboot。
grub2 所谓的memdisk,在uef ...

什么引导都只是一种辅助,真正要启动起微软的PE的那一步,还是微软自家的引导说了算。对于64位的EFI固件,应该还算好点。grub2用X86_X64.efi那些模块,微软的PE用人家修改过的bootx64.efi和BCD,自己再修改BCD指向你PE的WIM所在位置。
作者: freesoft00    时间: 2016-3-20 19:33
superium 发表于 2016-3-20 13:42
如果其他人的pe没有这样的问题,或许还真和xorboot有关。

应该是微软的问题,好像在哪里不知道是不是本论坛,有人反馈过这个问题,多引导菜单只要启动微软的它就自动添加到最上面。
作者: superium    时间: 2016-3-21 10:18
freesoft00 发表于 2016-3-20 19:33
应该是微软的问题,好像在哪里不知道是不是本论坛,有人反馈过这个问题,多引导菜单只要启动微软的它就自 ...

原来如此!多谢大侠指点!
作者: superium    时间: 2016-3-21 10:25
zengqcyxx 发表于 2016-3-20 19:23
什么引导都只是一种辅助,真正要启动起微软的PE的那一步,还是微软自家的引导说了算。对于64位的EFI固件 ...

看来果然是和微软有关。

您的意思是 grub2-->修改过的bootx64.efi-->bcd-->pe.wim
这pe.wim 内部的 winload.efi 是否需要再修改呢?
之前是 xorboot-->pe.wim, 此时efi启动项被修改(那么大致可以说明是pe内部的winload.efi 在作怪)

作者: zengqcyxx    时间: 2016-3-21 19:28
superium 发表于 2016-3-21 10:25
看来果然是和微软有关。

您的意思是 grub2-->修改过的bootx64.efi-->bcd-->pe.wim

winload.efi 不用修改,你也改不了别人的,那是人家微软内核的东西。
作者: superium    时间: 2016-3-22 08:24
Thanks very much!
作者: deli1    时间: 2016-3-29 13:10
抱歉,有感于学术讨论环境。

无意灌水,只是有些激动。
作者: superium    时间: 2016-5-13 10:48
经过反复验证,的确和微软有关系。
在ubuntu和win8的双系统情况下,只要启动一次windows,ufei启动菜单就会变成windows boot manager.(笔记本,台式机没测试过)

作者: superium    时间: 2016-5-13 11:11
让人牙根泱泱的BOOTMGFW.efi 啊。
作者: yuub    时间: 2016-5-15 13:14
1.在ubuntu和win8的双系统情况下,只要启动一次windows,uefi启动菜单就会变成windows boot manager。

解决方法 bcdedit /set {bootmgr} path /efi/ubuntu/shimx64.efi

2.在ubuntu和win10的双系统情况下,只要启动一次windows,uefi启动菜单就会变成windows boot manager。

上述方法无效

解决方法 把/efi/microsoft/目录剪切到一个NTFS分区,或者ima映像文件中
然后修改grub.cfg菜单windows项,内容如下

menuentry "windows 8" {
        insmod ntfs
        set root=(hd0,gpt3)
        chainloader /efi/microsoft/boot/bootmgfw.efi
}
或者
menuentry "windows 8" {
        insmod loopback
        loopback loop1 (hd0,gpt1)/win8.ima
        set root=(loop1)
        chainloader /efi/microsoft/boot/bootmgfw.efi
}





欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3