修改grldr实现多重引导菜单

44
1542

最近大事小事很多,也很烦人,今天总算可以安心的上个网了,虽然是蹭网,但网速可以。这点是令人比较满意的地方,由于要多系统引导,所以免不了用grubdos4,首先说下我的引导情况。

我的是bootmgr引导所有的系统,目前引导4个系统。如下图所示:

boot-loader

由于ununtu的引导用grldr.mbr和grldr这两个文件是普通的文件,并没有特别之处。如果需要引导BT4,也是基于Linux内核的,所以也就不能用grldr引导。否则启动后的结果就是Ubuntu。顺便说一下,我没有安装Ubuntu和BT4,我这样做的目的是为了读取不同的menu.lst然后加载不同的启动菜单。我不知道是否有直接定义menu.lst路径的语句,所以我采取不同的grldr引导不同的menu.lst来达到我的多系统引导。

我在网上搜了许多grldr改名的,用grubinste之类的,但是我不想把硬盘的mbr给弄来弄去,所以就没用这个改。思路就是如图所示,bootmgr引导不同的的XXX.mbr然后引导不同的启动文件,然后读取不同的menu.lst.
特别说明,gzldr.mbr是修改过的grldr.mbr,gzldr是grldr修改后的,但他不会搜索自己目录除外的menu.lst,另外我把附件里面的gzldr也修改了,让他只能读取gzldr.lst,而不是menu.lst。因此gzldr.mbr、gzldr、gzldr.lst必须放在同一个目录。至于gzldr.lst。可以将普通的menu.lst重命名即可。

这样修改之后,可以在同一个目录下面放grldr.mbr、grldr、menu.lst以及gzldr.mbr、gzldr、gzldr.lst而互不影响。

附件里面只有gzldr.mbr、gzldr两个处理过的文件:

下载地址:我的网盘(密码:onedou)

Update:

grldr修改方法:
比如要把grldr 改成gzldr :
1、先把文件名改成gzldr;
2、用ultraedit或winhex打开gzldr;
3、虽然文本框全都是乱码,别管它,把光标定位在右边文本框处,按下Ctrl+r(ultraedit)或者ctrl+H(winhex) 键就跳出文本替换窗口,在第一搜索栏输入 grldr(小写),在第二搜索栏输入 gzldr(小写),选择全部替换,选择ASCII码,选择搜索全部,其他都不能选,然后点击确定,接着弹出提示共替换了几处,最后点击保存或另存为就搞定了。

44 条留言

      • 我貌似理解错了,你要的是启动菜单而不是直接引导。我都直接root chainloader +1引导linux所在分区的PBR的……不过现在的grub2用grub4dos没法直接引导了,必须先引导core.img进入启动菜单……

留言

留言不能为空
怎么称呼您?

验证码 *