无忧启动论坛

标题: 用Oscdimg 2.56制作BIOS&EFI双启动ISO问题。感谢先! [打印本页]

作者: 2011fjsmgh    时间: 2017-10-14 19:38
标题: 用Oscdimg 2.56制作BIOS&EFI双启动ISO问题。感谢先!
本帖最后由 2011fjsmgh 于 2017-10-14 19:43 编辑

按照论坛里的方法:D:\oscdimg.exe -m -o -u2 -udfver102 -bootdata:2#p0,e,bBoot.bif#pEF,e,bEfisys.bin -lWinPE D:\OK D:\WinPE.ISO 制作生成的 ISO 文件,UEFI可以正常启动,可BIOS启动时出错(附图),找不出原因。是不是BIOS的启动文件boot.bif有问题?如果是的话,麻烦谁方便提供下,非常感谢!
其中grldr内容如下:
pxe detect
configfile
default 0
timeout 1

title find /menu.lst, /boot/grub/menu.lst, /grub/menu.lst
        errorcheck off
        configfile /menu.lst || configfile /MENU.LST
        configfile /boot/grub/menu.lst || configfile /BOOT/GRUB/MENU.LST
        configfile /grub/menu.lst || configfile /GRUB/MENU.LST
        find --set-root --ignore-floppies --ignore-cd /menu.lst && configfile /menu.lst
        find --set-root --ignore-floppies --ignore-cd /boot/grub/menu.lst && configfile /boot/grub/menu.lst
        find --set-root --ignore-floppies --ignore-cd /grub/menu.lst && configfile /grub/menu.lst
        errorcheck on
        commandline

title commandline
        commandline

title reboot
        reboot

title halt
        halt

而menu.lst内容如下:
timeout 20
default 8
find --set-root /BOOT/GRUB/MESSAGE
gfxmenu /BOOT/GRUB/MESSAGE

title 1 - Microsoft Windows 10 PE_x64
chainloader /boot/bootx64

title 2 - Microsoft Windows 10 PE_x86
chainloader /boot/bootx86

title 3 - Microsoft Windows XP SP3 PE
find --set-root /sources/WINPESP3.ISO
map /sources/WINPESP3.ISO (0xff)
map --hook
chainloader (0xff)

title 4 - Microsoft Windows XP SP2 PE
find --set-root /sources/WINPESP2.ISO
map /sources/WINPESP2.ISO (0xff)
map --hook
chainloader (0xff)

title 5 - Windows 开机密码绕过
map --mem ()/IMGS/KONBOOT.IMG (fd0) || find --set-root /IMGS/KONBOOT.IMG (fd0) && map --mem ()/IMGS/KONBOOT.IMG (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title 6 - Windows 开机密码清除
map --mem ()/IMGS/PASSWORD.IMG (fd0) || find --set-root /IMGS/PASSWORD.IMG (fd0) && map --mem ()/IMGS/PASSWORD.IMG (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title 7 - 加载 USB_ACC.0PE - 旧机用
/BOOT/GRUB/USB_ACC.0PE || find --set-root /BOOT/GRUB/USB_ACC.0PE && /BOOT/GRUB/USB_ACC.0PE

title 8 - 更多 DOS 工具菜单
configfile ()/BOOT/GRUB/ZENU.LST || find --set-root /BOOT/GRUB/ZENU.LST && configfile ()/BOOT/GRUB/ZENU.LST

title 重启计算机
reboot
title 关闭计算机
halt

1.jpg (26.99 KB, 下载次数: 99)

错误

错误

作者: 窄口牛    时间: 2017-10-14 20:10
g4d下载下来的包里,cd的mbr文件。
作者: 2011fjsmgh    时间: 2017-10-14 20:49
窄口牛 发表于 2017-10-14 20:10
g4d下载下来的包里,cd的mbr文件。

一开始就是用下载下来的g4b里的grldr_cd.bin文件制作的ISO(后来才从别人的ISO里提取的启动文件),也同样是这样的错误。感谢指点!
作者: 2011fjsmgh    时间: 2017-10-14 20:49
窄口牛 发表于 2017-10-14 20:10
g4d下载下来的包里,cd的mbr文件。

一开始就是用下载下来的g4b里的grldr_cd.bin文件制作的ISO(后来才从别人的ISO里提取的启动文件),也同样是这样的错误。感谢指点!
作者: even    时间: 2017-10-14 21:17
boot.bif直接用新版grldr替换,用最新版grub4dos0.4.6吧

这样生成的iso很多电脑上bios启动会花屏,需要用16进制编辑器修改iso文件,将启动扇区设置为2k大小,
修改地址:
9825:00
9826:04
9827:00
修改如图
修改后用7zip打开iso文件,第一个boot项大小为2048就对了

这样做grldr不用放在光盘目录里。
作者: even    时间: 2017-10-14 21:28
楼主的情况应该是menu.lst没有正常加载,试下在grub提示符下能否查看(cd)下的文件,用下ls或cat命令
作者: even    时间: 2017-10-14 21:34
去掉配置文件里面所有的 --ignore-cd,光盘启动怎么能忽略光盘文件。
作者: 2011fjsmgh    时间: 2017-10-14 22:02
even 发表于 2017-10-14 21:17
boot.bif直接用新版grldr替换,用最新版grub4dos0.4.6吧

这样生成的iso很多电脑上bios启动会花屏,需要 ...

首先非常感谢你的指点,通过boot.bif直接用新版grldr替换后制作出来的ISO,终于可以BIOS启动了!
不过,再进行“16进制编辑器修改iso文件,将启动扇区设置为2k大小”时,发现地址不一样,我的地址好象b025、b026和b027。且想验证一下修改是否正确,用7zip打开ISO文件时发现没有[BOOT]目录,找不着第一个boot项。麻烦再次指点下,怎么查看。谢谢!
作者: 2011angelfish    时间: 2017-10-15 15:00
期待下成品,菜鸟表示看不太懂!!
作者: even    时间: 2017-10-15 19:00
本帖最后由 even 于 2017-10-15 19:34 编辑

1、地址不一样可能和oscdimg的参数有关,我用的是-h -m -o -d -g -c -n,不是udf1.02格式(不清楚udf格式)。
2、udf102格式看不到[BOOT](windows原版镜像好像就看不到),这个不清楚,或许有其他软件可以看
作者: 2011fjsmgh    时间: 2017-10-15 21:15
even 发表于 2017-10-15 19:00
1、地址不一样可能和oscdimg的参数有关,我用的是-h -m -o -d -g -c -n,不是udf1.02格式(不清楚udf格式)。 ...

明白了。非常感谢你不厌其烦的指点,受惠很多!!!




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