采用U+写入和syslinux引导方式制造高兼容性U盘maxdos+winpe+cdlinux ...

最近在制作启动U盘玩,参考了网上各种方案,{zh1}决定用U+写入和syslinux引导方式进行制作
(因为自己的Ubuntu就是用UltraISO写入U盘ISO文件安装成功的,其采用的方式就是"U+"和"syslinux")

在这里,会用到部分工具,下载地址如下
Diskgen(磁盘管理及数据恢复软件)
http://www.skycn.com/soft/3506.html
Bootice(引导扇区维护工具)
http://bbs.wuyou.com/viewthread.php?tid=57675
syslinx(引导工具)
http://www.kernel.org/pub/linux/utils/boot/syslinux/
getdrvparam(获取引导文件的c/h/s信息)
http://www.google.cn/search?client=opera&rls=en&q=getdrvparam&sourceid=opera&ie=utf-8&oe=utf-8
Maxdos(dos启动维护盘)
http://pzz.cn/bbs/read.php?tid=59563
WinPE最小硬盘版(最小内核的WinPE系统,17.6M)
http://www.brsbox.com/filebox/down/fc/0621aa281c17ec5f7b255b84a09311e8
CDlinux(世界排名前100位的国产Linux发行版)
http://www.cdlinux.info/wiki/doku.php/zh/download/latest

制作步骤:
一、U盘分区(隐藏主分区、解决U盘盘符启动后为C盘问题)
由于多数主板在引导时,会将启动后的U盘盘符设定为C盘,这样如果用U盘安装WindowsXp系统,会将文件写入U盘,这是我们不希望的,在试用了网上的各种方案后,无效,在不使用量产工作的情况下,还有一个较为简单的方案,那就是使用Disk Genius将U盘分成2个分区,{dy}个分区为主分区,将启动信息和启动文件放置在其中,第二个分区为逻辑分区,放置自己平时用的文件,然后在启动信息和启动文件写入完毕后,将{dy}个主分区隐藏,这样在启动到DOS或者WinPE系统后,C盘会指定为计算机硬盘的一个分区,而不是U盘,这样就解决了C盘盘符问题。
1、分区时注意不要将自己的硬盘误操作!
2、过早和过小的U盘在分成2个分区后,仅能在计算机中看到{dy}个分区,这样使用这个方案就没有意义了
3、隐藏分区也可以使用Bootice进行
4、隐藏主分区在{zh1}一步做
二、使用Bootice写入MBR和PBR信息
将U盘的MBR信息写为 USB-HDD+(大于2G情况下),将U盘的PBR写为SYSLINUX引导程序(在U盘根目录下存在LDLINUX.SYS文件)
三、创建启动文件目录
在U盘根目录下新建boot文件夹,然后再新建syslinux文件夹,下载{zx1}的syslinux文件
将chain.c32,memdisk,menu.c32,reboot.c32,syslinux.exe,vesamenu.c32等文件复制到该目录
创建back.png和SYSLINUX.CFG文件,其中SYSLINUX.CFG为配置文件,接下来就是要编写这个文件以引导各个系统,back.png是640×480的png图片文件,作为启动画面
四、编写SYSLINUX.CFG配置
以下内容是启动时的部分设置,具体可以Google下
default vesamenu.c32
timeout 100
F1 readme.txt
F2 syslinux.cfg
MENU BACKGROUND back.png
MENU TITLE
MENU WIDTH 40
MENU MARGIN 0
MENU ROWS 30
MENU HELPMSGROW 26
MENU TIMEOUTROW 27
MENU TABMSGROW 28
MENU CMDLINEROW 28
MENU HSHIFT 0
MENU VSHIFT 0
menu color screen 37;40 #00000000 #00000000 none
menu color border 30;44 #00000000 #00000000 none
menu color title 1;36;44 #00000000 #00000000 none
五、引导Maxdos
1、首先获取maxdos的img文件
2、下载MAXdos并安装,安装完成后,在文件夹选项里打开"显示所有文件和文件夹"并取消"隐藏已知文件类型的扩展名"选项。在C:\maxdos 下把 maxs.sys 复制出来。把maxs.sys改名为maxs.gz,解压maxs.gz,得到 maxdos.exe,再把maxdos.exe 改名为maxdos.img 即可得到IMG镜像。
3、在U盘根目录新建dos文件夹将maxdos.img文件拷贝至该文件夹下
3、使用getdrvparam获取maxdos.img引导文件的c/h/s信息,得到c=80 h=4 s=36
4、编写maxdos引导配置文件,在SYSLINUX.CFG中写入
LABEL MaxDOS
MENU LABEL ^MaxDOS
kernel /boot/syslinux/memdisk c=80 h=4 s=36 floppy
append initrd=/dos/maxdos.img
即可
六、引导WinPE
syslinux 引导winpe的方式为syslinux -> ldntldr -> ntldr,所以首先到
http://download.gna.org/grubutil/
下载loadbin-0.1-bin-w32-2008-03-01.zip,解压缩后得到ldntldr.bin,将其改名为ldntldr(bin后缀在syslinux中有特殊含义),将其放置到根目录下
1、下载17.6M的最小的WinPE的iso文件
2、解压缩,[BOOT]可以删除,I386中2个文件,NTDETECT.COM复制到根目录,SETUPLDR.BIN改名为grldr复制到根目录,WINNT.SIF和WINPE.IM_复制到根目录(其余WinPE根据实际情况定制,ldntldr和grldr是一定要有的,其它的一般也是放在U盘根目录下)
3、编写WinPE引导配置文件,在SYSLINUX.CFG中写入
LABEL WinPE
MENU LABEL ^WinPE
kernel \ldntldr
append initrd=\grldr
即可
七、引导CDlinux
CDlinux为国人制作的{wy}一个在Linux发行排名中位于前100的发行版,选择它的主要原因在于中文的支持较好(puppy也可以,但在我这里老是出问题)
1、下载CDlinux标准版ISO文件
2、解压缩,boot.cat,mkisofs.sh和[BOOT]可以删除,然后将CDlinux文件夹复制到U盘根目录(CDlinux默认查找模块的方式是根目录下CDlinux目录下extra目录。曾经因为该原因,启动CDlinux一直无法进入X界面。注意这里目录大小写问题,如果直接复制的话,没有该问题。)
3、编写CDlinux引导配置文件,在SYSLINUX.CFG中写入
LABEL CDlinux
MENU LABEL ^CDlinux
kernel /CDlinux/bzImage quiet CDL_AMOUNT=no CDL_DEV=/dev/sdb1 CDL_DIR=/CDlinux CDL_GUI=yes CDL_LANG=zh_CN.UTF-8
append initrd=/CDlinux/initrd
即可
(具体内核命令行参数可以参考http://www.cdlinux.info/wiki/doku.php/zh/doc/faq/cdl_options)
八、{zh1}添加从硬盘启动和重新启动等配置,在SYSLINUX.CFG中写入
LABEL Boot from hd0
MENU LABEL Boot from hd^0
KERNEL /boot/syslinux/chain.c32
APPEND hd0
LABEL Boot from hd1
MENU LABEL Boot from hd^1
KERNEL /boot/syslinux/chain.c32
APPEND hd1
LABEL Reboot
MENU LABEL ^Reboot
kernel /boot/syslinux/reboot.c32
即可
九、隐藏主分区
隐藏自己的主分区,保证启动后不占用C盘盘符,并且防止启动文件被别人误删除
十、搞定

虽然syslinux启动后加载img或pe速度比较慢,但由于U盘启动最重要的是兼容性和成功率
而网上传说U+和syslinux配合成功率{zg},所以我选择了它-_-|



郑重声明:资讯 【采用U+写入和syslinux引导方式制造高兼容性U盘maxdos+winpe+cdlinux ...】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——