用户
 找回密码
 立即注册
搜索

[原创] 制作Grub启动光盘,从入门到精通图文教程。

[复制链接]

21

主题

181

帖子

61

积分

注册会员

Rank: 2

积分
61
发表于 2007-3-5 08:45:00


制作Grub启动光盘,从入门到精通图文教程。
给大家一个模版下载:
使用道具 举报 回复
发表于 2007-3-5 08:49:00
2、将menu.lst移动,如果要移动menu.lst,就需要修改grldr文件了。
使用UE打开grldr,更改第二个菜单项为configfile (cd)/路径/menu.lst即可。
如图。附件是将menu.lst移动到cdbt文件夹的grldr。
使用道具 举报 回复 支持 反对
发表于 2007-3-5 08:57:00
3、集成软盘镜像文件。
在ISO根目录新建一个文件夹BOOT,注意是大写字母。
然后添加IMG/IMA文件到BOOT文件夹。
新建一个文本文档,填入一下内容:
  1. timeout 30
  2. default 0
  3. root (cd)
  4. fontfile (cd)/cdbt/fonts
  5. splashimage (cd)/cdbt/xx.xpm.gz
复制代码
xx.xpm.gz是grub背景文件,fonts是支持中文插件。(附件给大家提供一个xpm.gz文件和fonts文件下载。),将该文本保存为所有文件-menu.lst。
要启动IMG/IMA文件,在menu.lst里面添加以下内容即可:
  1. title XXXXX(菜单显示字符)
  2. map --mem (cd)/BOOT/XXXX.IMG (fd0)
  3. map (fd0) (fd1)
  4. map --floppies=2
  5. map --hook
  6. chainloader (fd0)+1
  7. rootnoverify (fd0)
复制代码
使用道具 举报 回复 支持 反对
发表于 2007-3-5 09:01:00
4、集成WINPE
复制WINPE光盘所有文件到ISO根目录,在menu.lst添加以下内容即可:
IM_格式:
  1. title 启动WinPE IM_ 格式
  2. find --set-root (cd)/I386/SETUPLDR.BIN
  3. chainloader (cd)/I386/SETUPLDR.BIN
  4. savedefault --wait=2
复制代码
IS_格式:
  1. title 启动WinPE IS_ 格式
  2. find --set-root (cd)/WXPE/SETUPLDR.BIN
  3. chainloader (cd)/WXPE/SETUPLDR.BIN
  4. savedefault --wait=2
复制代码
注意I386/WXPE目录和WINPE光盘路径保持一致。
使用道具 举报 回复 支持 反对
发表于 2007-3-5 09:02:00
5、辅助功能
直接在menu.lst添加以下内容即可:
  1. title 映射第一硬盘第二分区为第一硬盘第一分区
  2. map --in-situ (hd0,4)+1    (hd0)
  3. find --set-root /ntldr
  4. chainloader /ntldr
  5. boot
  6. title 从光盘启动系统
  7. scdrom --bootcd
  8. title 硬盘启动
  9. find --set-root /ntldr
  10. chainloader /ntldr
  11. savedefault --wait=2
  12. title 重新启动
  13. reboot
  14. title 关闭计算机
  15. halt
复制代码
使用道具 举报 回复 支持 反对
发表于 2007-3-5 09:14:00
一直在找grub光启的文章,谢谢楼主分享!
使用道具 举报 回复 支持 反对
发表于 2007-3-5 09:16:00
6、重头戏,目前互联网上面还没有的集成XP/2003系统的方法。

A,集成WINXP安装。

将WINXP安装盘根目录除AUTORUN.INF以外的所有文件拷贝到ISO根目录;
ISO根目录新建文件夹例如:STXP;
将安装光盘的I386目录整体拷入STXP文件夹
将安装光盘的I386目录所有内容(文件夹及文件)拷贝到STXP目录。
UE打开STXP目录里面的SETUPLDR.BIN,搜索ASCII字符i386,全部替换为STXP;
编辑txtsetup.sif文件:
用记事本打开它,通过“编辑”->“查找”命令搜索"SetupSourcePath",然后根据你实际保存安装文件的路径进行适当的变动。例如本例为"\STXP\",其作用是告诉系统安装源文件的位置;
在menu.lst加入如下命令:
  1. title  安装Windows XP操作系统
  2. chainloader (cd)/STXP/SETUPLDR.BIN
复制代码
B,集成WIN2003安装。
将WIN2003安装盘根目录除AUTORUN.INF以外的所有文件拷贝到ISO根目录;
ISO根目录新建文件夹例如:W2K3;
文件拷贝及结构同XP。
UE打开里面的SETUPLDR.BIN,搜索ASCII字符i386,全部替换为W2K3;
在 0x2060h 地址处找到 74 03,将之改写为 EB 1A,共7处。
记事本打开里面的txtsetup.sif文件,修改方法同XP;
在menu.lst加入如下命令:
  1. title  安装Windows2003操作系统
  2. chainloader (cd)/W2K3/SETUPLDR.BIN
复制代码
C、多个XP和2003系统只需要重复上述步骤即可,注意文件夹不要重名。
是不是比EasyBoot简单?对比这个帖子就知道了http://bbs.winzheng.com/viewthread.php?tid=1077230&highlight=%2Bbd540
D、WIN2000系统
对它不感兴趣,没有做试验,有兴趣的朋友按照上面的方法自己试验就行了。

此集成方法简单点说就是:
I386目录改名代替启动软盘组,并在里面另加入一个I386目录作为安装源文件。







[ 本帖最后由 bd540 于 2007-3-7 13:12 编辑 ]




[ 本帖最后由 bd540 于 2007-3-7 13:13 编辑 ]
使用道具 举报 回复 支持 反对
发表于 2007-3-5 09:22:00
7、更多功能大家一起研究,但就这几项就比EasyBoot强大多了

放上我制作集成盘在虚拟机测试的图片(注意我只测试到复制安装文件,因为正常复制安装文件就说明集成已经成功了)。
使用道具 举报 回复 支持 反对
发表于 2007-3-5 09:24:00
不敢动grub,上次装了个linux和xp双系统,删除的时候不懂,废了我一块硬盘,低格都没用
使用道具 举报 回复 支持 反对
发表于 2007-3-5 09:24:00
OVER。
如此集成多个操作系统,比互联网上说的-=提取启动软盘组=-简单多了,最少省略了软盘组。
按照网上流传的方法:
EasyBoot集成多个系统需要多个启动软盘组,而grub不需要;
EasyBoot集成多个系统需要多个引导文件(xxx.bin),grub也不需要。

(其实EasyBoot是否也可以这样集成呢?应该没问题,但是还是需要多个引导文件的。)

另外大家注意,ISO属性一定要勾选“允许小写字母”。



[ 本帖最后由 bd540 于 2007-3-5 10:28 编辑 ]




[ 本帖最后由 bd540 于 2007-3-5 10:28 编辑 ]
使用道具 举报 回复 支持 反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则