| 
 用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 编辑 ] |