用syslinux制作U盘启动盘心得
20080318 by m68@wuyou,zj.gd.cn
1、U盘要用XP或WinPE的管理工具:“磁盘管理”进行格式化,这是成功关键。
否则用其它工具格式化的尤其是反复格式化均无法正常启动。
运行 compmgmt.msc /s 选磁盘管理,在右窗格找到目标磁盘,右键选择格式化
(或先分区再格式化)。参见附图。
2、syslinux虽然兼容linux和DOS两种文件命名方式,但强烈建议使用“DOS 8.3”
格式命名文件夹路径和文件名称。否则出现找不到文件的错误提示。
3、syslinux支持gzip或zip压缩格式的磁盘映像,但memdisk自身不能压缩——这点和
grub不一样! 记住 memdisk支持标准floppy镜像直接启动,非标准(容量大于2880K的)
要附加CHS参数!如:
LABEL maxdos
kernel boot\memdisk
append initrd=boot\maxdos.img floppy c=555 h=2 s=18
CHS参数的获得参考“GDParam - 获取硬盘、软盘景象文件的 C/H/S参数”
http://bbs.znpc.net/viewthread.php?tid=258
4、syslinux -> ldntldr -> grldr(inner menu -> someboot.iso )
其syslinux.cfg相关配置:
kernel \ldntldr
append initrd=\grldr
上述 ldntldr可以改名,如为ldgrldr,但不能有.bin扩展名称(.bin等在
syslinux中有特殊含义,指磁盘镜像,ldntldr.bin文件显然不是磁盘镜像);
这里grldr 不是磁盘镜像系统文件,也没有接受传入参数功能,故要使用内置菜单,
以实现多重引导。grldr也可以改为XYldr,X、Y为任意字母以实现多重引导。
5、如果要用syslinux引导PE,即采用 “syslinux -> ldntldr -> ntldr”模式,则
其syslinux.cfg相关配置:
kernel \ldntldr
append initrd=\ntldr
上述两行也可以合并为如下一行:
kernel NTLDR.BIN
NTLDR.BIN的获得 参考“利用loadbin在不同的启动管理器中启动grub,grub2,grub4dos 和 ntldr”一文,
http://bbs.znpc.net/viewthread.php?tid=4273 ,bean 1# 发表于 2007-12-6 20:57
注意:如果同时用 ntldr 和 NTLDR.BIN (扩展名不能改),要改名处理一下NTLDR,如改为peldr,以免
异常出现。参图:
图中PE来自xufei2202 提供的MINI_WINPE(精干、启动快,集成有7个小软件,用于系统安装或维护操作足够用了!)
下载地址,是MINI_WINPE光盘版的:
http://www.fs2you.com/zh-cn/files/bcf53754-8bf8-11dc-a2c0-0014221f3995/
6、syslinux 3.62 在win32下 制作U盘启动,对FAT分区的兼容性好于 FAT32(对某些主板?!)的;且
在 <U盘>:\boot\ 目录下 运行syslinux.exe 成功率尤其高。
[ 本帖最后由 m68 于 2008-4-13 06:42 PM 编辑 ] |