2024年3月11日发(作者:)

多系统菜单

多系统引导菜单的创建

所用到的工具:grub4dos

grub4dos是非常好的多重操作系统引导管理器。我们常常需要用grub4dos来引

导多个操作系统,或者是通过grub4dos来引导启动操作系统的安装程序。

利用该工具的优点:可以兼容绝大部分的系统,包括Windows、Linux等高低版

本的启动菜单的创建与管理:解决了低版本系统引导内核因无法兼容高版本系统引

导内核而无法启动高版本系统的问题,或者不同类型系统之间无法启动别的系统的

问题。利用该工具甚至可以启动ISO系统镜像和IMG镜像,只是启动ISO镜像时由

于完全退出了grub,ISO由于失去了支持从原来的CD状态变成了一个完全读不懂得

文件,所以启动后只能继续已经加载进内存的信息,有关ISO中的内容已经被完全

隔绝,所以可以进PE,却不能进行有关克隆的操作。

该工具的 启动原理:该工具提供了兼容各个系统的运行文件,提取工具包里的

适应当前系统的文件,在该系统中创建grub4dos的引导菜单,在启动系统时通过选

择启动grub4dos,然后进入grub4dos的菜单管理界面,在该界面我们可以进入各个

系统的引导内核或者创建编辑系统菜单,进入引导内核之后grub4dos<将退出取而代

之的是要启动的系统的菜单选择界面,在该界面,是我们常见的系统启动菜单,我

们就可以进入想要进入的系统了。该工具所起的作用相当于媒介的作用,从一个系

统的引导内核转换到另一个系统的引导内核。

一:在系统中添加grub4dos的启动项(媒介启动必须)

在现有的操作系统上引导启动grub4dos

1、xp引导启动grub4dos

从grub4dos中提取一个名为grldr的文件,其它的都不需要。把这个文件放到

xp系统盘的根目录下,然后用记事本打开系统盘根目录下的文件,请注意,

这个文件是只读和隐藏的,先要去掉只读和隐藏,才能够看到和改写的。在里面最

后添加一行如下:

c:grldr=grub4dos

请注意,这里的c:是假设你的系统盘是c盘。其实活动主分区在xp下都是c盘,

所以你也没太可能是其它的盘吧。

1

grub4dos了。

系统菜单

存盘后,在开机时候的操作系统选择菜单上,选择grub4dos进入,也就启动

2、win7和vista引导启动grub4dos

从grub4dos中提取名为grldr和这两个文件放到windows 7的启动盘

(windows 7的windows文件夹所在的盘)的根目录下。在记事本中写入如下命令,

保存为:创建启动项.bat 右键以管理员身份运行,可以一键创建

的启动项:

Bcdedit /create {ffffffff-8d96-11de-8e71-ffffffffffff} /d "grub4dos" /application

BOOTSECTOR

Bcdedit /set {ffffffff-8d96-11de-8e71-ffffffffffff} device partition=%systemdrive%

bcdedit /set {ffffffff-8d96-11de-8e71-ffffffffffff} path

bcdedit /displayorder {ffffffff-8d96-11de-8e71-ffffffffffff} /addlast

bcdedit /timeout 5

@pause

另外,请在记事本中写入如下命令,保存为:删除启动项.bat,右键以

管理员身份运行,可以删除我们用前一个批处理所建立的启动项:

bcdedit /delete {ffffffff-8d96-11de-8e71-ffffffffffff}

@pause

批处理其实是调用bcdedit命令添加的启动项,但没有写得很复杂(因

为没有必要),所以如果已经存在着一个相同的{ffffffff-8d96-11de-8e71-ffffffffffff}

标识符的话,则运行的时候会报错,但99.999%可以保证你的电脑上不会预先存在

着这样的一个标识符的。如果有的话,你已经是很懂得bcdedit命令了的,所以不会

用我这样的傻瓜式批处理的了。

下面让我们看看如何手动用bcdedit命令添加的启动项。

以管理员身份运行cmd,在cmd中输入如下命令并回车(命令不区分大小写,但请

注意命令中的空格):

bcdedit /create /d "ubuntu" /application BOOTSECTOR

这个命令会得到一个如同下面样式的标识符:

{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx}

(比如: {2e850b34-8d96-11de-8e71-d1c665e3cb34})

为了避免手动写入标识符出错,我们可以在CMD中右击,点标记,然后拖动

鼠标,选定这个{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx},再点一下右键,也

就复制了。然后我们可以在CMD中右击,点粘贴,可以把我们复制的内容粘贴到

CMD中。

2