系统维护U盘;winpe,linux,dos

时间:2024-03-01 13:10:27

动手制作Dos、WinPE、Slax Linux|winpe+dos+Mini Linux U盘启动盘
2009年12月13日 评论 发表评论 动手制作Dos、WinPE、Slax Linux|winpe+dos+Mini Linux U盘启动盘

一、概述

U盘的价格越来越便宜,容量也越来越大,携带也方便,在工作中可以把一些自己常用的工具整和到里面,在电脑维护方面使用比较方便。

二、系统的选择

1、dos系统

目前在dos工具盘比较多,常见有MS-DOS 7.1,深山红叶DOS工具盘、MaxDos、矮人dos工具盘、超普DOS工具盘等,在制作中可以根据自己喜欢,选择相应的dos系统工具盘,我选择的MaxDos 7.1,里面有许多有用的工具,比如ghost 、pq、windows密码破解等。


2、WinPE系统

网上提供WinPE系统基本都是修改至老毛桃的WinPE,主要有老九WinPE 老毛桃修改之撒手不管版、深山红叶WINPE工具箱、、金手指快速装机U盘版、通用PE工具箱、完美者U盘WinPE维护系统、晨枫U盘维护等,为了使集成时修改最少,这里选择晨枫U盘维护版。

3、Windows 故障恢复控制台

Windows 故障恢复控制台的功能是帮助基于 Windows 的计算机在未正确启动或根本无法启动时进行恢复操作。这里选择网上的光盘上运行的基于Ramdisk的恢复控制台。

4、Linux

U盘上的Linux比较多,比如Damn Small Linux、Slax Linux、puppy linux、Ubuntu等选择体积比较小的,功能比较完备的,这里选择Slax。

5、口袋操作系统

主要有ceedo、mojopac和PortableApps Suite,根据自己的爱好去选择,我从使用习惯和功能上在这里选了ceedo。

三、u盘启动引导程序的选择

任何一个操作系统在任何一个硬件平台上运行都需要一个引导的过程,起着初始化软件环境、把内核从存储介质放到内存当中去,并开始运行的作用。引导程序上承 BIOS,下接内核的初始化代码,虽然开一次机只运行一次后就不留痕迹了,但相当的重要。

可对u 盘引导的引导程序主要有IO、NTLDR、syslinux、Grub等,她们各有特点,从兼容性考虑,我选择了syslinux。syslinux是专门用来引导可移动介质的轻量级引导程序,支持initrd功能,initrd = init ramdisk,就是在启动时使用的一个内存虚拟磁盘,提高了对广泛的硬件支持性。

四、软件清单与说明

1、syslinux-3.73

Syslinux系统文件,可以到下面地址下载:

http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-3.73.zip

相关安装教程:

http://syslinux.zytor.com/wiki/index.php/SYSLINUX

2、HP优盘格式化工具

HP优盘格式化工具是用来对u盘进行格式化的工具,也可以直接进行做io的启动u盘。可以到下面地址下载:

http://www.xdowns.com/soft/6/7/2007/Soft_35477.html

3、GDParam

GDParam这个工具可以方便得获取 PC 虚拟启动当中所需要的磁盘镜像文件的c/h/s 参数。在用syslinux启动dos的磁盘镜像时需要指定c/h/s 参数。可以到下面地址下载:

http://www.05sun.com/downinfo/5089.html

4、WinImage

用来创建和修改磁盘镜像的软件,你可以自己创建或者修改dos的磁盘镜像。可以到下面地址下载:

http://www.crsky.com/soft/281.html

5、UltraISO

UltraISO软碟通是一款光盘映像ISO文件编辑制作工具,它可以图形化地从光盘、硬盘制作和编辑ISO文件。可以对下载得到的winpe或者slax光盘映像进行修改。可以到下面地址下载:

http://www.crsky.com/soft/1134.html

6、WinHex

Winhex是在Windows下运行的十六进制编辑软件,在对winpe进行安装文件修改等方面需要的工具。可以到下面地址下载:

http://www.orsoon.com/Soft/4921.html

7、XCAB

XCAB能调用系统的makecab.exe文件,把文件加或目录压缩为CAB,特别支持为 XCMD DEVI 生成 CAB,在对winpe进行修改打包时用到。可以到下面地址下载:

http://bbs.wuyou.net/attachment.php?aid=14397

8、WimTool

WimTool可以对Wim格式文件进行进行操作处理,在修改winpe的外置程序包时必须用的。可以到下面地址下载:

http://www.newasp.net/soft/app/26726.html

9、MaxDOS 7.1 集成 GHOST 11.5 PQ、DM、光盘启动版

电信下载 http://pzz.cn/soft/MaxDOS_71plus_iso.rar

网通下载 http://c.pzz.cn/soft/MaxDOS_71plus_iso.rar

10、Windows 故障恢复控制台

http://www.xdowns.com/soft/6/boot/2006/soft_32527.html

11、晨枫U盘维护V2.0_512M版

http://www.rayfile.com/zh-cn/files/5731196e-e314-11dd-85f0-0019d11a795f/

12、slax 6.0.9

ftp://ftp.slax.org/SLAX-6.x/slax-6.0.9.iso

13、Loadbin

http://download.gna.org/grubutil/makerom-0.1-bin-w32-2008-01-01.zip

14、ceedo

http://www.myfiles.com.cn/soft/5/5224.htm

五、安装 SYSLINUX

1、把u盘格式化,采用fat32格式。你可以用windows或者HP优盘格式化工具进行。

2、在u盘的根创建boot文件夹,在boot下创建syslinux子文件夹

3、把下载得到的syslinux-3.73.zip解压缩到syslinux-3.73文件夹,在其中的win32下有syslinux.exe文件。拷贝syslinux.exe到你u盘的/boot/syslinux文件夹下

4、打开命令行,切换到u盘根目录,进入/boot/syslinux文件夹,执行syslinux.exe,假设你的u盘的盘符为j:

在命令行下依次运行下列命令:

C:\Documents and Settings\xxxxx> J:

J:\>Cd boot/syslinux

J:\boot\syslinux> syslinux.exe -ma -d /boot/syslinux j:

其中 -d /boot/syslinux是把命令生成的启动系统文件ldlinux.sys放到/boot/syslinux目录,可以从该目录寻找syslinux.cfg配置文件。

六、配置启动菜单

拷贝syslinux系统文件

启动菜单的配置都在syslinux.cfg文件中。需要几个syslinux文件:

memdisk 引导IMG镜像的文件

vesamenu.c32 二种窗口模块之一

menu.c32 二种窗口模块之一

chain.c32 指定分区启动 如:chain.c32 hd0,1 (或chain.c32 hd1,1)

reboot.c32 重新启动计算机

在解压缩的syslinux-3.73文件夹中搜索以上就几个文件依次拷贝到u盘的/boot/syslinux文件夹下。

七、dos系统的配置

1、在u盘的根建立dos文件夹

2、制作dos映像文件

(1)从网上下载得到的MaxDOS_71plus_iso.rar解压缩得到maxdos_71plus_iso.iso文件

(2)用UltraISO打开maxdos_71plus_iso.iso提取出光盘映像maxdos文件夹下的maxs.sys文件。

(3)把maxs.sys改名为maxs.gz,用winrar打开把其中的maxdos.exe解出。

(4)然后把maxdos.exe 改名为maxdos.img

(5)你自己可用WinImage进行对maxdos.img文件进行简单的修改,加入你自己的doas应用程序。

(6)把修改后的MaxDOS.img复制到u盘的dos文件夹下。

3、取得img文件的CHS参数

syslinux支持gzip或zip压缩格式的磁盘映像,但memdisk自身不能压缩,memdisk支持标准floppy镜像直接启动,非标准(容量大于2880K的)要附加CHS参数。我们可以用GDParam取得img文件的CHS参数。记下c/h/s=555/2/18

4、修改SYSLINUX.CFG

打开u盘/boot/syslinux下的SYSLINUX.CFG文件,在里面添加形如下的内容:

LABEL MaxDOS

MENU LABEL Max DOS V7.1

kernel /boot/syslinux/memdisk c=555 h=2 s=18 floppy

append initrd=/dos/MaxDOS.img

八、slax系统的配置

1、把下载得到的slax-6.0.9.iso用UltraISO打开,完全提取出来放在slax-6.0.9文件夹下。

2、把其中的slax文件夹包含子文件复制到u盘的根目录。

3、把slax-6.0.9/boot文件夹下的linuz、initrd.gz两文件拷贝到u盘的boot文件下。

4、打开slax-6.0.9/boot文件夹中的slax.cfg文件,复制其中的:

LABEL xconf

MENU LABEL Slax Graphics mode (KDE)

kernel /boot/vmlinuz

append initrd=/boot/initrdch.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf;telinit~4 changes=/slax/ locale=CHS.UTF-8

5、把复制的上面内容贴人u盘/boot/syslinux下的SYSLINUX.CFG文件

九、winpe的配置

1、解压缩下载得到的晨枫U盘维护V2.0_512M版.rar到任意一文件夹。

2、在u盘根新建winpe文件夹。

3、修改winpe OEM信息

解压缩得到的MyFeng/Boot下的WinPE.is_改为WinPE.cab,用winrar打开解压出WinPE.iso,用UltraISO打开,提取出\WXPE\SYSTEM32下的oeminfo.ini和OEMLOGO.bmp进行修改,导入替换掉就可以了,保持iso文件,把新得到的iso文件用xcab软件重新进行打包,得到WinPE.cab,再把WinPE.cab改为WinPE.is_ 。

4、修改winpe外置程序包

解压缩解压缩得到的MyFeng/Boot下的OP.WIM用WimTool解开,然后你可以替换桌面背景图片,加入或者删除一些程序,然后再用WimTool打包成OP.WIM

5、把处理完的OP.WIM、WinPE.is_文件拷贝到u盘的winpe文件夹。

6、打开MyFeng/Boot下的winpe.ini修改其中的关于OP.WIM位置的代码,你也可以修改其他的链接。修改如下。

MOUN %CurDrv%\winpe\OP.WIM,Y:\外置程序,1

保存,然后拷贝到u盘的boot文件夹下。

7、拷贝MyFeng/Boot下的ldrxpe、fon.bin、ntd.com到u盘的boot文件夹下。

8、用记事本修改MyFeng/Boot下的xpsi文件中的WinPE.IS_路径为:

OsLoadOptions="/minint /fastdetect /rdexportascd /rdpath=winpe\WinPE.IS_"

保持,然后拷贝到u盘的boot文件夹下。

9、解压缩下载得到的loadbin-0.1-bin-w32-2008-03-01.zip,把其中的ldntldr.bin改名为ldntldr,然后拷贝到u盘的boot文件夹下。

10、打开u 盘boot/syslinux下的SYSLINUX.CFG文件,在其中加入下面内容:

LABEL WinPE

MENU LABEL Lite Win PE

kernel /boot/ldntldr

append initrd=/boot/ldrxpe

十、Windows 故障恢复控制台

1、在u盘根建立comcns文件夹

2、解压缩下载得到的base_ramdisk.rar文件到base_ramdisk文件夹

3、用UltraISO打开base_ramdisk下的光盘上运行的基于Ramdisk的恢复控制台.iso文件,把其根目录下的CMDCONS.IS_、WINNT.SIF,提取出来,再把其i386下的SETUPLDR.BIN也提取出来。

4、拷贝CMDCONS.IS_到u盘的comcns文件夹

5、用记事本打开WINNT.SIF文件,把其中修改为:

[SetupData]

BootDevice = "ramdisk(0)"

BootPath = "\i386\"

OsLoadOptions = "/noguiboot /fastdetect /rdexportascd /rdpath=comcns\cmdcons.is_"

然后保存。

6、把修改后的WINNT.SIF文件改名为cnsi,并复制到u 盘boot/下。

7、用WinHex打开SETUPLDR.BIN

(1)查找替换,把NTDETECT.COM替换为boot\ntd.com,共4处,替换前2处就可。

(2)查找替换,WINNT.SIF替换为boot\cnsi。全部替换,共9处。

(3)保存SETUPLDR.BIN文件。

8、把SETUPLDR.BIN改名为ldrcmdcon,并复制到u 盘boot/下。

9、打开u 盘boot/syslinux下的SYSLINUX.CFG文件,在其中加入下面内容:

LABEL Cmdcons

MENU LABEL Cmd cons

kernel /boot/ldntldr

append initrd=/boot/ldrcmdcon

十一、安装Ceedo

把下载得到的Ceedo安装到你的u盘,然后进行配置。

十二、U盘的目录结构和启动配置文件

1、根目录

|—boot—-|–syslinux–| sysinux.cfg

|—dos

|—slax

|—comcns

|—winpe

|—Ceedo

|—My Documents

2、SYSLINUX.CFG文件内容:

prompt 1

timeout 100

default vesamenu.c32

MENU BACKGROUND back.png

F1 readme.txt

F2 syslinux.cfg

MENU WIDTH 36

MENU MARGIN 0

MENU ROWS 8

MENU HELPMSGROW 14

MENU TIMEOUTROW 22

MENU TABMSGROW 24

MENU CMDLINEROW 24

MENU HSHIFT 40

MENU VSHIFT 2

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

menu color unsel 37;44 #ff60CA00 #00000000 none

menu color hotkey 1;37;44 #ff60CA00 #00000000 none

menu color sel 7;37;40 #ffffffff #ff60CA00 none

menu color hotsel 1;7;37;40 #ff808080 #ff60CA00 none

menu color scrollbar 30;44 #00000000 #00000000 none

menu color tabmsg 31;40 #aaaaaaaa #00000000 none

menu color cmdmark 1;36;40 #ffff0000 #00000000 none

menu color cmdline 37;40 #aaaaaaaa #00000000 none

menu color pwdborder 30;47 #ffff0000 #00000000 std

menu color pwdheader 31;47 #ffff0000 #00000000 std

menu color pwdentry 30;47 #ffff0000 #00000000 std

menu color timeout_msg 37;40 #aaaaaaaa #00000000 none

menu color timeout 1;37;40 #ffaaaaff #00000000 none

menu color help 37;40 #aaaaaa00 #00000000 none

menu color msg07 37;40 #90ffffff #00000000 std

MENU TITLE Jinjun’s Tools Disk

LABEL MaxDOS

MENU LABEL Max DOS V7.1

kernel /boot/syslinux/memdisk c=555 h=2 s=18 floppy

append initrd=/dos/MaxDOS.img

TEXT HELP

More about currently selected:

Run Max DOS V7.1

ENDTEXT

LABEL WinPE

MENU LABEL Lite Win PE

kernel /boot/ldntldr

append initrd=/boot/ldrxpe

TEXT HELP

More about currently selected:

Run Lite Win PE.

ENDTEXT

LABEL xconf

MENU LABEL Slax Graphics mode (KDE)

kernel /boot/vmlinuz

append initrd=/boot/initrdch.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf;telinit~4 changes=/slax/ locale=CHS.UTF-8

TEXT HELP

More about currently selected:

Run Slax the best way we can.

ENDTEXT

LABEL Cmdcons

MENU LABEL Cmd cons

kernel /boot/ldntldr

append initrd=/boot/ldrcmdcon

TEXT HELP

More about currently selected:

Boot System of cmdcon.

ENDTEXT

LABEL boothd

MENU LABEL Boot System of HD1

kernel /boot/syslinux/chain.c32

append hd1

TEXT HELP

More about currently selected:

Boot System of HD1.

ENDTEXT

LABEL boothd

MENU LABEL Boot System of HD2

kernel /boot/syslinux/chain.c32

append hd2

TEXT HELP

More about currently selected:

Boot System of HD2.

ENDTEXT

LABEL reboot

MENU LABEL Reboot

kernel /boot/syslinux/reboot.c32

TEXT HELP

More about currently selected:

reboot.

ENDTEXT

十三、使用

在使用中你可以把启动顺序设置u-hdd方式优先。
=====================================
由于一个64M老U盘,没什么用,拿来发挥余热。如果U盘够大,可以使用功能更强大的mini linux和带更多工具的winpe。这次安装了winpe+maxdosv6plux+矮人dos5.3+cdlinux0.4.9+mclinux2.02+bomberlinux3.7,工具应该算比较多了。
思路很多:
法1:可以先做成dos启动盘,这样直接加载各类dos工具,然后再用grub4dos加载winpe。
法2:可以做成ntloader,启动winpe,再在boot.ini中写入加载dos工具的语句。
法3:用grub引导各类工具,包括winpe和各类工具箱。
由于觉得grub引导功能强大(各大linux发行版都用它做引导器),因此决定用第三种方法。
首先准备工具:
1、惠普优盘格式化工具HPUSBFW.EXE,或者usboot或者其它格式化U盘的工具。
2、winpe,我用的是64M的U盘,故使用了mini winpe,使用的是老毛桃修改的miniwinpe 070911版: thunder://QUFodHRwOi8vd3d3LnF1aWNrOC5jbi9kb3duLmFzcD9pZD0xNTMmc2lkPTBaWg==
如果你使用的U盘比较大,可以下载其它的集成了较多工具的winpe。对老毛桃修改的版本,对我们来说仍然过大,因此需要自己再定制,把Acdsee等软件删除。在winpe安装文件\SETUP\MYINS下有个ntboot.exe,把它备份起来,今后可能用到。
3、grub安装工具:grubinstall: http://download.gna.org/grubutil/grubinst-1.1-bin-w32-2008-01-01.zip
以及grub引导文件grldr,网上很多,自己搜索下载(它是grub4dos的一部分,可以下载grub4dos,然后只要该文件即可)
4、MaxDos v6 plus: http://down.56xia.com/200711/MAXDOSV6U.rar
5、矮人dos工具箱5.1: http://w1.e666.cn/green/airenDOS.rar
6、wmitool: http://rosibo1.bibidu.com/server9/hnwzfile/WimTool-V1.0.7.1018.rar
7、你还可以下载其它工具箱,比如深山红叶等。由于空间所限,我只使用了上面的几个软件。
然后开始:
part1:winpe+dostool
1、使用惠普格式化工具格式化U盘
2、打开miniepe.iso,如果你的U盘比较大,可以直接将minipe目录拷贝到你的U盘上,如果象我的一样小,那么先删除op.wim,然后再拷过去,op.wim里面全是工具,没有它,minipe也能启动,后面我们再讲如何修改op.wim,缩小其体积,定制自己的工具。然后将wxpe下的ntdetect.com和setupldr.bin也拷到minipe目录,并分别改名为ntcom和ldrxpe。然后在minipe目录下新建一个名为pe的文件,内容如下(如果你采用安装方式,则这个文件已经存在):
[SetupData]
BootDevice="ramdisk(0)"
BootPath="\WXPE\SYSTEM32\"
OsLoadOptions="/minint /fastdetect /rdexportascd /rdpath=MiniPE\WinPE.IS_"
更简单的方法是:你可以直接用minipe的setup将其先安装到你的U盘(如果U盘太小,请先删除op.wim再安装),这样和手工拷过去的差不多,但是会多几个文件,你可以选择删除上面没有提到过的文件。
3、如果你是手工拷贝过去的,那么要先安装grub,使用grubinstall_gui,选中U盘,分区刷新后选整个磁盘,然后安装,这样就重新安装了grub,然后将你下载的grldr文件拷贝过去。如果你是采用在安装的方法,那么已经安装了grub,它的menu是内置到了grldr中的,为了让自己编辑的menu.lst来启动更多项目,将下载的grldr拷贝到u盘覆盖原来的,这样就会使用你自己的menu.lst了。如果mbr中的grub没有了,要重新安装grub。如果你依然想使用内置的菜单,可以用grubmenu export命令导出菜单,修改成自己想要的后,再grubmenu import,导入,这样就变成你自己的内置菜单了。另外为了支持中文菜单,请使用中文的grldr,以及中文字体。下载一个带字体和中文的grub4dos,将chinese目录下的grldr拷贝过去,建立一个boot目录,然后将字体文件fonts.gz拷到里面,再将splash.xm.gz也拷到里面,它是启动画面背景,你可以自己制作自己的启动画面。如果你是安装的minipe,那么可以直接用它的muifont.gz和*.xpm.gz。
4、安装maxdos和airendos,然后把目录maxdos和ados拷贝到U盘根目录下。然后就可以卸载maxdos和ados了。
然后将ados下的除argj目录外的所有文件删除,然后将argj目录下的文件移动到ados下,删除argj目录。将两个目录下一些不必要的文件删除。比如图标文件。由于是它们都是硬盘版,一键ghost时会出问题(网上所谓的U盘版也一样),需要对其进行修改。首先,经过HP格式化后,一般会把U盘认作第一硬盘,而原来的硬盘认作第二硬盘,这时ghost命令的src=1:1,就要改为2:1,然后,由于我们没有创建指定的文件夹,因此我们可以直接备份到根目录下。如maxdos中用maxbk.gz和maxre.gz来表示备份和恢复,用记事本打开这两个文件,分别改为:
ghost -clone,mode=pdump,src=2:1,dst=2:2\sysbak.max -sure -z2 -split=2000 -no1394 -nousb -rb

ghost -clone,mode=pload,src=2:2\sysbak.max:1,dst=2:1 -sure -no1394 -nousb -rb
而矮人dos需要把ar5.img中的argj.exe导出来,然后扩展名改为gz,然后,解压出其中的gh.bat、menu.bat等bat文件,然后查找含有argj~1路径的,把它改为根目录,如:c:\*.gho,另外查找镜像的命令的/s需要去掉,可以改成/a,/s要查找子目录,需要很长时间。同时把ghost命令的src=1:1等类似之处改为2:1。
如果你的U盘启动后不是第一硬盘,那么就不必改。
5、编写grub启动菜单
为了标识U盘,在U盘根目录建立一个grubhere.id的空文件,当然你也可以使用U盘上的任意文件来标识,如/maxdos/Maxs.sys,当然你需要在下面的相应内容处作修改。然后在U盘根目录建立一个menu.lst,内容如下:
timeout 30
default 0
splashimage /boot/splash.xpm.gz
#foreground ffff00
fontfile /boot/muifont.gz
title Mini WindowsPE
find –set-root /grubhere.id
chainloader /minipe/ldrxpe
title MaxDOS V6 Plus
find –set-root /grubhere.id
kernel /maxdos/Memdisk.gz c=555 h=2 s=18 floppy
initrd /maxdos/Maxs.sys c=555 h=2 s=18 floppy
title 矮人Dos工具箱
find –set-root /grubhere.id
kernel /ados/memdisk.gz c=118 h=2 s=36 floppy
initrd /ados/ar5.img c=555 h=2 s=18 floppy
title 本机Windows系统
map (hd0) (hd1)
map (hd1) (hd0)
rootnoverify (hd1,0)
makeactive
chainloader +1
title 重启计算机
reboot
title 关闭计算机
halt
title Grub命令行
commandline
保存这个文件。
6、定制winpe工具,上面实际上已经完成启动U盘了,但是我们还可以为minipe定制工具。用wmitool打开op.wim,然后将其文件导出,把不需要的软件全部删除,比如acdsee、音乐播放什么的,对于系统维护根本没什么用,就删掉,最后再新建一个wim文件,将修改后的目录导入。然后修改minipe下的winpe.ini文件,找到建立快捷方式的命令的地方,把没有的link给删掉。
6、如果还需要安装其它工具箱的话,步骤和上面类似。制作完毕。
如果希望mbr被破坏,能够使用ntloader启动,那么可以用ntboo i:(I是U盘),将ntloader也安装到U盘,但这不是必须的。
7、备份:为了今后的制作不再这样多,可以将U盘上所有文件拷贝到一个目录备份(注意有隐藏文件,一块备份)。今后要制作启动U盘就可以这样做了:
首先用惠普格式化工具格式化U盘,再将备份的文件拷贝过去,然后使用grubinstall,安装grub到mbr即OK。其中的ntboot不是必须的。
如果有时间,你可以把这些备份文件压缩,然后编写一个bat,让bat来依顺序执行格式化,拷贝文件,这样就形成了你自已的winpe+maxdos+airendos安装包。
part2:mini linux
如果你不需要linux,那么到此为止,如果你还希望启动linux,将U盘制作成启动盘,然后用Mini Linux引导,可以用以修复硬盘上的Linux系统错误。那么继续:
Mini linux很多,如:CDlinux、dsl、puppy等,还可以自己lfs。这里简单介绍最简单的制作方法。由于U盘大小限制(我的U盘64M,基本没用了,正好拿来做引导盘),我选择了CDlinux0.4.9(19M)、Mini Chinese Linux(mclinux2.02)(2.88M)、BomberLinux 3.9(2.88M),因为我的U盘上还装有mini winpe、maxdos、矮人dos,要做到他们加起来不超过64M(最后一共61M)。
由于已经装好的winpe等都是采用grub引导的,因此这三个mini linux当然也用grub来引导。如果你没有安装上面这些,只需要启动mini linux,那么你需要先制作可启动U盘,先用惠普格式化U盘工具格式化,然后用grubinstall将 grub安装到U盘的mbr,并复制grldr到U盘根目录。可参考前面的文章。
首先看CDlinux,由于它本身是采用syslinux来引导的,因此需要做一点调整。首先打开cdlinux的iso,将boot目录下的cdlinux提取出来,然后,将cdlinux.img的扩展名改成 gz,即cdlinux.gz,然后将其解压,由于我们采用grub引导,因此syslinux的文件都可以删掉,只保留bzImage和 CDlinux.gz,将其复制到cdlinux目录下,然后将cdlinux目录复制到U盘根目录。然后写menu.lst
title CDlinux 0.4.9 (with extra)
find –set-root /grubhere.id
kernel /CDlinux/bzImage root=/dev/ram0 cdl_dev=/dev/sda1
initrd /CDlinux/CDlinux.gz
grubhere.id 意义见上一篇文章。具体的更多参数可以参考cdlinux howtos中的命令行参数,这里/dev/sda1可能要根据具体情况来区别对待。我当初把它搞成hda1,结果不能加载extra,因为找不到,后来发现linux将其识别为sda1。中文:kernel /CDlinux/bzImage root=/dev/ram0 CDL_LANG=zh_CN.UTF8 cdl_dev=/dev/sda1
然后再看mclinux,我下载了 mclinux1.0和mclinux2.02,mclinux1.0是一个ima软盘镜像文件,因此直接用软盘引导的方式即可,而mclinux2没有做成软盘镜像,是一人zip文件,里面有很多把它rawrite到软盘的工具。还是做成ima方便,首先解压,然后只留mclinux.img、 zimage、syslinux.cfg三个文件,将它们做成ima,由于已经有mclinux1.0.ima,因此我直接用winimage打开 mclinux10.ima,然后删里面那三个文件,将这三个文件拉进去,然后保存就OK了。将保存后的mclinux.ima复制到U盘/linux/ 下,然后写menu.lst:
title Mini Chinese Linux 2.02
find –set-root /grubhere.id
map –mem /linux/mclinux.ima (fd0)
map –hook
chainloader (fd0)+1
rootnoverify (fd0)
对于bomber linux 3.7,本身就是一个ima文件,因此直接复制到linux目录下,然后写menu.lst
title BomberLinux 3.7
find –set-root /grubhere.id
map –mem /linux/bomberlinux.ima (fd0)
map –hook
chainloader (fd0)+1
rootnoverify (fd0)
这样就制作完成了,如果U盘够大,完全可以使用功能更强的cdlinux0.5.9(包含X和更多的软件)和dsl、puppy等。最后,我们就完成了在一个64M U盘上安装winpe+maxdosv6plux+矮人dos5.3+cdlinux0.4.9+mclinux2.02+bomberlinux3.7 这样一个mini 型的功能非常齐全的启动型U盘。其实maxdos和矮人dos只需要一个,linux也只需要一个即可(建议用cdlinux,如果希望小一点的,可以用后面两个中的一个),这样可以节省空间,方便集成更多的工具。
最后我把这些做成了一个傻瓜化的安装包。只需点几下就可以完成整个过程。

 

 

 

http://maojianjun487.blog.163.com/blog/static/191282782010112114622980/

0目的:实现制作windows xp PE和Linux双系统引导的U盘。原因是这样的。有时分区表坏了,无法进入PE,DOS,这时,就可以启动Linux了,肯定可以进入。^_^
记得上次是这样的,一个同学分区表坏了。叫我帮忙看下,我想,这种不会是设置错误吧,于是就p颠p颠的过去了,结果弄了很久还是不行啊。。。无法实现启动。。。后来灵机一动,能进Linux么?就弄了个Ubuntu i386光盘,果然。进去了。之后发现分区表坏了之后,她的硬盘有很多分区,至少50个。。应该是分区太多了,没地方给pe的虚拟磁盘的分区分配磁盘驱动器序号了,就是那个C盘,D盘,E盘的那个什么序号~~于是,Linux就确实很强大了~应该就是一个小小优势哦~Linux启动时是不会自动挂载硬盘的,而是系统启动后再实现人工挂载的。当然,喜欢的话,也可以在/etc/fstab这个文件里面设置,实现自动挂载~^_^
那么为何选择puppy和slitaz这两个发行呢?主要是看其体积啦,还有就是是否够精简,是否能支持U盘引导~puppy的话,整个ISO只有100MB左右~slitaz就更小了。只有30MB~而更绝的是,这两个发行都是麻雀虽小,但五脏强悍。puppy的话,名气是很大的,用过的都知道,强大啊!!!什么软件都有~是澳大利亚的一个退休教授为主导的团队开发的很优秀的发行~而slitaz的话,是法国人开发的发行~~在国内知道的人可能不多~最重要的是,两者都有图形界面制作PE+Linux的U盘启动盘 - benbrick - 土土。。。这对一般用户来说,无疑可大大降低工作难度~至于选过来当修复磁盘的 系统,有了gparted就无敌啦。制作PE+Linux的U盘启动盘 - benbrick - 土土
其实,也可以制作一个随身的Linux的~(虽然这两个发行自己带有安装到U盘的工具,不过没我这里的方便~都在windows下面简单操作~)
 

1.准备工作:一只U盘~一只电脑~几只软件~~


2.可能会用到的几只软件
通用pe工具箱;官网:hi.baidu.com/uepon(百度或者狗狗搜吧~^_^我用的是1.9.1的版本,不过应该差不多~)
puppy Linux的ISO镜像;官网:puppylinux.org  中文版:http://puppy.cnbits.com/
slitaz Linux的ISO镜像;官网: www.slitaz.org
 
maxdos 光盘版镜像 官网:http://www.pzz.cn/bbs/index.php
MaxDOS 7.1 集成 GHOST 11.5 PQ、DM、光盘启动版 
电信下载   http://pzz.cn/soft/MaxDOS_71plus_iso.rar
网通下载   http://c.pzz.cn/soft/MaxDOS_71plus_iso.rar
 
Grub4DOS;grubinst.exe  官网: http://grub4dos.sourceforge.net/
grubinst_gui.exe http://img.lingd.net/att.php?id=099855649(其中包括grldr,grubinst.exe,grubinst_gui.exe,menu.lst文件~~)
 
 
--------------------------------------------------------------------------------------------------------------------------------
该段内容为最近更新~~
 
linux下恢复分区软件:testdisk 有windows版本的~
加上一个linux发行版  parted magic linux  (比较专业的系统修复的发新版,带gparted和testdisk)
 
把PMAGIC文件夹复制到U盘。并且将PMAGIC\PMODULES\PMAGIC_4_8.SQFS重命名为小写的
pmagic-4.8.sqfs
 
parted magic在 menu.lst中的命令:(如无法启动,这个可以参照光盘中的menu.lst设置)
title Parted Magic
kernel /pmagic/bzImage edd=off noapic load_ramdisk=1 prompt_ramdisk=0 rw loglevel=0 vga=791 livemedia noeject max_loop=256 keymap=us
initrd /pmagic/initramfs
 
--------------------------------------------------------------------------------------------------------------------------------
 
3.现在就开始吧~
先说一下windows xp和Linux的启动过程。一般计算机都是通过存储介质的主引导记录(即MBR)来实现引导的(mac机好像不是的)。而grub4dos正是通过向mbr中写入数据实现在启动时计算机会寻找grldr这个文件,然后grldr再根据menu.lst中的指令列出启动菜单。而xp是通过NTLDR这个引导文件进行引导,进入windows的,(后面的windows 7和windows Vista是通过bootmgr这个引导文件实现引导进入windows的)。而Linux则是通过两个文件进入系统的,一个是可引导的、压缩的kernel(即内核):vmlinuz这个文件。一个是实现载入驱动什么的:initrd.gz文件。在每个发行版中这两个文件都是不一样的吧。具体可查相关信息,不过还可以直接到boot目录下面看几个文件。
特别说一下,grub4dos:从网上下载的grub4dos只能通过bootlace.com这个文件以命令行的方式将数据写入到MBR里面去。还可以下载grubinst.exe和grubinst_gui.exe这两个文件实现图形界面操作
(温馨提示:grubinst_gui.exe只是gurbinst.exe的一个图形界面,而grubinst.exe也是个命令行工具)
 
4.制作过程
(1)找一个U盘,插入USB接口,之后运行grubinst_gui.exe。在“磁盘”那里,选择存储容量为自己U盘的那个盘,千万别选到硬盘去了,那样就把grub装到硬盘去了~~就无法启动了~(不过看了后面的话,发现,其实也没关系~~也一样可以引导windows~~^_^)然后在“选项”勾选“不保留原来的MBR”,“启动时不搜索软盘”。之后安装即可~
之后将grub4dos中的grldr文件复制到U盘根目录~
温馨提示:不必格式化,还有,无论什么文件系统都可以,FAT,FAT32,NTFS~都可以^_^
选择grub引导的原因是,grub确实很强大,可以引导Linux,windows,光盘,等等~
 
(2) 这里选择体积较小的Linux发行:slitaz~(只有英文版~不过会一点英语的看得懂哈^_^)
用UltraISO将slitaz发行的镜像slitaz-2.0.iso加载到虚拟磁盘~然后在优盘的根目录建立一个文件夹boot,然后将虚拟磁盘里面的boot文件夹下面的bzimage和rootfs.gz文件复制到U盘根目录下的boot文件夹内~
 
(3)为何选择通用pe工具箱?这个是因为这pe体积很小。也是30M,而且也自带diskgenius 3.0 和PM。一般的 工作都可以满足了~~
运行TonPE_V1.9.1.exe --> "下一步" --> 安装模式选择"安装到U盘" --> 选择 "模式二(grub)"并且选择正确U盘盘符 --> 安装过程中出现 “格式化U盘” 的时候,直接关闭就可,无需理他。--> 出现“安装grub” 一样直接关闭。这样,就会把文件都考进U盘啦~(温馨提示:展开的文件有:U盘根目录有peldr文件,petools和wxpe文件夹,其中,peldr可以删除~不过这些文件的属性都是系统+隐藏,所以要在文件夹选项中选择 “显示所有文件” 和去掉 “隐藏受保护的系统隐藏文件” 的勾才可以看得见)
 
安装maxdos到U盘:
有时候,dos还是有点用的,但是纯dos纯属鸡肋,现在基本是NTFS文件系统,纯dos是无法进入NTFS分区的~所以选择了maxdos。maxdos集成了大量的dos工具~确实很强大~选择光盘版,是因为文件结构简单~先下载maxdos plus 7.1光盘版。然后用winrar解压,然后用UltraISO将其加载到一虚拟磁盘,然后在该虚拟磁盘中将文件MXLDR复制到U盘的boot文件夹下。将MAXDOS文件夹复制到U盘根目录下。(温馨提示:MAXDOS文件夹,为隐藏属性,需要显示隐藏文件夹才能看见。)
 
(4)在U盘根目录新建一个文本文档,(即记事本文件)文件名为menu.lst
其内容为:
 
timeout 10
color light-blue/black light-cyan/blue
 
title  SliTaz GNU/Linux
kernel /boot/bzImage root=/dev/null vga=771
initrd /boot/rootfs.gz
 
# Boot  my xpe
title  XPE
find --set-root /WXPE/LDRXPE
chainloader /WXPE/LDRXPE
 
title MAXDOS
find --set-root /boot/mxldr
chainloader /boot/mxldr
 
温馨提示:grub的menu.lst中的文件名不区分大小写的,而Linux中是区分大小写的
(5)大功告成啦~~
解释一下上面的menu.lst吧~~
timeout就是启动菜单的可选时间,自己改
color就颜色社么的~(这里是参考arch的~~^_^)
title 就是启动菜单上显示的
下面的 #  是注释的符号~后面跟着的内容将不会被grub所用,只是我们自己看看的 ~
而引导Linux的,都是两个指令:kernel 和 initrd ~~这两个
引导windows的,也就是那个样式~通过ldrxpe引导pe~
 
(6)注意,U盘启动中总是要用寻内存这个的,所以内存不能太小,特别是puppy,启动过程是会Linux的主文件复制到内存的~
下附puppy的:(替代slitaz的步骤)
把puppy的ISO中的
VMLINUZ   INITRD.GZ       PUP_431.SFS
复制到U盘根目录~注意一定要将PUP_431.SFS重命名为pup-431.sfs,不管怎样啊,最后的文件名都是pup-431.sfs。(当然,后面的几位数字的话,是看puppy的版本~如果喜欢的话,是可以下载中文版本的,叫小芭比~)不然会出现找不到文件的 错误,就白忙了~
可在menu.lst之中添加一段指令:
title  Puppy Linux - 431
kernel /boot/vmlinuz
initrd /boot/initrd.gz
即可~
好了,大功告成了~
进入Linux之后。注意,gparted是只能对未挂载的分区进行操作,所以,先要卸载分区才能进行格式化什么~~
^_^

附加用grub引导windows XP、windows 7、windows Vista、一般Linux的menu.lst。有趣的是,这个grub不一定要安装到电脑硬盘当中,也可以安装到U盘当中,一样可以引导硬盘当中的系统~^_^
引导windows xp:
在menu.lst中添加一段:
title windows XP
find --set-root /NTLDR
chainloader /NTLDR
 
引导windows 7:
在menu.lst中添加如下段代码:
title windows 7
find --set-root /bootmgr
chainloader /bootmgr
 
引导windows Vista:
在menu.lst中添加如下段代码:
title windows Vista
find --set-root /bootmgr
chainloader /bootmgr
 
引导Linux的话,每个发行版的都不一样~因为那两个文件的文件名不一样~建议备份一个/menu.lst。如果是grub2的话,备份grub.cfg。这两个文件,在/boot文件夹中~
title Linux
kernel /kernel.img
initrd /initrd.gz
(上面这个只是一个模式,实际是不能用的,需要结合具体发行的)
更多的内容可参阅grub4dos的官网.wiki和自带的那个menu.lst等等。

说到修复,这里附上修复系统引导的几个方法。(通过向MBR里面写入信息实现引导)
1.直接装上grub4dos,用grub引导你计算机上的系统~根据上面的信息,再看点其他资料,应该没问题了~^_^
 
2.恢复原先系统的引导。
  (1)windows XP :由于种种原因,修复xp引导的工具很多很多~
a).PM、diskgenius等磁盘工具。一般通过“更新硬盘MBR”这个命令,就可以实现引导XP
b).dos工具fdisk。运行fdisk /mbr(这个工具,XP的恢复控制台中也有,或者,自己下载)
c).mbrfix.exe:很小很精致的软件,命令行模式的。(在命令行中键入不带命令参数的mbrfix,即可跳出一个html的帮助文件,内容相当详细,不过是英文的的,可以修复windows 2000、xp、2003)
 (2)恢复windows 7、windows Vista引导
用easyBCD。是图形界面的 ,一看就会的软件,不说了。windows自带的那个bcdedit是命令行的。
 (3)恢复Linux的引导。每个发行版不一样。会搞Linux的,肯定熟悉grub,是我 的话,就选择自己安装一个grub了。用liveCD也不方便~^_^

 

 

 

http://www.03964.com/read/38b763ed2d17eb89c7941650.html

目的:用一张 U 盘集成所有系统维护软件,DOS、WinPE、BT3 和 Slax Linux 好处:方便,太方便了,省得带好几张光盘、移动硬盘等 缺点:兼容性不如光盘,不同主机可能会出现各种启动问题 花费:一个 U 盘,用的是 Kingston 的 DataTraveler G2,8G 的,100 元左右,还有大概一个周末的时间用于 Google 和反复实验。 总结:关于 U 盘启动网上资料很多,实现方法也差别很大,如果只启 动 PE 或 BT3 等 Linux 系统还是很简单的,我想做一个能启动多个系 统的,所以实现有点麻烦。失败次数和改的地方都比较多。

下面是制作过程及相关资料,在这做个总结,方便以后查看。 :)

参考原贴地址:http://www.wlanbbs.com/thread-1589-1-1.html 感谢 fhyb, 我用的相关软件都是从此贴下载的。

1.格式化

使用把 HPUSBFW.exe 把 U 盘格式化成 USB-HDD 模式。

2、安装 Grub4DOS 下载引导制作工具 grub+和基本配置文件(原贴中是 U.rar)到硬盘, 解压后运行 grub+目录下的 GRUBINST_GUI.EXE 程序,并按下图进行 勾选。注意磁盘处根据容量一定选中你的 U 盘;恢复下面通过浏览选 中 grub+目录下的 gru+文件,且一定勾选下面的从文件中恢复。

3、制作引导目录:把解压后的 U 目录下的文件 grldr 和目录 Grub 拷 入 U 盘的根目录。注意 Grub 目录一定要整个拷入 U 盘,因为目录里 有几个隐藏文件。

4、下载 BT3 U 盘版 (back track 3),我用的是 bt3b141207,把

下载的 BT3 解压后生成的两个文件夹 boot 和 BT3 拷入 U 盘根目录, 并改 boot 为 bt3boot。 5、 下载 SlaxLinuxV6.09Final U 盘版, 解压后生成的两个文件夹 boot 和 slax 拷入 U 盘根目录,并改 boot 为 ww1boot( 注:原来是用于引 导 wifiway 的,由于我已经有了 BT3,所以改用了 slax,因为没有修 改引导文件,所以只能把 slax linux 的相关文件改名以适合其原有 引导文件 :-( 本方案不爽的地儿就在哪, 修改不方便 ),并 将 ww1boot 目录中 DOS 目录下的 slax.bat 复制一份,并改名为 wifiway.bat。 6. 下载 PE,我用的是 PowerMiniPEV30.iso,( 同事给我的,感觉 还行,不知道还有没有更好用的。不同版的 PE 文件夹名会有区别, 需要做相关修改。) 把里面的所有文件及文件夹拷贝到 U 盘根目录, 并把 WXPE 目录里的 NTDETECT.COM 拷贝到根目录一份, 不然有可能出 现 CAN NOT FOUND NTDETECK.COM 一类的错误。

我 U 盘的文件夹截图:

7、修改配置文件 /Grub/X 下面是原贴中对配置文件/Grub/X 的说明,你可以用 wordpad 或记事 本等文本编辑软件来编辑它。

foreground ffffff fontfile /grub/muifont.gz splashimage /grub/back.xpm.gz default 0 timeout 5 <默认等待时间>

<文字颜色配置> <加载中文字库> <加载背景文件> <默认启动的菜单项>

------------------------------------------------------------------------------title 启动 PE 维护系统 find --set-root /grub/000.000 认路径> chainloader /wxpe/setupldr.bin <引导 WinPE 系统> <启动项菜单名, 根据需要修改> <通过一个隐藏文件确

------------------------------------------------------------------------------title 启动 BT3 Final (WEP 研究学习) 根据需要修改> find --set-root /grub/000.000 认路径> map --mem /grub/bt3.img (fd0) bt3.img 文件进入 DOS 系统并自动启动 BT3> map --hook chainloader (fd0)+1 <照写,不要修改> <照写,不要修改> <通过 grub 目录下 <通过一个隐藏文件确 <启动项菜单名,

rootnoverify (fd0)

<照写,不要修改>

------------------------------------------------------------------------------title 启动 wifiway (WEP 研究学习) 据需要修改> find --set-root /grub/000.000 认路径> map --mem /grub/ww1.img (fd0) <通过 grub 目录下 <通过一个隐藏文件确 <启动项菜单名,根

ww1.img 文件进入 DOS 系统并自动启动 wifiway> map --hook chainloader (fd0)+1 rootnoverify (fd0) <照写,不要修改> <照写,不要修改> <照写,不要修改>

------------------------------------------------------------------------------title 启动 TOOLS/GRUB 目录下 ISO.ISO 光盘镜像 项菜单名,根据需要修改> find --set-root /grub/000.000 认路径> map --mem /grub/iso.iso (hd32) 文件,自己可修改路径及文件名> map --hook chainloader (hd32) <照写,不要修改> <照写,不要修改> <引导 grub 下 iso.iso <通过一个隐藏文件确 <启动

------------------------------------------------------------------------------title 启动 TOOLS/GRUB 目录下 IMG.IMG 磁盘镜像 项菜单名,根据需要修改> find --set-root /grub/000.000 认路径> map --mem /grub/img.img (fd0) 文件,自己可修改路径及文件名> map --hook chainloader (fd0)+1 rootnoverify (fd0) <照写,不要修改> <照写,不要修改> <照写,不要修改> <引导 grub 下 img.img <通过一个隐藏文件确 <启动

------------------------------------------------------------------------------title 重启计算机 reboot title 关闭计算机 halt

8、我的 X 配置文件:

foreground ffffff fontfile /grub/muifont.gz #splashimage /grub/back.xpm.gz default 0 timeout 5

title 启动 PE 维护系统 find --set-root /grub/000.000 chainloader /wxpe/setupldr.bin

title 启动 BT3 系统 find --set-root /grub/000.000 map --mem /grub/bt3.img (fd0) map --hook chainloader (fd0)+1 rootnoverify (fd0)

title 启动 SLAX Linux find --set-root /Grub/000.000 map --mem /Grub/ww1.img (fd0) map --hook

chainloader (fd0)+1 rootnoverify (fd0)

title 启动 WinPE ISO # # 以 ISO 方式启动另一个 PE,大部分软件无法加载 用于应对一些主机无法直接启动 PE 的情况

find --set-root /grub/000.000 map --mem /grub/winpeboot.iso (hd32) map --hook chainloader (hd32)

title 启动 Grub 目录下某个 ISO 光盘镜像 # 此功能尚不完善,大一些的 ISO 启动不了或出错

find --set-root /grub/000.000 map --mem /grub/foo.iso (hd32) map --hook chainloader (hd32)

title 启动 Ubuntu 904 Desktop # 没成功,以后要能装个 U 盘版 Ubuntu 更好

find --set-root /grub/000.000 map --mem /grub/u904.iso (hd32)

map --hook chainloader (hd32)

title 启动深山红叶 DOS 工具箱 find --set-root /grub/000.000 map --mem /BOOT/DOS98.IMG (fd0) map --hook chainloader (fd0)+1 rootnoverify (fd0)

title 重启计算机 reboot

title 关闭计算机 halt 9、这样 all-in-one 系统维护 U 盘基本就做成了,可以根据需要把自 己的软件、驱动、系统镜像文件等拷入到相关目录,就可以试着从 USB 启动电脑了。大部分新一点的机器都能正常运行。

10、一些截图

附录:

1.Grub4DOS 命令索引 http://grub4dos.sourceforge.net/wiki/index.php/Grub4dos 命令 索引

2.另一篇相关文章 ( 觉得写的挺好,还没试验过)

http://blog.sina.com.cn/s/blog_4fb009a90100c7ze.html

利用 syslinux 制作 Dos、WinPE、Slax Linux 集成的口袋操作系 统 一、概述 U 盘的价格越来越便宜,容量也越来越大,携带也方便,在工作 中可以把一些自己常用的工具整和到里面, 在电脑维护方面使用比较 方便。 二、系统的选择 1、dos 系统 目前在 dos 工具盘比较多,常见有 MS-DOS 7.1,深山红叶 DOS 工 具盘、MaxDos、矮人 dos 工具盘、超普 DOS 工具盘等,在制作中可以 根据自己喜欢,选择相应的 dos 系统工具盘,我选择的 MaxDos 7.1, 里面有许多有用的工具,比如 ghost 、pq、windows 密码破解等。 2、WinPE 系统 网上提供 WinPE 系统基本都是修改至老毛桃的 WinPE,主要有老 九 WinPE 老毛桃修改之撒手不管版、深山红叶 WINPE 工具箱、、金

手指快速装机 U 盘版、通用 PE 工具箱、完美者 U 盘 WinPE 维护系统、 晨枫 U 盘维护等, 为了使集成时修改最少, 这里选择晨枫 U 盘维护版。 3、Windows 故障恢复控制台 Windows 故障恢复控制台的功能是帮助基于 Windows 的计算机 在未正确启动或根本无法启动时进行恢复操作。 这里选择网上的光盘 上运行的基于 Ramdisk 的恢复控制台。 4、Linux U 盘上的 Linux 比较多,比如 Damn Small Linux、Slax Linux、 puppy linux、Ubuntu 等选择体积比较小的,功能比较完备的,这里 选择 Slax。 5、口袋操作系统 主要有 ceedo、mojopac 和 PortableApps Suite,根据自己的爱 好去选择,我从使用习惯和功能上在这里选了 ceedo。 三、u 盘启动引导程序的选择 任何一个操作系统在任何一个硬件平台上运行都需要一个引导 的过程,起着初始化软件环境、把内核从存储介质放到内存当中去, 并开始运行的作用。引导程序上承 BIOS,下接内核的初始化代码, 虽然开一次机只运行一次后就不留痕迹了,但相当的重要。

可对 u 盘引导的引导程序主要有 IO、 NTLDR、 syslinux、 Grub 等, 她们各有特点,从兼容性考虑,我选择了 syslinux。syslinux 是专 门用来引导可移动介质的轻量级引导程序, 支持 initrd 功能, initrd = init ramdisk,就是在启动时使用的一个内存虚拟磁盘,提高了对 广泛的硬件支持性。 四、软件清单与说明 1、syslinux-3.73 Syslinux 系统文件,可以到下面地址下载: http://www.kernel.org/pub/linux/utils/boot/syslinux/sys linux-3.73.zip 相关安装教程: http://syslinux.zytor.com/wiki/index.php/SYSLINUX 2、HP 优盘格式化工具 HP 优盘格式化工具是用来对 u 盘进行格式化的工具, 也可以直接 进行做 io 的启动 u 盘。可以到下面地址下载: http://www.xdowns.com/soft/6/7/2007/Soft_35477.html 3、GDParam

GDParam 这个工具可以方便得获取 PC 虚拟启动当中所需要的磁 盘镜像文件的 c/h/s 参数。在用 syslinux 启动 dos 的磁盘镜像时需 要指定 c/h/s 参数。可以到下面地址下载: http://www.05sun.com/downinfo/5089.html 4、WinImage 用来创建和修改磁盘镜像的软件,你可以自己创建或者修改 dos 的磁盘镜像。可以到下面地址下载: http://www.crsky.com/soft/281.html 5、UltraISO UltraISO 软碟通是一款光盘映像 ISO 文件编辑制作工具, 它可以 图形化地从光盘、 硬盘制作和编辑 ISO 文件。 可以对下载得到的 winpe 或者 slax 光盘映像进行修改。可以到下面地址下载: http://www.crsky.com/soft/1134.html 6、WinHex Winhex 是在 Windows 下运行的十六进制编辑软件, 在对 winpe 进 行安装文件修改等方面需要的工具。可以到下面地址下载: http://www.orsoon.com/Soft/4921.html

7、XCAB XCAB 能调用系统的 makecab.exe 文件,把文件加或目录压缩为 CAB,特别支持为 XCMD DEVI 生成 CAB,在对 winpe 进行修改打包时 用到。可以到下面地址下载: http://bbs.wuyou.net/attachment.phpaid=14397 8、WimTool WimTool 可以对 Wim 格式文件进行进行操作处理,在修改 winpe 的外置程序包时必须用的。可以到下面地址下载: http://www.newasp.net/soft/app/26726.html 9、MaxDOS 7.1 集成 GHOST 11.5 PQ、DM、光盘启动版 电信下载 网通下载 http://pzz.cn/soft/MaxDOS_71plus_iso.rar http://c.pzz.cn/soft/MaxDOS_71plus_iso.rar

10、Windows 故障恢复控制台 http://www.xdowns.com/soft/6/boot/2006/soft_32527.html 11、晨枫 U 盘维护 V2.0_512M 版 http://www.rayfile.com/zh-cn/files/5731196e-e314-11dd-8 5f0-0019d11a795f/

12、slax 6.0.9 ftp://ftp.slax.org/SLAX-6.x/slax-6.0.9.iso 13、Loadbin http://download.gna.org/grubutil/makerom-0.1-bin-w32-20 08-01-01.zip 14、ceedo http://www.myfiles.com.cn/soft/5/5224.htm

五、安装 SYSLINUX 1、把 u 盘格式化,采用 fat32 格式。你可以用 windows 或者 HP 优盘格式化工具进行。 2、在 u 盘的根创建 boot 文件夹,在 boot 下创建 syslinux 子文 件夹 3、把下载得到的 syslinux-3.73.zip 解压缩到 syslinux-3.73 文件夹, 在其中的 win32 下有 syslinux.exe 文件。 拷贝 syslinux.exe 到你 u 盘的/boot/syslinux 文件夹下

4、打开命令行,切换到 u 盘根目录,进入/boot/syslinux 文件 夹,执行 syslinux.exe,假设你的 u 盘的盘符为 j: 在命令行下依次运行下列命令: C:\Documents and Settings\xxxxx> J: J:\>Cd boot/syslinux J:\boot\syslinux> syslinux.exe -ma -d /boot/syslinux j: 其中 -d /boot/syslinux 是把命令生成的启动系统文件 ldlinux.sys 放到/boot/syslinux 目录,可以从该目录寻找 syslinux.cfg 配置文件。 六、配置启动菜单 拷贝 syslinux 系统文件 启动菜单的配置都在 syslinux.cfg 文件中。需要几个 syslinux 文件: memdisk vesamenu.c32 menu.c32 引导 IMG 镜像的文件 二种窗口模块之一 二种窗口模块之一

chain.c32 hd0,1 (或 chain.c32 hd1,1) reboot.c32

指定分区启动 如:chain.c32

重新启动计算机

在解压缩的 syslinux-3.73 文件夹中搜索以上就几个文件依次拷 贝到 u 盘的/boot/syslinux 文件夹下。 七、dos 系统的配置 1、在 u 盘的根建立 dos 文件夹 2、制作 dos 映像文件 (1)从网上下载得到的 MaxDOS_71plus_iso.rar 解压缩得到 maxdos_71plus_iso.iso 文件 (2)用 UltraISO 打开 maxdos_71plus_iso.iso 提取出光盘映像 maxdos 文件夹下的 maxs.sys 文件。 (3)把 maxs.sys 改名为 maxs.gz,用 winrar 打开把其中的 maxdos.exe 解出。 (4)然后把 maxdos.exe 改名为 maxdos.img (5)你自己可用 WinImage 进行对 maxdos.img 文件进行简单的 修改,加入你自己的 doas 应用程序。

(6)把修改后的 MaxDOS.img 复制到 u 盘的 dos 文件夹下。 3、取得 img 文件的 CHS 参数 syslinux 支持 gzip 或 zip 压缩格式的磁盘映像,但 memdisk 自 身不能压缩,memdisk 支持标准 floppy 镜像直接启动,非标准(容 量大于 2880K 的)要附加 CHS 参数。我们可以用 GDParam 取得 img 文 件的 CHS 参数。记下 c/h/s=555/2/18 4、修改 SYSLINUX.CFG 打开 u 盘/boot/syslinux 下的 SYSLINUX.CFG 文件,在里面添加 形如下的内容: LABEL MaxDOS MENU LABEL Max DOS V7.1 kernel /boot/syslinux/memdisk c=555 h=2 s=18 floppy append initrd=/dos/MaxDOS.img 八、slax 系统的配置 1、把下载得到的 slax-6.0.9.iso 用 UltraISO 打开,完全提取 出来放在 slax-6.0.9 文件夹下。 2、把其中的 slax 文件夹包含子文件复制到 u 盘的根目录。

3、把 slax-6.0.9/boot 文件夹下的 linuz、initrd.gz 两文件拷 贝到 u 盘的 boot 文件下。 4、打开 slax-6.0.9/boot 文件夹中的 slax.cfg 文件,复制其中 的: LABEL xconf MENU LABEL Slax Graphics mode (KDE) kernel /boot/vmlinuz append initrd=/boot/initrdch.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf;telinit~4 changes=/slax/ locale=CHS.UTF-8 5、把复制的上面内容贴人 u 盘/boot/syslinux 下的 SYSLINUX.CFG 文件 九、winpe 的配置 1、解压缩下载得到的晨枫 U 盘维护 V2.0_512M 版.rar 到任意一 文件夹。 2、在 u 盘根新建 winpe 文件夹。 3、修改 winpe OEM 信息

解压缩得到的 MyFeng/Boot 下的 WinPE.is_改为 WinPE.cab,用 winrar 打开解压出 WinPE.iso,用 UltraISO 打开,提取出 \WXPE\SYSTEM32 下的 oeminfo.ini 和 OEMLOGO.bmp 进行修改,导入 替换掉就可以了,保持 iso 文件,把新得到的 iso 文件用 xcab 软件 重新进行打包,得到 WinPE.cab,再把 WinPE.cab 改为 WinPE.is_ 。 4、修改 winpe 外置程序包 解压缩解压缩得到的 MyFeng/Boot 下的 OP.WIM 用 WimTool 解开, 然后你可以替换桌面背景图片,加入或者删除一些程序,然后再用 WimTool 打包成 OP.WIM 5、把处理完的 OP.WIM、WinPE.is_文件拷贝到 u 盘的 winpe 文件 夹。 6、打开 MyFeng/Boot 下的 winpe.ini 修改其中的关于 OP.WIM 位 置的代码,你也可以修改其他的链接。修改如下。 MOUN %CurDrv%\winpe\OP.WIM,Y:\外置程序,1 保存,然后拷贝到 u 盘的 boot 文件夹下。 7、拷贝 MyFeng/Boot 下的 ldrxpe、fon.bin、ntd.com 到 u 盘的 boot 文件夹下。

8、用记事本修改 MyFeng/Boot 下的 xpsi 文件中的 WinPE.IS_路 径为: OsLoadOptions="/minint /fastdetect /rdexportascd /rdpath=winpe\WinPE.IS_" 保持,然后拷贝到 u 盘的 boot 文件夹下。 9、解压缩下载得到的 loadbin-0.1-bin-w32-2008-03-01.zip, 把其中的 ldntldr.bin 改名为 ldntldr,然后拷贝到 u 盘的 boot 文 件夹下。 10、打开 u 盘 boot/syslinux 下的 SYSLINUX.CFG 文件,在其中 加入下面内容: LABEL WinPE MENU LABEL Lite Win PE kernel /boot/ldntldr append initrd=/boot/ldrxpe 十、Windows 故障恢复控制台 1、在 u 盘根建立 comcns 文件夹

2、解压缩下载得到的 base_ramdisk.rar 文件到 base_ramdisk 文件夹 3、用 UltraISO 打开 base_ramdisk 下的光盘上运行的基于 Ramdisk 的恢复控制台.iso 文件,把其根目录下的 CMDCONS.IS_、 WINNT.SIF,提取出来,再把其 i386 下的 SETUPLDR.BIN 也提取出来。 4、拷贝 CMDCONS.IS_到 u 盘的 comcns 文件夹 5、用记事本打开 WINNT.SIF 文件,把其中修改为: [SetupData] BootDevice = "ramdisk(0)" BootPath = "\i386\" OsLoadOptions = "/noguiboot /fastdetect /rdexportascd /rdpath=comcns\cmdcons.is_" 然后保存。 6、 把修改后的 WINNT.SIF 文件改名为 cnsi, 并复制到 u 盘 boot/ 下。 7、用 WinHex 打开 SETUPLDR.BIN

(1) 查找替换, NTDETECT.COM 替换为 boot\ntd.com, 4 处, 把 共 替换前 2 处就可。 (2)查找替换,WINNT.SIF 替换为 boot\cnsi。全部替换,共 9 处。 (3)保存 SETUPLDR.BIN 文件。 8、把 SETUPLDR.BIN 改名为 ldrcmdcon,并复制到 u 盘 boot/下。 9、打开 u 盘 boot/syslinux 下的 SYSLINUX.CFG 文件,在其中加 入下面内容: LABEL Cmdcons MENU LABEL Cmd cons kernel /boot/ldntldr append initrd=/boot/ldrcmdcon 十一、安装 Ceedo 把下载得到的 Ceedo 安装到你的 u 盘,然后进行配置。 十二、U 盘的目录结构和启动配置文件 1、根目录

|---boot----|--syslinux--| sysinux.cfg |---dos |---slax |---comcns |---winpe |---Ceedo |---My Documents

2、SYSLINUX.CFG 文件内容: prompt 1 timeout 100 default vesamenu.c32 MENU BACKGROUND back.png F1 readme.txt F2 syslinux.cfg

MENU WIDTH 36 MENU MARGIN 0 MENU ROWS 8 MENU HELPMSGROW 14 MENU TIMEOUTROW 22 MENU TABMSGROW 24 MENU CMDLINEROW 24 MENU HSHIFT 40 MENU VSHIFT 2 menu color screen 37;40 menu color border 30;44 menu color title menu color unsel 1;36;44 37;44 #00000000 #00000000 none #00000000 #00000000 none #00000000 #00000000 none #ff60CA00 #00000000 none #ff60CA00 #00000000 none 7;37;40 #ffffffff

menu color hotkey 1;37;44 menu color sel #ff60CA00 none

menu color hotsel menu color scrollbar none

1;7;37;40 #ff808080 #ff60CA00 none 30;44 #00000000 #00000000

menu color tabmsg 31;40 menu color cmdmark none menu color cmdline none menu color pwdborder menu color pwdheader menu color pwdentry std menu color timeout_msg #00000000 none menu color timeout 1;37;40 30;47 31;47

#aaaaaaaa #00000000 none #ffff0000 #00000000

1;36;40

37;40

#aaaaaaaa #00000000

#ffff0000 #00000000 std #ffff0000 #00000000 std #ffff0000 #00000000

30;47

37;40

#aaaaaaaa

#ffaaaaff #00000000 none

menu color help none menu color msg07 37;40

37;40

#aaaaaa00 #00000000

#90ffffff #00000000 std

MENU TITLE Jinjun\'s Tools Disk

LABEL MaxDOS MENU LABEL Max DOS V7.1 kernel /boot/syslinux/memdisk c=555 h=2 s=18 floppy append initrd=/dos/MaxDOS.img TEXT HELP

More about currently selected:

Run Max DOS V7.1

ENDTEXT

LABEL WinPE MENU LABEL Lite Win PE kernel /boot/ldntldr append initrd=/boot/ldrxpe TEXT HELP

More about currently selected:

Run Lite Win PE. ENDTEXT

LABEL xconf MENU LABEL Slax Graphics mode (KDE)

kernel /boot/vmlinuz append initrd=/boot/initrdch.gz ramdisk_size=6666 root=/dev/ram0 rw autoexec=xconf;telinit~4 changes=/slax/ locale=CHS.UTF-8 TEXT HELP

More about currently selected:

Run Slax the best way we can. ENDTEXT

LABEL Cmdcons MENU LABEL Cmd cons kernel /boot/ldntldr append initrd=/boot/ldrcmdcon TEXT HELP

More about currently selected:

Boot System of cmdcon. ENDTEXT

LABEL boothd MENU LABEL Boot System of HD1 kernel /boot/syslinux/chain.c32 append hd1 TEXT HELP

More about currently selected:

Boot System of HD1.

ENDTEXT

LABEL boothd MENU LABEL Boot System of HD2 kernel /boot/syslinux/chain.c32 append hd2 TEXT HELP

More about currently selected:

Boot System of HD2. ENDTEXT LABEL reboot MENU LABEL Reboot kernel /boot/syslinux/reboot.c32

TEXT HELP

More about currently selected:

reboot. ENDTEXT

十三、使用 在使用中你可以把启动顺序设置 u-hdd 方式优先。欢迎大家进行 交流。