Chinaunix首页 | 论坛 | 博客
  • 博客访问: 496497
  • 博文数量: 77
  • 博客积分: 4011
  • 博客等级: 上校
  • 技术积分: 800
  • 用 户 组: 普通用户
  • 注册时间: 2004-10-10 09:53
个人简介

天天向上

文章分类

全部博文(77)

文章存档

2010年(1)

2008年(21)

2007年(39)

2006年(10)

2004年(6)

我的朋友

分类: WINDOWS

2008-04-24 12:55:16

经常遇到一些机器由于没有光驱而对安装系统造成不小的麻烦,所以打算搞个功能比较够用的可启动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里面的菜单,这又给添加其它功能多了一种方式,具体自己搞了,我现在用不上.就不弄了.

欢迎相互交流!
阅读(11035) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

e大夫2008-07-06 23:13:07

我对您的这篇文章非常感兴趣,只是本人是个菜菜鸟,对电脑几乎是一窍不通,尤其是DOS,看见就有心理障碍。最近,为了给品牌笔记本装GHOST系统,吃尽了苦头。开始时人们都说品牌机用GHOST不行,我偏不信,非要试试,结果是焦头烂额,不过还好,一步一步地总算是都搞定了。一些品牌机在用GHOST将文件复制到C盘后,一重启就蓝屏。费了半天劲,最后找到了一个紧急引导工具盘,带grub启动,选第一块硬盘,第一块分区,一下就行了。现在很多笔记本都没有光驱了,装系统只能用U盘了,我用老毛桃的PE已经做了U盘启动盘,已经用它装了几台电脑了,还好,还没碰到蓝屏的。我正苦于没有U盘的紧急启动盘可用,看到了先生的这篇文章,很是高兴。想学着把启动U盘改一下,可是对于我来说,您的文章太专业了,实在是有困难。所以,能否请先生在百忙中抽时间,把上文写个详细点的教程?老毛桃PE装在128M的U盘正好,只剩了200多K。必要时外置程序可以不要,这样可以节省空间,把grub引导加进去。先谢谢了。

chinaunix网友2008-04-28 11:12:28

WWW.RAIDSOS.NET 13386848847