无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 6657|回复: 42

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

[复制链接]
发表于 2020-2-6 10:08:01 | 显示全部楼层 |阅读模式
在处理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识别?
回复

使用道具 举报

发表于 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完全一样的命令?

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

使用道具 举报

发表于 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的确要快不少
回复

使用道具 举报

发表于 2020-2-6 20:19:10 | 显示全部楼层
本帖最后由 hhh333 于 2020-2-6 20:21 编辑

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

点评

loopback当然不能过安全引导,安全引导用的卡巴那套(自动过),32位的安全引导用的a1ive那套(手动过) 这主题也没讨论安启  详情 回复 发表于 2020-2-6 22:36
回复

使用道具 举报

 楼主| 发表于 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盘移动盘启动的,都没有光驱了,刻盘也没啥用

点评

1、麻烦先看清楚VM是不是打开了那个安全启动开关,而且要删除已经安装的证书; 2、我测试卡巴的那个对ISO有限制,在打开SB的状态下运行bootx64.efi是找不到光盘上的BCD的(这个已经发文有详细测试) 3、在打开SB的  详情 回复 发表于 2020-2-7 09:25
回复

使用道具 举报

发表于 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发过来我测试一下。

点评

很确定是打开SB的,而且很确定没有已经安装的证书,因为都会新建进行测试。 其一可用shell或shell模块进行加载 菜单写法(如果加sbpolicy模块,过不了SB): insmod sbpolicy sbpolicy --install insmod shell  详情 回复 发表于 2020-2-7 17:51
开安全启动一直在启wim啊,很愉快地在启  详情 回复 发表于 2020-2-7 11:46
回复

使用道具 举报

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

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

点评

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

使用道具 举报

发表于 2020-2-7 16:08:49 | 显示全部楼层
江南一根葱 发表于 2020-2-7 11:46
开安全启动一直在启wim啊,很愉快地在启

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

点评

好像十多年没考虑过光启了。。。。没必要吧  详情 回复 发表于 2020-2-7 16:28
回复

使用道具 举报

发表于 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也可以改名)

点评

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

使用道具 举报

发表于 2020-2-7 22:23:57 | 显示全部楼层
本帖最后由 hhh333 于 2020-2-7 23:08 编辑
从此消失 发表于 2020-2-7 17:51
很确定是打开SB的,而且很确定没有已经安装的证书,因为都会新建进行测试。
其一可用shell或shell模块进 ...

有做好的ISO吗?能够光启的。
另外还要硬盘上没有安装,如果硬盘上有,找到的是硬盘上的BCD,不是光盘上的。

我刚才又试了一下,如果硬盘上没有安装,从光盘启动找不到光盘上的BCD。
Windows 10 x64-2020-02-07-23-07-33.png

点评

引导文件64B,32B  详情 回复 发表于 2020-2-8 00:03
回复

使用道具 举报

 楼主| 发表于 2020-2-8 00:03:34 | 显示全部楼层
本帖最后由 从此消失 于 2020-2-8 00:05 编辑
hhh333 发表于 2020-2-7 22:23
有做好的ISO吗?能够光启的。
另外还要硬盘上没有安装,如果硬盘上有,找到的是硬盘上的BCD,不是光盘上 ...

efibtiso.7z (1.2 MB, 下载次数: 7)

点评

引导不了  详情 回复 发表于 2020-2-8 09:09
回复

使用道具 举报

发表于 2020-2-8 09:09:01 | 显示全部楼层
本帖最后由 hhh333 于 2020-2-8 09:40 编辑
从此消失 发表于 2020-2-8 00:03
引导文件64B,32B

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

引导不了。请问是用什么打包的。你的VM莫一直是硬盘在启动。你发一个光启的ISO。

点评

我不知道你为什么总会进到硬盘,我硬盘从单纯的分区格成fat32,再到分efi分区,都放进去bcd文件,当然是同名 怎么都进不去硬盘bcd,包括shell方式和这个map方式 下面是我的一个模板,有点粗糙,凑合着看吧 7Z分卷  详情 回复 发表于 2020-2-8 12:32
回复

使用道具 举报

 楼主| 发表于 2020-2-8 12:32:10 | 显示全部楼层
hhh333 发表于 2020-2-8 09:09
引导不了。请问是用什么打包的。你的VM莫一直是硬盘在启动。你发一个光启的ISO。

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

JR_GR2TOOL.7z.001.7z (2 MB, 下载次数: 9)
回复

使用道具 举报

 楼主| 发表于 2020-2-8 12:41:19 | 显示全部楼层
一个大概的环境演示,别在意细节

视频演示.7z (341.11 KB, 下载次数: 0)

点评

打包命令麻烦发上来,你这个不能编辑,我一直是用oscdimg打包再用ultriso编辑的  详情 回复 发表于 2020-2-8 13:08
回复

使用道具 举报

 楼主| 发表于 2020-2-8 12:43:47 | 显示全部楼层
这个环境,有两块硬盘,都有efi分区(和没有efi分区有fat32分区效果一样)
然后iso就是上面传的那个,里面的菜单是为示例改动,别在意细节
两块硬盘的引导文件都是原版的,未改动,里面同时有BCD和64B两个BCD,64B是从iso里复制出来稍加修改项目而来,并不能引导到硬盘里
回复

使用道具 举报

发表于 2020-2-8 13:08:38 | 显示全部楼层
从此消失 发表于 2020-2-8 12:41
一个大概的环境演示,别在意细节

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

使用道具 举报

发表于 2020-2-8 14:19:21 | 显示全部楼层
已打包成功,在找原因,为什么我用另外的工具打包不行。
回复

使用道具 举报

 楼主| 发表于 2020-2-8 14:29:00 | 显示全部楼层
用oscdimg应该是不能正常启动的吧?
这个一直用的mkisofs进行打包的

点评

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

使用道具 举报

发表于 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引导?
来个打包命令

点评

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

使用道具 举报

发表于 2020-2-8 16:07:25 | 显示全部楼层
本帖最后由 hhh333 于 2020-2-8 16:09 编辑
从此消失 发表于 2020-2-8 15:08
用oscdimg打包bios下可以启动?
这个测试是不能启动的呀,bios也是grub2引导?
来个打包命令

H3CD.7z (1.44 MB, 下载次数: 11)

点评

好吧,但是bios如果不是grub2就算了,其实BIOS用G4D也挺好  详情 回复 发表于 2020-2-8 17:42
有没有批处理脚本?  详情 回复 发表于 2020-2-8 17:33
回复

使用道具 举报

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

有没有批处理脚本?

点评

老大,刚才调试这个的时候,发现wimboot也挑大小写啊,有不有办法大小写无关啊。  详情 回复 发表于 2020-2-8 18:17
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-29 05:41

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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