Grub是Linux的一个系统载入启动程序,正如NTLDR之于Windows NT/2K/XP。它就是为多重引导而生,而且适用于多种平台,这里所说的Windows下的Grub就是Grub4dos。

在NTFS格式下,在boot.ini里添加一个grldr的选项,然后编辑它的启动菜单把类似DOS.IMG之类的文件加载进去,就算不是 FAT32 也没问题了。

  可能是介于DOS不能与时俱进,微软在2002年发布了WinPE(Windows PreInstallation Environment)预安装环境,相当于迷你的急救WinXP系统。目前市面上流传较广的有U卫士撒手不管版、深山红叶工具箱等……,其实五花八门的,虽各有见长,但基本都是大同小异。要么你多个工具软件,要么我多个驱动程序。最主要的应用当然是市面那些DIY的系统安装光盘,例如什么番茄花园什么猪猪猫什么深度技术等。

  之前用的是Grub/DOS(grldr),后来装了U卫士WinPE带加密功能的硬盘版(mtldr),但是折腾了很久还是无法识别NVIDIA的网卡驱动,而且一些功能报错(例如 MMC),外挂又是打包无法直接编辑;后来发现最帅的菜鸟专用启动光盘(RXPE.LDR)竟然能够识别NVIDIA网卡,但这个版本的其他功能却是非常简陋;所以最后通过深山红叶WinPE(drldr)的外挂包把NVIDIA的驱动包加载到U卫士的硬盘版里。

  不管那个版本的WinPE,光盘版也好,硬盘版也好,启动菜单几乎都是用grub做的;而且多个版本都是指定了各自的Loader,像什么mtldr、avldr、pxldr等,特别是很多都在C盘根目录放置了很多根本可以不用放到根目录的东东,容易出错且一但有问题难排错。既然都是用Grub来做,那或许应该可以用 Grub来统一引导启动?

  先说说U卫士WinPE默认的安装目录为C:\MiniPE,默认启动文件为C:\mtldr。DIY开始:首先,在 C:\boot.ini里加上一行:C:\grldr="Start WinPE with Grub4DOS",然后,下载最新版的 grub4dos,把解压缩出来的grldr放到C盘根目录。用grldr内置菜单编辑工具,把grldr的启动菜单读取出来,其代码为:

default 0
timeout 1
fallback 1

title find /menu.lst
find --set-root --ignore-floppies /menu.lst
configfile /menu.lst

title find /boot/grub/menu.lst
fallback 2
find --set-root --ignore-floppies /boot/grub/menu.lst
configfile /boot/grub/menu.lst

title find /grub/menu.lst
fallback 3
find --set-root --ignore-floppies /grub/menu.lst
configfile /grub/menu.lst

title commandline
commandline

title reboot
reboot

title halt
halt

  可以看出grldr会去几个位置找menu.lst,优先查找根目录,若根目录没找到menu.lst,就会去旧版本的位置/boot/grub/menu.lst查找。用GRUB菜单密码MD5工具得到某密码如:123456的MD5 = $1$8$pSqK8hjjgmdb73MJlsrnj1,将上面这段内容修改为下面的代码并保存到刚刚的grldr中:

default 0
timeout 0
fallback 1
title WinPE with Grub4DOS
password --md5 $1$8$pSqK8hjjgmdb73MJlsrnj1
find --set-root --ignore-floppies /menu.lst
configfile /menu.lst
title Back
rootnoverify (hd0,0)
makeactive
chainloader +1

  这样,ntldr加载boot.ini后,当我们选择“Start WinPE with Grub4DOS”时,grldr就会出现上面我们编辑好的菜单(因为延时0秒所以基本不可见),因为默认是第0个选项,所以来到输入密码的界面;如果密码输入错误或菜单文件放置有误,则会fallback回第1个选项(即回到第一块硬盘的第一个分区也就是C盘)。当正确输入123456密码并菜单放置正确后,grldr会自动找到并加载我们编辑好的新的菜单/menu.lst:

color black/cyan yellow/cyan
timeout 20
default 0

title 00. Start WinPE (LaoMaoTao)
find --set-root /boot/winpe.iso
map --mem /boot/winpe.iso (hd32)
map --hook
chainloader (hd32)
boot

title 01. Start Power WinPE (Data/File)
find --set-root /boot/powerpe.iso
map --mem /boot/powerpe.iso (hd32)
map --hook
chainloader (hd32)
boot

title 02. Start WinPE (Network/Kaspersky)
find --set-root /boot/reboot.iso
map --mem /boot/reboot.iso (hd32)
map --hook
chainloader (hd32)
boot

title 03. Start Rescue DOS (MSDOS v7.1)
find --set-root /boot/rdos.img
map --mem /boot/rdos.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title 04. Start Recovery DOS (Ghost/DishGenis)
find --set-root /boot/ghost.img
map --mem /boot/ghost.img (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title 05. Start Ram Windows XP
find --set-root --ignore-floppies /boot/ramxp/ramxp.dsk
kernel /boot/ramxp/memdisk raw
initrd /boot/ramxp/ramxp.dsk

title 06. Load MemTest-86 Program
kernel (hd0,8)/boot/memtest.bin

title 07. Load from other Menu.lst
find --set-root /grldr
configfile /boot/menu.lst

title 08. Find/Load Windows NT/2K/XP (NTLDR)
find --set-root /ntldr
chainloader /ntldr

#title Find/Load Windows 9x/Me (IO.SYS)
#find --set-root /io.sys
#chainloader /io.sys

title 09. Boot from CDROM
find --set-root /boot/sbootmgr.dsk
map --mem /boot/sbootmgr.dsk (fd0)
map --hook
chainloader (fd0)+1
rootnoverify (fd0)

title 10. Boot from HardDisk #1 (HD0,0)
root (hd0,0)
chainloader +1

title 11. Boot from HardDisk #2 (HD1,0)
root (hd1,0)
chainloader (hd1,0)+1

#title (?) Grub Command Line
#commandline

title (!) Reboot
reboot

title (x) Shutdown
halt

title <=== Back ====
rootnoverify (hd0,0)
makeactive
chainloader +1

更新一下:

  1、把boot目录放到其他盘(C盘根目录就只有grldr和menu.lst两个文件了)。预防万一,若C盘被误格等,辛苦制作的硬盘版启动文件还在。

  2、把U卫士和深山红叶和最帅菜鸟的ISO直接加载;他们的外置程序则是放置在ISO所在分区:/MiniPE、/BOOT、/RXPF 目录下 —— 经过多次测试能完美解决grub加载ISO无法使用外置程序(其实无论外置还是内置,现在都是OK的)的问题。

  3、加了个RamXP,哈哈,目录任意,效果挺不错。其实没什么用,就试下效果。dsk格式的文件挺不错。但找不到有什么编辑工具。

菜单的样子大概如下图(VMware下的调试状态,未一一对应以上菜单代码):

  高级DIY应用:在这个界面,高亮你要选择的选项后:按“b”键或回车启动;按“e”键可以进入编辑状态;按“c”键进入命令行模式。进入选项编辑状态后,还可以继续“e”进入内容编辑状态,按“Esc”取消修改;按“Enter”应用修改 —— 其实这些已经是相当于Linux/Ubuntu的启动了。

  还有一个问题:在boot.ini菜单可以添加C:\bootsect.cdr="Boot from CDROM",利用512字节的光驱引导文件bootsect.cdr来启动光驱,但这个文件在grub4dos无法应用。甚至用“scdrom --install”和“scdrom --bootcd”都无法解决,报无法识别。留点缺陷美才是完美!!!!!




本软件需在电脑端使用
请搜索U盘杀毒专家免费下载
    秋水微澜
    2019/5/28
    如果新电脑可能不支持mbr格式,所以你换硬盘格式没用。如果支持我觉得你应该用U盘装系统
    醉色染红颜
    2019/3/01
    因为你使用的U盘装系统进行安装,用的是一款微型的U盘操作系统,用于系统安装用的。这套系统会将U盘图标设置为卡通图标。不会影响U盘使用的。不需要改过来,你如果非要改过来的话,那就直接格式化U盘,当然其中的重要文档需要保留的话你就先备份出来哦。
    几度枫红。
    2019/3/12
    非常好用 就是XB 有点别扭 可以改成SW 意思是small white 或swhite 反正也是小白。
    选择离殇
    2019/4/17
    但是来到了这还安装不会呀,求助了大家,感谢老铁和大家,尤其是有技术的老铁,太感谢大神帮忙了,不到1小时搞定!很有耐心的指导我安装,一步一步教我。下次有问题还找老铁。谢谢!,真心推荐给大家,真的不错!
    最后的温柔。
    2019/4/28
    非常好用 就是XB 有点别扭 可以改成SW 意思是small white 或swhite 反正也是小白。
    @傀儡的愛是痛苦的
    2019/4/30
    东西好用美观,还送了小饰品这些我都不多说了,我想大家买东西看重的不光是质量,信誉,态度售后也是很重要的一环,在这主要感谢的是售后的态度和解决问题的能力真是值得称赞的,由于对电脑了解的少,大家给力的帮助和耐心的指导,一步步把损坏的系统给力的解决,非常感谢你耐心的帮助,虽然不经常来帖吧,但我会成为你忠实的老铁,
    千囚栀愿
    2019/5/5
    以前买过几种u盘装系统都不是想要的,这款安装很方便,系统稳定,值得购买。
    记忆承载将来
    2019/5/17
    优盘装系统来说还可以,就是折腾了两天系统都没装好。最后还是问的我的朋友才搞好。东西不错,技术人员很多发现问题及时回复。
    天使的眼泪
    2019/5/28
    我自己用U盘装系统,感觉很简单,但是看楼上的可都不会,U盘装系统安装好后使用了一段时间,没有什么问题,系统很流畅!
    揉碎了心酸
    2019/6/08
    U盘启动盘与U盘装系统有什么区别,制作方法有什么不同,那个方便好学?对电脑比较好的是什么软件?