无忧启动论坛

标题: 通用启动IMG/ISO菜单 可ISO安装NT5x系统 [打印本页]

作者: sratlf    时间: 2010-10-7 22:45
标题: 通用启动IMG/ISO菜单 可ISO安装NT5x系统
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=182793帖子中使用新的方法(批处理方式)实现了下面菜单的效果


因此关闭此帖  请移步新帖



grub4dos启动用  可加载启动任意IMG/ISO


加载ISO时会自动加载Firadisk,可用于安装系统

注意使用xp镜像安装系统时 文本模式完成后还需使用一次本菜单  要在最后输入D从硬盘启动继续安装 (第一次为回车从镜像启动)


菜单里路径视自己实际情况改  请使用wenv-tuxw-2010-11-27版(不兼容旧版) 

可以在主菜单开头指定WENV文件位置
title img&iso
command --set-path=(bd)/BOOT/GRUB/ && checkrange 0x80 read 0x8280 && map (hd0) (hd-1) && map (hd1) (hd0) && map --rehook && root (hd-1,0)
WENV reset && clear && echo -e \nPlease input the ISO/IMG PATH or press Enter to use /WIN$.ISO as default.\n
WENV set path=$U,$input,Input PATH here, begin with "/" :
WENV get path || clear && echo -e \nNow use /WIN$.ISO as default. && WENV set path=/WIN$.ISO
WENV check ${path##.}==" " (call echo -e \n ]]& call pause Input error, Press any key to return... ]]& call configfile (md)4+8)
WENV check ${path:0:1}<>/ set path=/${path}
#checkrange 0x9f:0xff read 0x8280 && WENV set de2=${path##/} && WENV check ${de2#.}<>${de2##.} set path=${path%/}/${de%%.}_${de2#.}
WENV (call find --set-root --devices=ch ${path} ]]| call echo -e \n ]]& call pause File not found,Press any key to return... ]]& call configfile (md)4+8)
WENV (call clear ; call echo -e \nNow loading ${path} ...\n)
WENV check ${path##.}<>ISO (call map --mem ()${path} (fd0) ; call map --hook ; call rootnoverify (fd0) ; call chainloader (fd0)+1 ; call boot)
WENV check ${path##.}==ISO (call map --mem ()${path} (0xff) ]]& call map --hook ]]| call map ()${path} (0xff) ]]& call map --hook)
map --mem (bd)/BOOT/IMGS/FIRADISK.IMG (fd1) || map --mem (hd-1,0)/BOOT/IMGS/FIRADISK.IMG (fd1)
map --mem (md)0x6000+2880 (fd0)
dd if=(fd1) of=(fd0) count=1 && clear
echo -e \nInput D to boot from the disk to continue System Installation \nor press Enter key to boot form the ISO.\n
WENV set in=$U,$input,Input here :
WENV check ${in}<>D call chainloader (0xff) && boot
find --set-root --devices=h /$LDR$ && cat --length=0 ()/WIN_NT$.~BT/SETUPLDR.BIN && chainloader --force /$LDR$ && boot
find --set-root --devices=h /$LDR$ && cat --length=0 ()/NTDETECT.COM && chainloader --force /$LDR$ && boot
find --set-root --devices=h /NTLDR && cat --length=0 ()/NTDETECT.COM && chainloader --force /NTLDR && boot
kernel || pause File not found,Press any key to return... && configfile (md)4+8



另附纯ISO/IMG启动菜单  (不加载firadisk驱动)
一共四种  两种自动判断  两种手动判断  各取所需

IMGISO.zip (781 Bytes, 下载次数: 732)

WENV最新版本下载地址
http://grubutils.googlecode.com

[ 本帖最后由 sratlf 于 2010-12-12 20:05 编辑 ]

FIRADISK.IMG.zip

31.11 KB, 下载次数: 488, 下载积分: 无忧币 -2

Firadisk 0.0.1.24


作者: zhoubin    时间: 2010-10-7 23:34
报告sratlf 大,我用这个菜单加载了一个小型版的win7pe.iso(http://bbs.wuyou.net/forum.php?m ... &extra=page%3D2),成功进入桌面,谢谢sratlf 大。。。。
不过比较遗憾win7pe.iso的外置没有加载上,我这里只有FIRADISK.IMA,没有FIRADISK.IMG,所以用的是FIRADISK.IMA,是不是FIRADISK.IMA与FIRADISK.IMG有区别呀。。。。
作者: sratlf    时间: 2010-10-7 23:38
标题: 回复 #2 zhoubin 的帖子
修正了点错误  现在各项正常  加载任意IMG/ISO启动  

加载ISO时会自动加载Firadisk,可用于安装系统

注意使用xp镜像安装系统时 文本模式完成后还需使用一次本菜单  需要在最后输入D从硬盘启动继续安装 (第一次为回车从镜像启动)

[ 本帖最后由 sratlf 于 2010-10-8 10:29 编辑 ]
作者: zhoubin    时间: 2010-10-7 23:40
也许是我的机子太破了。。。。
我这是02年的机子,128m的内存,最近我才加了根1g的内存条。。。。其他配置没变。。。。。
等我明天到单位的机子上再测试一下,整体加载这个小型版的win7pe.iso,看看能不能加载外置。。。
谢谢sratlf 大。。。。谢谢。。。。无尽地感谢!!!!
作者: zhoubin    时间: 2010-10-8 11:58
报告:
硬盘测试结果:
1、将iso文件和img文件放在d盘,menu.lst文件放在c盘,即menu.lst和iso、img文件不在同一分区,这个菜单无效,在输入路径后输入/pe.iso或者/dostool.img后,直接返回menu.lst菜单界面。。。。
2、整体启动pe.iso后仍然没有加载pe的外置程序,看来我的理解有误,我以为先加载FIRADISK.IMG,再启动pe.iso就可以加载上pe的外置程序了,看来不是这样的。。。。
感谢sratlf 大。。。。。
作者: sratlf    时间: 2010-10-8 12:28
标题: 回复 #5 zhoubin 的帖子
本来就可以放在不同分区的  用的是哪个菜单  早上修改了下

是那个pe  win7pe的可能不支持  win7pe启动时不会加载fd0和fd1  pe1.x的才可以
作者: zhoubin    时间: 2010-10-8 13:28
标题: 回复 #6 sratlf 的帖子
基于h3的7月7日版的MENU.LST菜单,我修改了一下。。。。。
我很菜,不知是哪里修改地不对,您的这个菜单,在这个MENU.LST里运行,有点问题(见5楼的说明),麻烦sratlf 大帮我看一下。。。。
MENU.LST.rar (116.56 KB, 下载次数: 173)
特别说明一下,附件中的grldr是2010年8月12日的。。。。grub4dos 0.4.5b
其他的grldr文件我用不了,就连最新的10月3日的grub4dos-0.4.5b在我这里也是花屏。。。。。
不好意思,给您添麻烦了。。。。谢谢您!!!

[ 本帖最后由 zhoubin 于 2010-10-8 13:30 编辑 ]
作者: 寂寞人生    时间: 2010-10-8 13:55
能支持WIN7镜像安装吗
作者: zhs509    时间: 2010-10-8 14:10
标题: 回复 #7 zhoubin 的帖子
wenv要下载新版的(2010年10月份的)
作者: zhoubin    时间: 2010-10-8 14:21
标题: 回复 #9 zhs509 的帖子
是呀,我用的是wenv-2010-10-07的。。。。
作者: sratlf    时间: 2010-10-8 15:05
标题: 回复 #7 zhoubin 的帖子
MENU.LST里 command --set-path=()/BOOT/GRUB/ 有问题  不能这么写

还有总感觉下面红字部分应该是错的

#=============以下定义启动类型==============
write 0x60000 0
#boot from cd
checkrange 0x9f read 0x82a0 && write 0x60000 1
#boot from pd
checkrange 0x21 read 0x82a0 && write 0x60000 2
#boot from ud
checkrange 0x23 read 0x82a0 && write 0x60000 3
#boot from fd/usbzip
checkrange 0x0 read 0x82a0 && write 0x60000 4
#==========默认HD/USBHDD,其值为0===========
应该为
#=============以下定义启动类型==============
write 0x60000 0
#boot from cd
checkrange 0x9f read 0x8280 && write 0x60000 1 &&  command --set-path=(cd)/BOOT/GRUB/
#boot from pd
checkrange 0x21 read 0x8280 && write 0x60000 2
#boot from ud
checkrange 0x23 read 0x8280 && write 0x60000 3 && command --set-path=(ud)/BOOT/GRUB/
#boot from fd/usbzip
checkrange 0x80 read 0x8280 && write 0x60000 4
checkrange 0x80 read 0x8280 && map (hd0) (hd-1) && map (hd1) (hd0) && map --rehook
checkrange 0x80 read 0x8280 && root (hd-1,0) && command --set-path=(hd-1,0)/BOOT/GRUB
#==========默认HD/USBHDD,其值为0x80=========

cat --length=0 ()/BOOT/IMGS/FIRADISK.IMG && root ()
cat --length=0 ()/BOOT/IMGS/FIRADISK.IMG && root ()

改为

cat --length=0 (cd)/BOOT/IMGS/FIRADISK.IMG && root (cd)
cat --length=0 (ud)/BOOT/IMGS/FIRADISK.IMG && root (ud)
cat --length=0 (hd-1,0)/BOOT/IMGS/FIRADISK.IMG && root (hd-1,0)
作者: zhoubin    时间: 2010-10-8 15:27
标题: 回复 #11 sratlf 的帖子
刚刚把menu.lst菜单按照楼上的改过来,本地硬盘测试了一下。。。。。
仍然是5楼第1条所述的问题,没有解决。。。。
作者: sratlf    时间: 2010-10-8 15:28
标题: 回复 #12 zhoubin 的帖子
你是什么方式启动  WENV在什么位置
作者: zhoubin    时间: 2010-10-8 15:57
标题: 回复 #13 sratlf 的帖子
不好意思,都怪我太笨。。。。
又检查了一遍menu.lst菜单,我把
  1. command --set-path=()/BOOT/GRUB/
复制代码
这一句删掉。。。。
原帖由 sratlf 于 2010-10-8 15:28 发表
你是什么方式启动  WENV在什么位置

我把我做的这个光盘文件全部提取,部署到本地c盘(其中:grldr和menu.lst都在c盘),pe.iso放在了d盘,通过本地硬盘启动grldr,测试加载d盘的pe.iso,成功了。。。。
没有再出现5楼第1条所述的情况。。。。。
谢谢sratlf 大。。。。
WENV在C:\BOOT\GRUB\下。。。。

等一下,我再测试一下光盘启动和pxe网络启动。。。。
再次感谢sratlf 大。。。。
作者: sratlf    时间: 2010-10-8 16:56
原帖由 寂寞人生 于 2010-10-8 13:55 发表
能支持WIN7镜像安装吗


不支持镜像整体安装,但是可以把镜像解开放到硬盘安装
作者: Hcrty    时间: 2010-10-8 16:58
虽然对于较深入的grub4dos,偶是菜鸟一个,不过偶支持成品...最小弄个类似NTboot那样的通用 IMG/ISO 启动工具,工具小,功能强...呵呵...虽然p大的通用启动工具不错,不过由于他还是太大了,而且多余菜单让人有些纠结...
作者: zhoubin    时间: 2010-10-8 17:33
原帖由 sratlf 于 2010-10-8 15:05 发表
#boot from pd
checkrange 0x21 read 0x8280 && write 0x60000 2

这一句不完整。。。。
改为
  1. #boot from pd
  2. checkrange 0x21 read 0x8280 && write 0x60000 2 && command --set-path=(pd)/BOOT/GRUB/
复制代码

就可以了。。。。
我分别测试了本地硬盘启动。。。。
在vm虚拟机上测试了,光盘启动,pxe网络启动均获成功。。。。
pxe网络启动时,winpe.iso在客户端,用sratlf 大给的菜单加载的是客户端的winpe.iso,winpe.iso也是xpe的,可以加载外置工具。。。。
感谢sratlf 大。。。。
至于ud和fd/usbzip我这里没有条件测试,那位朋友有条件测试的话,也帮着测试一下。。。。
顺便上传一个完整版的MENU.LST菜单文件,有需要的朋友们可以参考一下,我是一个菜鸟,这个菜单这可是花费了我很多心血的哟。。。。
MENU.LST.rar (2.17 KB, 下载次数: 153)
最后,重点感谢一下sratlf 大。。。。。。拥抱一下sratlf 大。。。。。谢谢!!!!!
作者: sratlf    时间: 2010-10-8 18:53
标题: 回复 #17 zhoubin 的帖子
因为没有考虑pd的情况  补充完整了也不错

忘记问了  pxe启动时加载firadisk驱动了吗

cat --length=0 (cd)/BOOT/IMGS/FIRADISK.IMG && root (cd)
cat --length=0 (ud)/BOOT/IMGS/FIRADISK.IMG && root (ud)
cat --length=0 (hd-1,0)/BOOT/IMGS/FIRADISK.IMG && root (hd-1,0)

这三个判断里可没有pxe情况

[ 本帖最后由 sratlf 于 2010-10-8 19:08 编辑 ]
作者: wangfr    时间: 2010-10-8 19:47
加载速度不知道如何?
作者: sratlf    时间: 2010-10-8 20:33
标题: 回复 #19 wangfr 的帖子
和普通方式加载没什么差距
作者: wlsx    时间: 2010-10-8 20:34
单位的机子上再测试一下,整体加载这个小型版的win7pe.iso,看看能不能加载外置。。。
作者: sratlf    时间: 2010-10-8 20:45
标题: 回复 #21 wlsx 的帖子
win7pe就别想了  好像压根没有提供加载软盘驱动
作者: pseudo    时间: 2010-10-8 21:13
原帖由 丞羽 于 2010-10-8 16:58 发表
虽然对于较深入的grub4dos,偶是菜鸟一个,不过偶支持成品...最小弄个类似NTboot那样的通用 IMG/ISO 启动工具,工具小,功能强...呵呵...虽然p大的通用启动工具不错,不过由于他还是太大了,而且多余菜单让人有 ...

合盘模板F6+GhostPE中有通用iso、img启动器成品。



这个菜单是容易diy的普通菜单示例,方便增删菜单项,这样就可以做到没有多余菜单了。

这个模板可以剪裁,就通用iso、img启动器菜单项功能而言,保留以下文件即可,体积2MB多:
grldr+menu.0pe+0pe.gz+unifont+u16hei
其中unifont+u16hei系中文菜单所需,如果只使用英文菜单还可以精简掉。

注意,这个2MB多的东西还是SRS驱动的F6模块。

可以删除模板中SRS目录下的部分文件或全部文件,这里把整个SRS目录都删掉了。
一般地,文件越多,功能也越强,随着SRS目录东西的增减(一般只需增减文件,不需修改文件),其对SRS的支持程度也随之有强弱变化,一分钱一分货。

要不要支持SRS,支持到什么程度,用户可以做主的,这样,谈体积的意义不大了。
作者: zhoubin    时间: 2010-10-8 21:17
标题: 回复 #18 sratlf 的帖子
刚打开电脑,才看到sratlf 大的回复。。。。
您问的问题,我不太好回答,因为我也不知道。。。。从菜单来看好像没有加firadisk。。。。
但是我进入pe网启,和不进pe网启,都可以加载客户机的pe.iso,并且还可以加载pe自带的外置程序。。。。当然了这个pe不大,只有70多m,是很久以前下载的xpe。。。。
所用的菜单就是17楼的那个。。。。
作者: sratlf    时间: 2010-10-8 22:04
标题: 回复 #24 zhoubin 的帖子
那看来就是全内置PE了  那就和firadisk驱动没关系了  有没有都一样
作者: zhoubin    时间: 2010-10-9 00:33
家里的机子太慢,用vm虚拟机测试了几遍pxe网络启动,加载pe.iso,还是没加载上pe的外置程序。。。。
前面只顾着高兴了。。。。可能把内置pe和外置pe没看清楚,不好意思,见笑了。。。。
作者: zhoubin    时间: 2010-10-9 08:29
原帖由 sratlf 于 2010-10-8 18:53 发表
因为没有考虑pd的情况  补充完整了也不错

忘记问了  pxe启动时加载firadisk驱动了吗

cat --length=0 (cd)/BOOT/IMGS/FIRADISK.IMG && root (cd)
cat --length=0 (ud)/BOOT/IMGS/FIRADISK.IMG && root (ud)
cat --length=0 (hd-1,0)/BOOT/IMGS/FIRADISK.IMG && root (hd-1,0)

这三个判断里可没有pxe情况

sratlf 大:
在这里加一句:
  1. cat --length=0 (cd)/BOOT/IMGS/FIRADISK.IMG && root (cd)
  2. cat --length=0 (pd)/BOOT/IMGS/FIRADISK.IMG && root (pd)
  3. cat --length=0 (ud)/BOOT/IMGS/FIRADISK.IMG && root (ud)
  4. cat --length=0 (hd-1,0)/BOOT/IMGS/FIRADISK.IMG && root (hd-1,0)
复制代码
因为本人水平太菜,也没有实机测试条件,心里也没底。。。。最多也就是vm虚拟机里测试一下pxe网络启动,加载pe.iso的外置程序问题。。。。。
所以问一下sratlf 大,我添加的红字部分,不知写的有没有问题。。。。
谢谢sratlf 大。。。。

怪了,我这里怎么添加不上贴子的字体颜色。。。。
反正就是上面的第二句。。。。
麻烦谢谢sratlf 大给指正一下。。。。这样写,是不是这个功能的适用性更广一些呢!!!

郁闷,我这里的论坛登陆状态,保持不住,一直是游客身份,我得要反复刷新网页,才能见到我的登陆状态,才能回复,发表言论。。。。
等有时间了,我用sratlf 大的这个功能,整体加载一下winxp.iso,重装一下系统。。。。
谢谢sratlf 大。。。。

[ 本帖最后由 zhoubin 于 2010-10-9 08:47 编辑 ]
作者: sratlf    时间: 2010-10-9 09:50
标题: 回复 #27 zhoubin 的帖子
理论上是这么写没错  但是我也没机会测试  不知道能不能正常使用  所以就只写了现在测试没问题的两种情况

正好等你有空测试下了  看效果怎么样

或者这么写也行
checkrange 0x9f read 0x8280 && root (cd)
checkrange 0x80 read 0x8280 && root (hd-1,0)
checkrange 0x21 read 0x8280 && root (pd)
checkrange 0x23 read 0x8280 && root (ud)
map --mem ()/BOOT/GRUB/FIRADISK.IMG
作者: zhoubin    时间: 2010-10-9 11:45
原帖由 sratlf 于 2010-10-9 09:50 发表
或者这么写也行
checkrange 0x9f read 0x8280 && root (cd)
checkrange 0x80 read 0x8280 && root (hd-1,0)
checkrange 0x21 read 0x8280 && root (pd)
checkrange 0x23 read 0x8280 && root (ud)
map --mem ()/BOOT/GRUB/FIRADISK.IMG

sratlf 大反馈一下测试情况:
以上写法,用vm虚拟机pxe网络加载pe.iso,没有启动起来。。。。

作者: sratlf    时间: 2010-10-9 12:55
标题: 回复 #29 zhoubin 的帖子
那就是还有点问题,先按原来写法用吧,晚上回去我看看
作者: sratlf    时间: 2010-10-20 00:22
新版WENV命令有变化  改动了下
作者: zhoubin    时间: 2010-10-28 11:52
请教一个问题,为什么在不同的机子上cd的值都不一样,我刻盘测试了三台机子,两台台式机分别是0x9f 和 0xef ,一台笔记本是0x90。。。。
checkrange 0x9f read 0x8280 && command --set-path=(cd)/BOOT/G4D
#checkrange 0x9f read 0x8280 && WENV set de=${path##/} && WENV check ${de#.}<>${de##.} set path=${path%/}/${de%%.}_${de#.}
checkrange 0x9f read 0x8280 && root (cd) || checkrange 0x80 read 0x8280 && root (hd-1,0) || checkrange 0x23 read 0x8280 && root (ud)

这样的话,每次更换不同的机器后,就要编辑更改cd值,就是将上面的0x9f改为0xef或者其他的什么值,才能使用本菜单。。。。。
有没有办法把cd值固定成0x9f,这样的话更换机器就可以直接使用本菜单了,不用编辑更改0x9f值了。。。。。

顺便说明一下,我仅仅测试了光盘启动和本地硬盘启动,其他的暂时没有条件测试。。。。。当然了vm虚拟机测试的cd值一直都是0x9f,这和实机测试的结果不一样。。。。

[ 本帖最后由 zhoubin 于 2010-10-28 11:59 编辑 ]
作者: sratlf    时间: 2010-10-28 14:00
标题: 回复 #32 zhoubin 的帖子
这就不太清楚了  我一直都是量产的usb-cdrom启动  刻盘没有试过

你也可以试下量产  看是否是0x9f  我需要晚上回去才能测试别的机子
作者: zhoubin    时间: 2010-10-28 15:01
标题: 回复 #33 sratlf 的帖子
sratlf 大:
您好,首先要说明一个大前提,我不是说你写的cd值是错的应该说是对的,我的主菜单开头用的也是0x9f,论坛里的很多菜单开头都用的是0x9f,看来是经过大家测试验证好的。。。。
我只是很奇怪,cd值0x9f为什么在不同的机器上会不一样,比如我办公室的机子就是下图的情况:



量产到u盘,启动电脑后,手机拍的。。。。刻盘的情况和这一样。。。。
最后,附上我修改的hhh333的菜单文件。。。麻烦您给看一下,那里还需要完善。。。
MENU.rar (2.41 KB, 下载次数: 55)
谢谢sratlf 大,给您添麻烦了,谢谢。。。。

[ 本帖最后由 zhoubin 于 2010-10-28 15:18 编辑 ]
作者: sratlf    时间: 2010-10-28 16:35
标题: 回复 #34 zhoubin 的帖子
呵呵,看来被误会了,我只是想让你用其他方式启动,看下和刻盘启动得到的设备号是否相同

假如相同的话就我猜想是机子的bios原因,使得cd启动设备号发生了变化,不再是9f,比如你的变成了ef

不同的话可能就是启动方式原因了,毕竟bios是区分cdrom启动和usb-cdrom启动的

因为以前没有注意过这个问题,就按习惯写了0x9f,看来还需要改下

同时谢谢你的细心和报告
作者: chenall    时间: 2010-10-28 16:53
cd的值不是固定的.
可以用以下方法
checkrange 0x9f:0xff
作者: zhoubin    时间: 2010-10-28 16:53
原因我好像找到了,但我没有能力解决。。。。
看一下这篇文章:
0x8280取值及含义求教(http://bbs.znpc.net/viewthread.php?tid=5930&page=1#pid45150

[ 本帖最后由 zhoubin 于 2010-10-28 16:55 编辑 ]
作者: zhoubin    时间: 2010-10-28 17:00
chenall 大大也来了。。。。
真是荣幸啊。。。。
谢谢chenall 大大的关注!!!!
作者: zhoubin    时间: 2010-10-28 18:07
报告sratlf 大:
chenall 老大的方法,我自己修改了三处:
checkrange 0x9f:0xff read 0x8280 && command --set-path=(cd)/BOOT/GRUB
#checkrange 0x9f:0xff read 0x8280 && WENV set de=${path##/} && WENV check ${de#.}<>${de##.} set path=${path%/}/${de%%.}_${de#.}
checkrange 0x9f:0xff read 0x8280 && root (cd) || checkrange 0x80 read 0x8280 && root (hd-1,0) || checkrange 0x23 read 0x8280 && root (ud) || checkrange 0x21 read 0x8280 && pxe keep && root (pd)

重新量产U盘(光盘刻完了,还没顾上买呢。。。),测试了一下这个菜单,咦!可以用了耶!感谢chenall 老大。。。。
cd值和34楼的一样

仍然是  0xef  但不用手工编辑更改 0x9f 值了,直接就可以用,真是神奇。。。。
感谢chenall 老大,感谢sratlf 大提供这么好的菜单工具。。。。。
我再试试其他的电脑,有问题了再来给老大汇报。。。。。
再次感谢 chenall 老大和 sratlf 大。。。。谢谢!!!!

[ 本帖最后由 zhoubin 于 2010-10-28 18:12 编辑 ]
作者: sratlf    时间: 2010-10-28 18:46
原帖由 chenall 于 2010-10-28 16:53 发表
cd的值不是固定的.
可以用以下方法
checkrange 0x9f:0xff


那0x90的话适用吗  好像没有在这个范围内吧
作者: zhoubin    时间: 2010-10-28 20:35
标题: 回复 #40 sratlf 的帖子
我今天值班,0x90是我家里的古董笔记本上的检测值。。。。
我得要刻录成光盘,明天晚上下班,回家后才能测试(这个笔记本没有u启功能)。所以,我现在暂时还没法报告测试结果。。。
作者: sratlf    时间: 2010-10-28 22:43
标题: 回复 #41 zhoubin 的帖子
没关系  等有时间再测试也行  不急

那个菜单看了下  基本上没有问题
作者: zhoubin    时间: 2010-10-29 19:40
报告老大,刻盘,在笔记本上测试了一下。。。。
仍然需要,手工修改cd值。。。

作者: sratlf    时间: 2010-10-29 20:02
标题: 回复 #43 zhoubin 的帖子
那只能把checkrange 0x9f:0xff  改成  checkrange 0x90:0xff

这个应该可以  就是担心有什么其他错误发生  还是看chenall大的意思吧
作者: chenall    时间: 2010-10-29 21:56
看来这个是比较特别的。看来还是使出杀手锏好了。
root > (md)0x0x301+1
cat --locate=iso (md)0x301+1,0x20 && echo Current Root is cd

但是看起来好像不需要这么麻烦。
直接使用一句话就搞定了。根本不需要去检测。
command --set-path=(bd)/BOOT/G4D

(bd)代表启动的设备,不管它是什么设备总是能用(bd)来访问。
command 默认查找外置的路径就是(bd)/grub
如果你的外部命令是放在grub目录下的就不需要设置可以直接使用。
作者: sratlf    时间: 2010-10-29 22:24
标题: 回复 #45 chenall 的帖子
好吧  一直不知道bd的意思  现在明白了

还有件事想问下  root会改变当前设备号  那会改变启动设备号(bd)吗

[ 本帖最后由 sratlf 于 2010-10-29 22:32 编辑 ]
作者: blbl    时间: 2010-11-24 17:24
标题: U盘启动Grub4DOS加载ISO安装XP失败 求教
菜单完全照抄 http://bbs.wuyou.net/forum.php?mod=viewthread&tid=177790&extra=page%3D2  sratlf 大大的


title img&iso
command --set-path=(bd)/BOOT/GRUB && checkrange 0x80 read 0x8280 && map (hd0) (hd-1) && map (hd1) (hd0) && map --rehook && root (hd-1,0)
WENV reset && clear && echo \nPlease input ISO/IMG PATH or press Enter to use /WIN$.ISO as default.\n
WENV set path=$U,$input,Input PATH here, begin with "/" :
WENV get path || clear && echo \nNow use /WIN$.ISO as default. && WENV set path=/WIN$.ISO
WENV check ${path:0:1}<>/ set path=/${path}
#checkrange 0x9f:0xff read 0x8280 && WENV set de=${path##/} && WENV check ${de#.}<>${de##.} set path=${path%/}/${de%%.}_${de#.}
WENV check ${path##.}<>ISO call find --set-root --ignore-floppies ${path} ]]| pause File not found,Press any key to return... ]]& configfile (md)4+1
WENV check ${path##.}<>ISO call clear ]]& echo \nNow loading ${path} ...\n ]]& map --mem ${path} (fd0) ]]& map --hook ]]& rootnoverify (fd0) ]]& chainloader (fd0)+1 ]]& boot
map --mem (bd)/BOOT/IMGS/FIRADISK.IMG (fd1) || map --mem (hd-1,0)/BOOT/IMGS/FIRADISK.IMG (fd1)
map --mem (md)0x6000+2880 (fd0)
dd if=(fd1) of=(fd0) count=1 && clear
WENV check ${path##.}==ISO call find --set-root --ignore-floppies ${path} ]]| pause File not found,Press any key to return... ]]& configfile (md)4+1
WENV check ${path##.}==ISO call clear ]]& echo \nNow loading ${path} ...\n ]]& map --mem ()${path} (0xff) ]]& map --hook ]]| map ()${path} (0xff) ]]& map --hook
echo \nInput D to boot from the disk to continue System Installation \nor press Enter key to boot form the ISO.\n
WENV set in=$U,$input,Input here :
WENV check ${in}<>D call chainloader (0xff) && boot
find --set-root --ignore-floppies --ignore-cd /$LDR$ && cat --length=0 ()/WIN_NT$.~BT/SETUPLDR.BIN && chainloader --force /$LDR$ && boot
find --set-root --ignore-floppies --ignore-cd /$LDR$ && cat --length=0 ()/NTDETECT.COM && chainloader --force /$LDR$ && boot
find --set-root --ignore-floppies --ignore-cd /NTLDR && cat --length=0 ()/NTDETECT.COM && chainloader --force /NTLDR && boot
kernel || pause File not found,Press any key to return... && configfile (md)4+1


U盘启动是 Grub4DOS Toolbox for Windows 制作的  

版本 grub4dos-0.4.5b-2010-11-24.zip chenall 最新版
       wenv-2010-11-24.zip


U盘根目录文件列表

\grldr (菜单内置)
\MiniPE
\BOOT\GRUB\wenv
\BOOT\IMGS\FIRADISK.IMG
\WIN$.ISO (由XP SP3 MSDN镜像改名)


结果启动 可以进入我的pe 但iso加载出现

error 30: invalid argument

请问这个怎么回事啊

[ 本帖最后由 blbl 于 2010-11-24 17:32 编辑 ]
作者: sratlf    时间: 2010-11-24 18:07
u盘是量产的cdrom还是hdd还是fbinst制作的,是在哪一步出现的错误,加载iso之前还是之后
作者: blbl    时间: 2010-11-25 11:58
标题: 回复 #48 sratlf 的帖子
hdd 模式  具体哪一步我也搞不清 因为我一般都是拿来主义 没有仔细研究过 g4d

看见你发的贴子 就想自己试一下  进入启动界面 选择 img/iso 回车就立马出现错误提示了



作者: zxw    时间: 2010-11-25 13:00
标题: 回复 #49 blbl 的帖子
注意grldr、wenv的版本对应问题。
作者: blbl    时间: 2010-11-25 13:30
标题: 回复 #50 zxw 的帖子
全部换成 今天的版本

wenv-2010-11-25.zip
grub4dos-0.4.5b-2010-11-24-fix2.zip


还是不行  进入菜单后  img&iso 回车出现

\nPlease input ISO/IMG PATH or press Enter to use /WIN$.ISO as default.
Input PATH here, begin with "/" :

然后回车 立马就报错了
error 30: invalid argument

[ 本帖最后由 blbl 于 2010-11-25 13:34 编辑 ]
作者: ql1307096    时间: 2010-11-25 13:52
支持一下,学习了!!
作者: sratlf    时间: 2010-11-25 15:13
原帖由 blbl 于 2010-11-25 13:30 发表
全部换成 今天的版本

wenv-2010-11-25.zip
grub4dos-0.4.5b-2010-11-24-fix2.zip


还是不行  进入菜单后  img&iso 回车出现

\nPlease input ISO/IMG PATH or press Enter to use /WIN$.ISO as defa ...


不应该啊,直接回车是检测有没有输入,一直没问题啊

晚上回去再我测试下,看具体是哪的原因
作者: blbl    时间: 2010-11-25 15:44
标题: 回复 #53 sratlf 的帖子
ok  麻烦sratlf 大大啦
作者: sratlf    时间: 2010-11-25 22:54
标题: 回复 #54 blbl 的帖子
不太好解决  先用回旧版WENV吧  新版WENV改动太多了  用1019版本还可以

[ 本帖最后由 sratlf 于 2010-11-26 00:18 编辑 ]
作者: blbl    时间: 2010-11-26 10:21
标题: 回复 #55 sratlf 的帖子
果然,换了1019一切ok  多谢sratlf 的指点 不胜感激 啵一个~~~~  ^^



另外网上搜索了个菜单

title XP setup from iso
find --set-root /xp.iso
map (hd0) (hd1)
map (hd1) (hd0)
map --mem /FIRADISK.IMG (fd1)i
map --mem (md)0x6000+800 (fd0)
map --mem /xp.iso (0xff)
map --hook
dd if=(fd1) of=(fd0) count=1
chainloader (0xff)

title Continue XP setup
find --set-root /xp.iso
map (hd0) (hd1)
map (hd1) (hd0)
map --mem /xp.iso (0xff)
map --hook
chainloader (hd0)+1

这个和大大的有什么区别么  那个好用点啊

[ 本帖最后由 blbl 于 2010-11-26 12:42 编辑 ]
作者: sratlf    时间: 2010-11-26 12:50
标题: 回复 #56 blbl 的帖子
那两个菜单是只能启动根目录下的XP.ISO来安装系统  同时第二个还有点问题  没有加载firadisk驱动  且只适用于xp装在第一分区的情况

我的是可以启动任意IMG/ISO  可以手动输入路径  同时把上面两个菜单合一  且不限制xp在第几主分区
作者: blbl    时间: 2010-11-27 10:35
标题: 回复 #57 sratlf 的帖子
HOHO  copy that ······

这下明白了  多谢了 赞一下你的共享精神

^^
作者: sratlf    时间: 2010-11-27 20:02
标题: 回复 #58 blbl 的帖子
搞定了  1#已更新  适用于wenv-tuxw-2010-11-27最新版  顺便加了点对输入字符的判断  我自己测试没问题
作者: houxiren    时间: 2010-12-11 18:20
sratlf版主zhoubin前辈。两位好。我用hpy7332前辈的“HPY新UD版合盘_V7.29正式版.fba”,他的这个PE启动菜单中,有个可加载可见分区的ISO和IMG的菜单。想据此,加入HDDREG2011.IMA或者HDDREG2011.iso(一硬盘修复软件,同一软件两种格式)。但不知道除了HDDREG2011.IMA或者HDDREG2011.iso这两个文件外还需要什么文件,及ISO.LIT应该怎么编辑?能否在两位有空的时候教教我(我不懒,但入门尚浅,如果ISO.LIT编辑的话,可否直接提供已编辑好的?谢谢)。谢谢。(我已下载好了WENV11-29版本,FIRADISK.IMG.zip,IMGISO.zip)
作者: sratlf    时间: 2010-12-12 00:14
标题: 回复 #60 houxiren 的帖子
这个要求其实很简单,不过可能要等几天,写了个批处理,方便加载各种文件,如引导文件,软盘镜像,光盘镜像等,且配置文件写法超简单
作者: houxiren    时间: 2010-12-12 11:32
标题: 回复 #61 sratlf 的帖子
谢谢,sratlf版主。期待您的帮助!
作者: sratlf    时间: 2010-12-12 13:07
标题: 回复 #62 houxiren 的帖子
批处理发布,在这个帖子

[ 本帖最后由 sratlf 于 2010-12-12 13:09 编辑 ]
作者: houxiren    时间: 2010-12-12 14:24
标题: 回复 #63 sratlf 的帖子
谢谢sratlf版主,我愚笨,一页页地找,还是找不到你提供的批处理。且能否麻烦你把要用的做成一个懒人包,我解压到U盘的OPE文件夹下就行了。实在是麻烦你了。我急,但知道求助于人的时候,时间总不好强求。请您有时间的话,给个这样的包包,好吗?谢谢。期待您的帮助。

[ 本帖最后由 houxiren 于 2010-12-12 14:50 编辑 ]
作者: sratlf    时间: 2010-12-12 15:53
标题: 回复 #64 houxiren 的帖子
晕,不是这个帖子里,我上一个回复里是能链接到我发的另外一个帖子
作者: houxiren    时间: 2010-12-12 19:07
标题: 回复 #65 sratlf 的帖子
版主,你好。你的链接给错了。 我用搜索帖子的方式,搜到了“grub加载任意ISO/IMG/引导文件等,菜单写法超简单,grub4dos批处理应用”这个帖子。但还是不知道怎么弄。我太笨了。

[ 本帖最后由 houxiren 于 2010-12-12 19:40 编辑 ]
作者: sratlf    时间: 2010-12-12 20:00
标题: 回复 #66 houxiren 的帖子
抱歉  是我的错误  地址确实贴错了  在新帖讨论吧  把你的要求完整说一遍  给你个完整的解决方法




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