经常遇到一些机器由于没有光驱而对安装系统造成不小的麻烦,所以打算搞个功能比较够用的可启动U盘,以实现一盘搞定的目的.
目标:
USB-HDD启动方式
包含WinPE功能
集成"一键GHOST"
集成"矮人DOS工具箱"
微软内存检测工具
RST内存检测工具
所用工具:
老毛挑的miniWinPE
从一键GHOST中提取的ghost.img
人矮人dos工具箱中提取的ar5.img
Microsoft内存检测 windiag.img
rst内存检测 rst442.img
GRUB菜单修改程序 grubmenu.exe
步骤:
先将minipe安装到U盘(这个按步骤搞就行了,我用的911版的,采用grub+U盘的安装方式,此光盘ISO里自带安装工具).可以在网上搜索下载:老九 WinPE 老毛桃修改之撒手不管版(Build 070911)
此步骤做玩,U盘已经是一个可启动的winpe维护盘了.可以搞大多数的维护工作了.
不过由于一些老机器不支持USB2.0启动会非常慢,一些机器的控制器在这个PE里面没有驱动程序,都会使其使用效果大打折扣,所以自己DIY一些DOS工具和内存检测工具,才能使这个U盘更实用.
这个PE安装到U盘使用grub启动,所以我们要做的是修改GRUB启动菜单.
而老毛挑的这个并无menu.lst文件,采用的是将菜单集成到mtldr文件的作法.
使用grubmenu.exe这个程序可以完成这个任务.
G:\grubutil-1.1-bin-w32-9>grubmenu
Usage:
grubmenu info grldr
grubmenu print grldr
grubmenu export grldr menu.lst
grubmenu import grldr menu.lst
G:\grubutil-1.1-bin-w32-9>
使用grubmenu export mtldr menu.lst命令将mtldr里面的菜单配置导出到menu.lst文件中.
(mtldr文件在U盘根目录,是隐藏文件,注意去掉只读属性才能修改).
将修改好的menu.lst文件再用grubmenu import mtldr menu.lst命令导入到mtldr里面.
所有的password行都已经被我删除了,由于是自己用,所以所有的密码都没什么用处的.
如果你想使用默认的独立的菜单menu.lst文件方式:由于老毛挑通过修改mbr里面的默认文件名grldr为mtldr来实现个性化,所以我先恢复默认的GRUB的MBR,再复制一个默认的grldr文件,将提取的菜单文件menu.lst复制到根目录,删除mtldr即可:
使用上面的grubutil里面的grubinst_gui.exe这个程序
默认的grldr文件可以从包里找到.注意支持中文的grldr在chinese目录里面的.
这是我修改后的文件:
default 0
timeout 5
fontfile /minipe/muifont.gz
splashimage /minipe/bj2008.xpm.gz
title WinPE 迷你维护系统
chainloader /minipe/ldrxpe
title Grub 命令行
commandline
title DOS工具箱 MODE1
map --mem /minipe/ar5.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
title DOS工具箱 MODE2
map --mem (hd0,0)/minipe/ar5.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
title DOS工具箱 MODE3
kernel /minipe/memdisk c=160 h=2 s=36 floppy
initrd /minipe/ar5.img
title DOS工具箱 MODE4
kernel (hd0,0)/minipe/memdisk c=160 h=2 s=36 floppy
initrd (hd0,0)/minipe/ar5.img
title 一键GHOST MODE1
map --mem /minipe/ghost.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
title 一键GHOST MODE2
map --mem (hd0,0)/minipe/ghost.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
title 一键GHOST MODE3
kernel /minipe/memdisk c=160 h=2 s=36 floppy
initrd /minipe/ghost.img
title 一键GHOST MODE4
kernel (hd0,0)/minipe/memdisk c=160 h=2 s=36 floppy
initrd (hd0,0)/minipe/ghost.img
title 微软内存检测
map --mem /minipe/windiag.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
title R.S.T 内存检测
map --mem /minipe/rst442.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)
title 从第一硬盘第一分区启动
root (hd0,0)
chainloader +1
title 从第二硬盘第一分区启动
root (hd1,0)
chainloader (hd1,0)+1
title 重新启动计算机
reboot
title 关闭计算机
halt
4个启动模式的原因?
上面"一键"和"DOS工具箱"都出现了4次,是有点画蛇添足,这是我看了下一键ghost的说明后搞的,一键ghost的启动选项里面分成了4个选项分别对应于不同的菜单文件,说是可以解决一些机器无法正常启动的情况,可能只有一种模式可以启动.所以我将这四种模式都做成了菜单里面的选项,以防一些机器无法启动的情况.
实际上这两个DOS工具,在我的机器上,所有模式都可正常启动,其它机器没试,所以先弄着吧!^_^
DOS工具箱不能启动原因?
这样弄好后,发现DOS工具箱的MODE1和MODE2无法正常启动,其它的都可以了.
比较了这两个文件后发现这两个文件的簇大小不一样,ar5.img是2048;ghost.img是1024
使用winimg修改ar5.img的簇大小为1024后,就可以正常启动了.
WinImage->映像->更改格式->选择自定义映像格式->
将上面的2048改成1024再保存就OK了.
title 从第一硬盘第一分区启动
root (hd0,0)
chainloader +1
这个启动实际上是U盘上的系统,在根目录有ntldr,boot.ini文件实际上会启动boot.ini里面的菜单,这又给添加其它功能多了一种方式,具体自己搞了,我现在用不上.就不弄了.
欢迎相互交流!