从此消失 发表于 2020-2-6 10:08:01

启动盘中mod处理方式和CD启动时的一些做法,不知有没有什么问题

在处理mod时,尤其放U盘时,文件太多太慢,我的做法是把mod、主题、配置之类都装进一个ISO,然后在启动文件里loopback并设置prefix

在CD启动win10pe的时候,不能直接chainbootx64efi,我做一个启动ISO,然后只包含efi启动项,启动img里放的bootx64efi和bootia32.efi,然后map该iso,目前可以正常启动pe,在安全引导下可以启动。

不知道这两种方法有没有什么问题

从此消失 发表于 2020-2-6 10:26:34

如果修改了BCD名称加sbpolicy也可以正常启动PE

从此消失 发表于 2020-2-6 13:13:58

匿名者 发表于 2020-2-6 12:05
ISO其实不太合适(文件名限制)。tar.gz或cpio.gz可能更好。

这个文件名限制指的是什么?
如果压制成这两种格式,在启动的时候怎么调用?也可以loopback?这个一直也没弄明白,我是把所有的mod包括bios和efi32和64的,还有主题,字体,配置等,不管以什么方式启动,都先会loop这个iso然后设置为prefix,启动用的ldr和efi还是另外生成的

从此消失 发表于 2020-2-6 13:38:51

匿名者 发表于 2020-2-6 13:34
最原始的 iso9660 规范中,ISO里面只支持 8.3 格式的文件名。
RRIP 扩展支持长度不超过255的文件名,且 ...

原来是这个样子的,想问下如果不用loopback的话,还有什么方法能在启动过程中加载并可以grub2识别?

hao138 发表于 2020-2-6 14:11:04

都是技术活,了解了解一下。

从此消失 发表于 2020-2-6 15:40:49

匿名者 发表于 2020-2-6 15:05
为什么不用 loopback ?

就是一直在用loopback,想了解下还有没有其他方法

从此消失 发表于 2020-2-6 17:12:46

匿名者 发表于 2020-2-6 15:52
为什么要设计另外一种和loopback完全一样的命令?

说的是哦,明白了,大神就是大神,各种问题各种解决

hilsonma 发表于 2020-2-6 17:59:55

匿名者 发表于 2020-2-6 13:34
最原始的 iso9660 规范中,ISO里面只支持 8.3 格式的文件名。
RRIP 扩展支持长度不超过255的文件名,且 ...

请教一下,gz 和 xz 的不同?

我搜到的资料是xz 压缩率比gz 好,不知你的看法怎样
还有两者的启动时间,哪个更快,还是区别不大?
看你之前的示例是使用gz,是不是你觉得gz比xz更适用?或者有什么其他原因?

从此消失 发表于 2020-2-6 19:30:00

匿名者 发表于 2020-2-6 18:06
xz压缩率高于gz
但是解压速度远远低于gz
为了几百kb而等上几秒,我觉得不值。


还是gz比xz好使,xz在efi32下启动失败,而gz则正常,速度上感觉gz比xz的确要快不少

hhh333 发表于 2020-2-6 20:19:10

本帖最后由 hhh333 于 2020-2-6 20:21 编辑

你怎么安全引导?第一启是什么?我认为是不成立的。loopback并不是过安检的。

从此消失 发表于 2020-2-6 22:36:05

hhh333 发表于 2020-2-6 20:19
你怎么安全引导?第一启是什么?我认为是不成立的。loopback并不是过安检的。

loopback当然不能过安全引导,安全引导用的卡巴那套(自动过),32位的安全引导用的a1ive那套(手动过)
这主题也没讨论安启

从此消失 发表于 2020-2-6 22:57:55

匿名者 发表于 2020-2-6 22:41
h3说的应该是这个
这个时候应该已经和安启没关系了,这两个引导文件我都有修改,引导BCD改名,目前没有实体机安启测试条件,vm里可以过,再说了这个只是个研究,一般情况下都是U盘移动盘启动的,都没有光驱了,刻盘也没啥用

hhh333 发表于 2020-2-7 09:25:23

从此消失 发表于 2020-2-6 22:57
这个时候应该已经和安启没关系了,这两个引导文件我都有修改,引导BCD改名,目前没有实体机安启测试条件 ...

1、麻烦先看清楚VM是不是打开了那个安全启动开关,而且要删除已经安装的证书;
2、我测试卡巴的那个对ISO有限制,在打开SB的状态下运行bootx64.efi是找不到光盘上的BCD的(这个已经发文有详细测试)
3、在打开SB的状态下,W大的RUN和FM都是不能启动PE.WIM,用wimboot也过不了

你所谓的过SB我是高度怀疑的。不信你把ISO发过来我测试一下。

江南一根葱 发表于 2020-2-7 11:46:57

hhh333 发表于 2020-2-7 09:25
1、麻烦先看清楚VM是不是打开了那个安全启动开关,而且要删除已经安装的证书;
2、我测试卡巴的那个对IS ...

开安全启动一直在启wim啊,很愉快地在启

hhh333 发表于 2020-2-7 16:08:49

江南一根葱 发表于 2020-2-7 11:46
开安全启动一直在启wim啊,很愉快地在启

我是说光启,光盘第一启动,光盘上的PE

江南一根葱 发表于 2020-2-7 16:28:01

hhh333 发表于 2020-2-7 16:08
我是说光启,光盘第一启动,光盘上的PE

好像十多年没考虑过光启了。。。。没必要吧

从此消失 发表于 2020-2-7 17:51:05

hhh333 发表于 2020-2-7 09:25
1、麻烦先看清楚VM是不是打开了那个安全启动开关,而且要删除已经安装的证书;
2、我测试卡巴的那个对IS ...
很确定是打开SB的,而且很确定没有已经安装的证书,因为都会新建进行测试。
其一可用shell或shell模块进行加载
菜单写法(如果不加sbpolicy模块,过不了SB):
insmod sbpolicy
sbpolicy --install
insmod shell
shell --delay=0 --startup
支持文件:
需要在光启efi引导文件中放入对应的boot加载项,并且存在startup.nsh文件,文件内容示例
echo -off

set efiname64 "jr64befi"(这是64位的引导文件名,本人这样命名,可随意改,需对应放入efi引导项文件名,后缀就是efi)
set efiname32 "jr32befi"(这是32位的引导文件名,本人这样命名,可随意改,需对应放入efi引导项文件名,后缀就是efi)
echo Seach for "%efiname64%.efi"...
for %b in fs0 fs1 fs2 fs3 fs4 fs5 fs6 fs7 fs8 fs9
echo Seaching %b ...
if exist %b:\%efiname64%.efi then
echo %efiname64% found in %b:!
%b:
%efiname64%
if not %lasterror% == 0 then
%efiname32%
endif
exit
endif
endfor

其二就是本贴所写:
菜单写法(当然也需要sbpolicy模块过SB):
insmod sbpolicy
sbpolicy --install
insmod map
map --type=CD ($root)/JRKJ/efibtiso.iso

efibtiso.iso,此iso做成单efi启动,iso内容可随意,只放一个txt也可
然后efi引导文件只放bootx64和bootia32这两个efi引导文件
很确定是可以启动,而且很顺利《BCD也可以改名)

hhh333 发表于 2020-2-7 22:23:57

本帖最后由 hhh333 于 2020-2-7 23:08 编辑

从此消失 发表于 2020-2-7 17:51
很确定是打开SB的,而且很确定没有已经安装的证书,因为都会新建进行测试。
其一可用shell或shell模块进 ...
有做好的ISO吗?能够光启的。
另外还要硬盘上没有安装,如果硬盘上有,找到的是硬盘上的BCD,不是光盘上的。

我刚才又试了一下,如果硬盘上没有安装,从光盘启动找不到光盘上的BCD。


从此消失 发表于 2020-2-8 00:03:34

本帖最后由 从此消失 于 2020-2-8 00:05 编辑

hhh333 发表于 2020-2-7 22:23
有做好的ISO吗?能够光启的。
另外还要硬盘上没有安装,如果硬盘上有,找到的是硬盘上的BCD,不是光盘上 ...


引导文件64B,32B

这就是需要改名的原因了,也可以再改

hhh333 发表于 2020-2-8 09:09:01

本帖最后由 hhh333 于 2020-2-8 09:40 编辑

从此消失 发表于 2020-2-8 00:03
引导文件64B,32B

这就是需要改名的原因了,也可以再改
引导不了。请问是用什么打包的。你的VM莫一直是硬盘在启动。你发一个光启的ISO。

从此消失 发表于 2020-2-8 12:32:10

hhh333 发表于 2020-2-8 09:09
引导不了。请问是用什么打包的。你的VM莫一直是硬盘在启动。你发一个光启的ISO。

我不知道你为什么总会进到硬盘,我硬盘从单纯的分区格成fat32,再到分efi分区,都放进去bcd文件,当然是同名
怎么都进不去硬盘bcd,包括shell方式和这个map方式
下面是我的一个模板,有点粗糙,凑合着看吧
7Z分卷,去7z解压










从此消失 发表于 2020-2-8 12:41:19

一个大概的环境演示,别在意细节






从此消失 发表于 2020-2-8 12:43:47

这个环境,有两块硬盘,都有efi分区(和没有efi分区有fat32分区效果一样)
然后iso就是上面传的那个,里面的菜单是为示例改动,别在意细节
两块硬盘的引导文件都是原版的,未改动,里面同时有BCD和64B两个BCD,64B是从iso里复制出来稍加修改项目而来,并不能引导到硬盘里

hhh333 发表于 2020-2-8 13:08:38

从此消失 发表于 2020-2-8 12:41
一个大概的环境演示,别在意细节

打包命令麻烦发上来,你这个不能编辑,我一直是用oscdimg打包再用ultriso编辑的

hhh333 发表于 2020-2-8 14:19:21

已打包成功,在找原因,为什么我用另外的工具打包不行。

从此消失 发表于 2020-2-8 14:29:00

用oscdimg应该是不能正常启动的吧?
这个一直用的mkisofs进行打包的

hhh333 发表于 2020-2-8 14:54:18

从此消失 发表于 2020-2-8 14:29
用oscdimg应该是不能正常启动的吧?
这个一直用的mkisofs进行打包的

两个打包都没问题,用oscdimg打包可以随便编辑。
实际上最关键的是boot\grub\grub.cfg必须要小写(包括目录和路径),我的一直是大写,定义ISO时选允许小写也不行。

从此消失 发表于 2020-2-8 15:08:07

用oscdimg打包bios下可以启动?
这个测试是不能启动的呀,bios也是grub2引导?
来个打包命令

hhh333 发表于 2020-2-8 16:07:25

本帖最后由 hhh333 于 2020-2-8 16:09 编辑

从此消失 发表于 2020-2-8 15:08
用oscdimg打包bios下可以启动?
这个测试是不能启动的呀,bios也是grub2引导?
来个打包命令
这是用你那个文件打包的,你把你的文件全放进去就可以启动,乱编辑EFI启动信息不会丢失。bios是isolinux,你可以在ultriiso换成其他的

wintoflash 发表于 2020-2-8 17:33:40

hhh333 发表于 2020-2-8 16:07
这是用你那个文件打包的,你把你的文件全放进去就可以启动,乱编辑EFI启动信息不会丢失。bios是isolinux ...

有没有批处理脚本?
页: [1] 2
查看完整版本: 启动盘中mod处理方式和CD启动时的一些做法,不知有没有什么问题