无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 9377|回复: 6
打印 上一主题 下一主题

[分享] 制作grub2启动光盘捷径!

[复制链接]
跳转到指定楼层
1#
发表于 2013-11-27 11:28:07 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
grub2的强大毋庸置疑,但我有不想装个linux系统,在制作grub2的救援盘,怎么办?偶然想起cdlinux的测试版是用的grub2启动,直接拿来用修改一下,在添加一些pe和img工具不就行了?开始:
1,下载cdlinux的iso,这个到http://distro.ibiblio.org/cdlinux/testing/,可以看到是2013年7月份的b6版本,下你要的版本有32和64位,最小的iso应该那个就行!
2.用7z解压出iso众的CDlinux目录,因为7z会保持原来的大小写,而winrar不知道会不会全部大写(没试过!)
3.把CDlinxu目录和你要其他合盘或者其他东西放到一个目录下,如我的:

7777是通用pe的目录,imgs是一些img工具,那个eltorito.img是光盘启动文件,在CDLinux目录的/boot/i386-pc目录里,不知道为什么用mkisofs的-b参数指定启动文件路径每次都不可以成功,而放到光盘根目录直接指定启动文件名就行了,搞不懂!
4. 接下来修改cdlinux目录,我的:

只有一个boot目录,boot下目录结构:
fonts目录就一个字体文件pf2字体,i386pc目录是cdlinxu自带的没有改动,grub.cfg是启动配置文件,memdisk是syslinux种的文件!
至于grub.cfg内容如下,完全拼接,因为grub2不熟悉,智能这样了!注意grub.cfg是utf-8编码,建议用notepad++第三方编辑器编辑,否则菜单显示会有些不爽!

set default=0
set timeout=20
insmod vbe
insmod font

if loadfont /CDlinux/boot/fonts/microhei.pf2; then
    insmod gfxterm
    set gfxmode=800x600
    set gfxpayload=keep
    terminal_output gfxterm
fi


menuentry '运行Win7 PE中文版(x86)' {
  insmod ntldr
  ntldr /7777/7pe_mgr
}

menuentry '运行1KeyGhost一键还原' {
  linux16 /CDlinux/boot/memdisk raw
  initrd16 /imgs/okdos.ima
}

menuentry '运行Windows密码清除器' {
  linux16 /CDlinux/boot/memdisk raw
  initrd16 /imgs/pwd.img
}

menuentry '运行Windows免密码登录' {
  linux16 /CDlinux/boot/memdisk raw
  initrd16 /imgs/kb.img
}

menuentry '运行Diskgenius磁盘管理' {
  linux16 /CDlinux/boot/memdisk raw
  initrd16 /imgs/dg.img
}

menuentry '运行MAXDOS9增强版工具箱' {
  linux16 /CDlinux/boot/memdisk raw
  initrd16 /imgs/md9.img
}
。最后用mkisofs制作iso,搞定!
mkisofs.exe  -v  -R  -J  -joliet-long   -V "Win7PE" -c boot.cat -hide boot.cat -b eltorito.img  -no-emul-boot -boot-load-size 4 -boot-info-table -o winpe.iso 文件目录

评分

参与人数 1无忧币 +5 收起 理由
shan + 5 很给力!

查看全部评分

2#
 楼主| 发表于 2013-11-27 11:31:37 | 只看该作者
本帖最后由 my9823 于 2013-11-27 11:35 编辑

那个启动硬盘上的系统,你可以用search命令来定位,这个命令我不会用!
然后
insmod ntfs   //插入ntfs模块
insmod nltdr  //插入ntldr模块
ntldr  启动文件名  (如bootmgr或者ntldr)
那个用chainloader好像也可以吧?
回复

使用道具 举报

3#
 楼主| 发表于 2013-11-27 11:48:08 | 只看该作者
这只是用了cdlinxu的启动文件,因为不熟悉要使用到那么些模块,所以只要山寨别人的了,他的那个启动文件中有必要的模块集成进去了,所以就用现成的了!至于i386目录尽量保持原来的目录下,这个路径估计是保存在启动文件里的,当然可以使用内置变量指定,这个就俺不会了!如果要显示命令帮助,还要用到zh_CN.gmo.gz,你可以尝试用版本接近的linux软件包中的zh_CN.mo用gzip压缩试试,估计也在要放到\boot\locales\目录里吧?
回复

使用道具 举报

4#
 楼主| 发表于 2013-11-27 11:52:27 | 只看该作者
如果没猜错的话,你只留下一个启动文件制作iso,就启动到grub的救援模式,再试试lsmod,看看有哪些模块集成进去了,在linux下在用grub-mkimage制作img集成这些模块,想改变目录名字的可以在linux下试试,或者那些什么cygwin环境中试试!
回复

使用道具 举报

5#
发表于 2013-11-29 08:38:03 来自手机 | 只看该作者
本帖最后由 shan 于 2013-11-29 08:40 编辑

好贴必须大力支持!期待楼主完善详细这个技术贴,给我等grub2盲人提供个最简便易懂制作方法!如果每一步配上图就更容易看懂了。手机浏览,不能够加
分,下次补上。
回复

使用道具 举报

6#
 楼主| 发表于 2013-11-29 10:19:17 | 只看该作者
其实grub最大的好处是模块化,需要使用哪些命令或功能,一般都在模块里,就像linux的驱动一样,例如需要访问ntfs分区,就插入ntfs模块:
insmod ntfs
这样你就可以使用ls命令列出ntfs分区的目录和访问哪些文件了,不然只能提示位置文件系统之类的提示……
你可以吧grub2想想成一个shell,
回复

使用道具 举报

7#
发表于 2013-12-2 16:10:21 | 只看该作者
大才到处有啊。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-28 06:42

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表