让syslinux启动慢成为过去
因为syslinux启动后加载img或pe等的速度很慢,所以很多人都放弃了syslinux,我终于找到方法。引导过程为:syslinux--->grub4dos--->img/ima/PE(先说明这可不是“KERNEL grub.exe”)。
此方法在我的机子(512m内存)上测试一个9m多的dos.img(压成6.6m,好象是红叶工具箱),启动时间不超过10s;测试老毛桃0911版PE,启动时间在60s以内(用“KERNEL grub.exe”方式时,时间可不少于10min)。
欢迎大家下载测试!请将使用情况贴上来,谢谢!
制作方法:
1、先将U盘格式化成USB-ZIP,最好为H/S=64/32;(此步非必须,据syslinux的作者说zip格式最好)
2、用syslinux写入引导记录;
3、填加附件中的文件及各种工具至U盘。
说明:
1、附件中为ghost镜像文件。
2、为了上传方便,镜像中未真正包括工具及PE,相应文件仅为示意,大小为0字节。
3、填加PE时,仅需将“op.win,winpe.ini和winpe.is_”这3个文件覆盖minipe文件内的同名文件即可。
4、DOS工具镜像可压缩成gz格式。
5、还可填加linux到U盘。
本想上传1:1镜像,可没地方(压缩完后也有110m),以后再说吧!
[ 本帖最后由 fdd_ds 于 2008-2-29 05:50 PM 编辑 ] 我来查看,没想到你的第二种启动GRUB的方法。 LABEL GRUB4DOS
MENU LABEL ^ A ----GRUB4DOS
KERNEL syslinux.c23
APPEND initrd=grldr
以上的syslinux.c23是什么东西,你这个CFG的出处是什么地方? 如果我没有猜错的话应该是出自时空论坛。
http://bbs.znpc.net/images/default/digest_3.gif 利用loadbin在不同的启动管理器中启动grub,grub2,grub4dos 和 ntldr
这个syslinux.c23就是ldgrub.bin改名而成。
用kernel 加载grub.exe由于并没有完全加载所以会导致速度变慢。 chenall说的对,就是这个东西。
现在我们暂且认为syslinux是启动U盘兼容性最好的引导工具,但使用了loadbin,将引导文件变为“linux”,再由syslinux来引导,这个过程的兼容性又如何? 哈哈,这都发现了,高手就是高!
请教chenall:
用kernel 加载grub.exe由于并没有完全加载所以会导致速度变慢。
这是什么意思?那如何保证"完全加载”呢?请明示!谢谢!
现在我们暂且认为syslinux是启动U盘兼容性最好的引导工具,但使用了loadbin,将引导文件变为“linux”,再由syslinux来引导,这个过程的兼容性又如何?
这里的“引导文件”范围太广了,就不好说了。如特至grub4dos的话,我觉得应很好,1、在我这好几十台从2004至2008各品版机子上测试都OK;2、grub4dos在硬盘上使用,好像没有不成功的......:3、有问题可找“不点”呀!
在我测试中,按附件有时会出现找不到menu.lst的问题,但我觉得应该是配置文件或路径的问题,请原名丢了 版主及各位高手帮助完善一下,谢谢! 这个问题我觉得是grub4dos的,可靠的办法就是把menu.lst导入grldr。
回:原名丢了 版主
这吗说,我的配置文件是没问题的了?把menu.lst导入grldr,这个我也想到了,只是在添加新东西时还要重新导入,稍嫌麻烦,看已后版本能否有改善。
再请问版主:chenall说“kernel 加载grub.exe由于并没有完全加载所以会导致速度变慢”这是什么意思?
[ 本帖最后由 fdd_ds 于 2008-3-1 02:16 PM 编辑 ] 一群高人,拜托,能不能出个成品,写个使用方法让我等菜鸟也体验一下呀? 兄弟,我想问 这个60秒跟 DOS ——》 GRUB ——》 PE,哪个更快? 将ldgrub.bin改名而成syslinux.c23。? 不如 直接 mkimage.exe ldntldr.bingrldrmygrldr。
再将mygrldr 改名回来
引导winpe mkimage.exe ldntldr.binserupldr.bin peldr.bin (serupldr.bin老毛wxpe目录下的)
label grldr
KERNEL /boot/mygrldr
label 03pe
KERNEL /boot/03peldr.bin
label winper
KERNEL /boot/peldr.bin
从linux 引导 grldr好象grldr 没有识别启动介质运行原菜单中map --mem /dos98.img (fd0)提示找不到要在此句前增加 find --set--root /dos98.img 才行
[ 本帖最后由 oym2007 于 2008-3-2 01:06 AM 编辑 ] 1、我是将ldntldr.bin随意改成syslinux.c23的,因syslinux加载*.bin时会有问题。
2、“提示找不到”这个我倒没发现,我的各选项前均有find --set--root ......。 原帖由 fdd_ds 于 2008-3-2 09:05 AM 发表 http://bbs.wuyou.net/images/common/back.gif
1、我是将ldntldr.bin随意改成syslinux.c23的,因syslinux加载*.bin时会有问题。
2、“提示找不到”这个我倒没发现,我的各选项前均有find --set--root ......。
都说SYSLINUX兼容性比较好,我也试着用makebootfat做了一个USB-ZIP,没有在LINUX下验证是否成功。但的确已经可以引导了。
但兼容性有总量,我这只有两块865PE的主板可以引导,其它机器(有老的,也新机器)都不能正常引导(有的没有菜单,根本就不认ZIP)。 grldr找不到菜单的问题,我想到个变通的方法。即通过内置菜单调用外置菜单。
方法为:
1、置换内置菜单为如下内容;
timeout 0
default 0
title
find --set-root /boot/grub/menu.lst
configfile /boot/grub/menu.lst
2、拷贝外置菜单至/boot/grub/下即可。
注:外置菜单(menu.lst)的文件名也可随意,但必须和内置菜单相对应(红色部分)。
附件:是grub4dos菜单编辑器,图形界面的。 汗,\boot\syslinux\grldr是只读属性.还以为是你的菜单编辑工具有问题.命令行一试才知道
替换后还是找不到menu.lst
J:金士顿 逸盘 2G.
syslinux.exe j: 做的引导.不会跟syslinux版本有关系吧?
[ 本帖最后由 cocobi 于 2008-3-2 11:28 AM 编辑 ] 原帖由 cocobi 于 2008-3-2 11:19 AM 发表 http://bbs.wuyou.net/images/common/back.gif
汗,\boot\syslinux\grldr是只读属性.还以为是你的菜单编辑工具有问题.命令行一试才知道
替换后还是找不到menu.lst
J:金士顿 逸盘 2G.
syslinux.exe j: 做的引导.不会跟syslinux版本有关系吧?
在我这的几台机器上可以正常引导,可在一些机器上找不到菜单,直接在命令行下手动执行也找不到。
所以找不到菜单的总量很可能跟主板的BIOS有关。 都用最新版试试(我是用grub4dos-2008-1-3和syslinux-3.61做的)。
直接将menu.lst置入grldr是否可以加载工具?
[ 本帖最后由 fdd_ds 于 2008-3-2 11:54 AM 编辑 ] grub不认我的u盘.find U盘上的任何东西都找不到.硬盘里面的东西可以.sata硬盘识别成hd了. 原帖由 会抽烟的鱼 于 2008-3-2 11:40 AM 发表 http://bbs.wuyou.net/images/common/back.gif
在我这的几台机器上可以正常引导,可在一些机器上找不到菜单,直接在命令行下手动执行也找不到。
所以找不到菜单的总量很可能跟主板的BIOS有关。
应该是这个原因,我的是MCP73芯片.一会试试其他机器
原帖由 fdd_ds 于 2008-3-2 11:51 AM 发表 http://bbs.wuyou.net/images/common/back.gif
都用最新版试试(我是用grub4dos-2008-1-3和syslinux-3.61做的)。
直接将menu.lst置入grldr是否可以加载工具?
应该不行,直接用命令都找不到.我的也是080103版.上面gho解出来的.
PS:你们回帖好快 你说的情况,我这没有出现。
1、试试用KERNEL方式加载grub.exe,看能否find U盘上的东西?
2、用syslinux--->ntldr--->grldr---->.....方式再试试。即将cfg中的“APPEND initrd=grldr”改为APPEND initrd=ntldr,并拷贝ntldr至/boot/syslinux/下,boot.ini至U盘根目录下编辑........,看这样是否可以? 刚在acer TM3300笔记本上试了下,可以找到.不同的是主板对U盘的识别.
在我的机器上识别为zip(实际好像是hdd).在笔记本上识别为hdd,grub find 的时候也是识别为hd. 但兼容性有总量,我这只有两块865PE的主板可以引导,其它机器(有老的,也新机器)都不能正常引导(有的没有菜单,根本就不认ZIP)。
U-zip是H/S=64/32吗?“不能正常引导”请说的详细些。 ntldr 直接找到了我硬盘的boot.ini 移掉硬盘的话也找不到u上的boot.ini
提示
multi(0)disk(0)rdisk(0)partition(1)......找不到. 我的台电2G优盘用了GHO文件没用启动显示是HDD EBIOS
BOOT ERROR
用了USB ZIP USB HDD都不行
看来我的主板只能识别我的优盘为USB HDD的吧 启动显示是HDD EBIOS
这说明引导记录有问题,用syslinux.exe重写一下。 不明白!~~~~~~ 路过,帮顶吧
因为自己找了几个5128芯片的U盘,就量产成cdrom了,兼容性还好。IBM本本除外 原帖由 fdd_ds 于 2008-3-2 01:00 PM 发表 http://bbs.wuyou.net/images/common/back.gif
U-zip是H/S=64/32吗?“不能正常引导”请说的详细些。
我用的 KINGMAX 的2代1G超棒,只有一个分区,且 LINUX 下已经难证 H/S 为 64/32
1、只有两块865PE的板认出来是 USB - ZIP,且引导过程正常。
2、845PE、815EP、NF2等几板较老主板都不能正常启动。没有引导过程……
3、较新几台机器,可以从 USB -ZIP 启动,正常引导 SYSLINUX ,接着再进 GRUB4DOS 就不行了,没办法找到 U盘 上的东西,提示乱码(我用的中文)。菜单已经内置到GRLDR。
个人感觉 SYSLINUX 的兼容性还是有差,原来用 DOS 加载 GRUB4DOS 也没有出现过这么多不认的情况。 正看syslinux语法,先顶一下,加入关注!
你说的情况,我这没有出现。
1、试试用KERNEL方式加载grub.exe,看能否find U盘上的东西?
2、用syslinux--->ntldr--->grldr---->.....方式再试试。即将cfg中的“APPEND initrd=grldr”改为APPEND initrd=ntldr,并拷贝ntldr至/boot/syslinux/下,boot.ini至U盘根目录下编辑........,看这样是否可以?
还需要ntdetect.com文件
个人的看法:
除非需要grub4dos的ISO仿真等一些比较高级的功能,否则没必要利用SYSLINU加载grub (grldr)
这种方法不能保证成功率。
U盘上syslinux配合bean的loadlin工具,可以满足绝大部分的要求,起码引导NTLDRSETUPLDR.BIN(pe)都是没任何问题的。
我也试过syslinux--->ntldr--->grldr,效果也不怎么令人满意。
总结:虽然通过syslinux加载GRUB来启动各种工具,可以改善加载速度,但是syslinux--->grldr这个环节不牢靠,利用此方法加快启动速度也无太大意义。
[ 本帖最后由 barton 于 2008-3-3 01:02 PM 编辑 ]
页:
[1]
2