无忧启动论坛

标题: 关于grub2-mkimage的疑惑? [打印本页]

作者: my9823    时间: 2014-12-11 21:43
标题: 关于grub2-mkimage的疑惑?
提供bootconfig.cfg写法(放置于HOME文件夹):
search.file /boot/grub/grub.cfg root
set prefix=($root)/boot/grub/
提供g2ldr生成命令写法:
sudo grub-mkimage -d /boot/grub/i386-pc -c bootconfig.cfg -o core.img -O i386-pc biosdisk part_msdos fat exfat ntfs ext2 iso9660 udf configfile search help  reiserfs font linux chain
sudo cat /boot/grub/i386-pc/lnxboot.img core.img > g2ldr

原来以为bootconfig.cfg是grub2的配置文件,后来才明白是生成core.img的选项,就是说core.img的内部内置了一个菜单,内容就是bootconfig .cfg内容,这两行是grub2的命令,查找 /boot/grub/grub.cfg,找到后将第一个找到此文件的分区名赋值给root,第二句是设定那些模块或者主题或者grub.cfg的路径为这个分区的boot/grub目录在使用insmod插入模块命令时,系统会在那个找到的分区的/boot/grub/i386-pc目录里着模块了?
另外如果运行:sudo cat /boot/grub/i386-pc/cdboot.img core.img >cdboot.bin
那这个cdboot.bin可以作为光盘引导文件了吧?前面那个img在i386目录里有很多类似的img,boot.img是硬盘的吧?

如果改成:
search.file /boot/xxxx/aaabbbccc root
set prefix=($root)/boot/grub/
configfile  xyz.cfg
确保grub目录下有aaabbbccc和菜单配置文件xyz.cfg
会不会最后生成的引导文件会在/boot/grub目录查找xyz.cfg,并显示相应菜单呢?或者第三行更本就不起作用,默认还是/boot/xxxx/grub.cfg?
有人试过么,
作者: my9823    时间: 2014-12-11 21:46
此外还有个-m参数,使用memdisk,这过选项能用在生成efi文件上么?生成单独全内置efi文件,所有模块都存在与内存盘上,不用担心找不到grub2模块目录,也不用担心grub2目录所在分区的文件系统无法访问的问题了?
作者: my9823    时间: 2014-12-11 21:48
这个memdisk有什么要求,只知道是cpio格式的,至于里边是不是grub2配置文件和一些模块以及字体等,就像boot/grub目录一样呢?》
作者: 2011895866818    时间: 2014-12-12 00:43
最后一句configfile  xyz.cfg

是有效的
作者: my9823    时间: 2014-12-12 05:56
谢谢告知,看来-c确实是定制内置菜单的。
作者: jneny    时间: 2014-12-21 00:19
my9823 发表于 2014-12-11 21:48
这个memdisk有什么要求,只知道是cpio格式的,至于里边是不是grub2配置文件和一些模块以及字体等,就像boot ...

memdisk是grub2的“内存盘设备”  目录结构和磁盘上是一样的。根设备表示为 (memdisk)

使用grub-mkimage生成的bios模式core.img文件不能过大。所以只要放些必要的 模块和文件即可。
使用efi则没有限制。我生成过包含了字体,背景图片的efi文件是8MB大小 也能运行。

如果改成:
search.file /boot/xxxx/aaabbbccc root
set prefix=($root)/boot/grub/
configfile  xyz.cfg
确保grub目录下有aaabbbccc和菜单配置文件xyz.cfg


xyz.cfg文件不能被找到。prefix是表示模块等文件的目录。root 是定义根。要写成:
configfile /xxx/xxx/xyz.cfg  文件的实际目录路径。


附件是grub2的文档,还有个“grub2中文info修订1.pdf”写的很全面。
grub2文档.7z (408.44 KB, 下载次数: 80)







欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3