无忧启动论坛

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

[发布] =====GRUB2_EFI&BIOS双启动=====

    [复制链接]
跳转到指定楼层
1#
发表于 2016-3-4 02:11:06 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 2012angelkyo 于 2016-11-26 22:44 编辑


grub2 EFI
和BIOS双启动制作说明:
1.首先格式化需要制作成双启动磁盘的第一个分区为FAT32格式
2.然后打开Bootice,选择好磁盘后,点主引导记录—恢复—选择恢复文件g2ldr.mbr,点击恢复。.

为以防万一,恢复之前可先备份一下:

3.复制压缩包里的2个文件夹到第一步所格式化的那个分区里。

4.制作完成。
对于BIOS已经可以启动GRUB2了,BIOS的菜单文件为\boot\grub\grub-bios.cfg
用Notepad++打开自行修改添加你的启动项,不懂的请自行百度
不要用Windows的文本编辑它,会改变它的编码,那就无法启动了。
对于UEFI主板,只需要把EFI文件夹放到EFI分区里,然后用Bootice添加一个启动项。
首先用CMD命令行(管理员权限)的diskpart命令挂载你的EFI分区,如何挂载自行百度。
然后:

Done.
目录结构说明

目录名,文件名,请不要乱改。
你能改的只能是grub-bios.cfg这个菜单的内容。这是BIOS主板的启动菜单。
grub-efi-64.cfg,这是UEFI主板的启动菜单。
重要的事情再说一遍,请用Notepad++修改它们的内容,添加你的启动项。
你下载的主题包,解压后的文件夹,放在/boot/grub/themes下面,然后修改启动菜单就能就能更换主题了。

比如你下载的主题解压后文件夹名字为StylishDark,那么只需要将上图箭头部份的Vimix修改为StylishDark就行了。
链接:http://pan.baidu.com/s/1i56ZIz7 密码:vcts



评分

参与人数 5无忧币 +25 收起 理由
wuxin9712 + 5
某些人 + 5 赞一个!
有阴也有阳 + 5 很给力!
2011cwj6958 + 5 赞一个!
shan + 5 很给力! 谢谢分享

查看全部评分

推荐
 楼主| 发表于 2016-3-4 02:20:53 | 只看该作者
本帖最后由 2012angelkyo 于 2016-3-4 16:05 编辑

附相关文件的代码(基于grub-2.02~beta2-for-windows),能看懂的就看,看不懂就算了
EFI单文件批处理

  1. cd /d %~dp0
  2. mkdir out\boot\grub\x86_64-efi
  3. xcopy /s /e /y /i x86_64-efi out\boot\grub\x86_64-efi

  4. mkdir out\boot\grub\locale
  5. copy /y locale\zh_CN\grub.mo out\boot\grub\locale\zh_CN.mo
  6. copy /y grub.cfg out\boot\grub\grub.cfg

  7. mkdir out\boot\grub\fonts
  8. copy /y unicode.pf2  out\boot\grub\fonts
  9. copy /y background.png out\boot\grub\

  10. cd out
  11. find ./boot -print|cpio -o -H newc > ./memdisk.cpio
  12. cd ..
  13. grub-mkimage.exe -m out\memdisk.cpio -d out\boot\grub\x86_64-efi -c out\grub-bootstrap.cfg -p (memdisk)/boot/grub -O x86_64-efi -o .\out\bootx64.efi -v newc iso9660 part_msdos part_gpt ext2 cpio memdisk blocklist minicmd loopback fat ntfs gfxterm reboot configfile normal echo test gfxmenu gfxterm search

  14. @pause
  15. cd out
  16. rmdir /s /q boot
  17. del /s /q memdisk.cpio
复制代码
grub-bootstrap.cfg内容
  1. normal (memdisk)/boot/grub/grub.cfg
复制代码
grub.cfg内容,此文件在memdisk.cpio里面
  1. if [ "${grub_platform}" == "efi" ]; then
  2.         if [ "${grub_cpu}" == "x86_64" ]; then
  3.                 if        search -s -f /boot/grub/grub-efi-64.cfg ; then
  4.                         echo "Reading (${root})/boot/grub/grub-efi-64.cfg"
  5.                         configfile /boot/grub/grub-efi-64.cfg
  6.                 else
  7.                         echo "Could not find grub-efi-64.cfg file!"
  8.                 fi
  9.         fi
  10.         
  11.         if [ "${grub_cpu}" == "i386" ]; then
  12.                 if        search -s -f /boot/grub/grub-efi-32.cfg ; then
  13.                         echo "Reading (${root})/boot/grub/grub-efi-32.cfg"
  14.                         configfile /boot/grub/grub-efi-32.cfg
  15.                 else
  16.                         echo "Could not find grub-efi-32.cfg file!"
  17.                 fi
  18.         fi
  19. else
  20.         if [ "${grub_platform}" == "pc" ]; then
  21.                 if [ "${grub_cpu}" == "i386" ]; then
  22.                         if        search -s -f /boot/grub/grub-bios.cfg ; then
  23.                                 echo "Reading (${root})/boot/grub/grub-bios.cfg"
  24.                                 configfile /boot/grub/grub-bios.cfg
  25.                         else
  26.                                 echo "Could not find grub-bios.cfg file!"
  27.                         fi
  28.                 fi
  29.         else
  30.                 echo "unknow platform!"
  31.         fi
  32. fi
复制代码

find & cpio  for windows
find&cpio_windows.7z (639.09 KB, 下载次数: 340)




点评

不错,学习了!  发表于 2016-7-1 11:15

评分

参与人数 2无忧币 +10 收起 理由
2011cwj6958 + 5 很给力!
ql1307096 + 5 很给力!

查看全部评分

回复

使用道具 举报

推荐
发表于 2016-11-26 06:44:45 | 只看该作者
回复

使用道具 举报

推荐
 楼主| 发表于 2016-3-4 15:01:21 | 只看该作者
2011cwj6958 发表于 2016-3-4 13:53
先赞一个,一个与众不同的模板,目录结构简单清爽。
提个建议,BIOS版能直接引导g2ldr.mbr文件就更加方便

可以啊,菜单里自己添加一个启动项呗。。。

点评

我的意思是用其他的引导比如Windows的bcd或者 Grub4DOS的grldr,直接引导g2ldr.mbr文件  详情 回复 发表于 2016-3-4 16:04
回复

使用道具 举报

推荐
发表于 2016-3-4 13:53:16 | 只看该作者
先赞一个,一个与众不同的模板,目录结构简单清爽。
提个建议,BIOS版能直接引导g2ldr.mbr文件就更加方便

点评

可以啊,菜单里自己添加一个启动项呗。。。  详情 回复 发表于 2016-3-4 15:01
回复

使用道具 举报

推荐
发表于 2016-3-4 11:37:43 | 只看该作者
LZ给力啊!!GRUB2什么时候可以跟G4D一样强大呢???
回复

使用道具 举报

推荐
发表于 2016-3-4 10:13:39 | 只看该作者
顶,好帖,这个版块太安静了!
回复

使用道具 举报

推荐
发表于 2016-3-4 09:39:40 | 只看该作者
顶帖子,谢谢分享技术,
回复

使用道具 举报

推荐
 楼主| 发表于 2016-3-4 02:26:21 | 只看该作者
本帖最后由 2012angelkyo 于 2016-3-4 16:03 编辑

BIOS版批处理
  1. cd /d %~dp0

  2. mkdir out\boot\grub\i386-pc
  3. xcopy /s /e /y /i i386-pc out\boot\grub\i386-pc

  4. mkdir out\boot\grub\locale
  5. copy /y locale\zh_CN\grub.mo out\boot\grub\locale\zh_CN.mo
  6. copy /y grub.cfg out\boot\grub\grub.cfg

  7. mkdir out\boot\grub\fonts
  8. copy /y unicode.pf2  out\boot\grub\fonts
  9. copy /y background.png out\boot\grub\


  10. grub-mkimage.exe -d i386-pc -C auto -c out\grub-bootstrap-bios.cfg -p /boot/grub -o .\out\core.img -O i386-pc -v biosdisk loopback tar part_msdos fat exfat ntfs search_fs_file

  11. copy /B out\boot.img + out\core.img out\g2ldr

  12. @pause
复制代码
执行完批处理,进入out文件里夹,用7zip手动压缩boot文件夹为memdisk.tar,然后将它放到最终成品的boot/grub/下面。

grub-bootstrap-bios.cfg内容
  1. search.file /boot/grub/grub-bios.cfg root
  2. loopback memdisk /boot/grub/memdisk.tar
  3. set prefix=(memdisk)/boot/grub
  4. insmod part_gpt
  5. insmod iso9660
  6. insmod memdisk
  7. insmod ext2
  8. insmod blocklist
  9. insmod echo
  10. insmod test
  11. insmod configfile
  12. normal (memdisk)/boot/grub/grub.cfg
复制代码

(memdisk)/boot/grub/grub.cfg内容跟EFI版一样,看楼上。。。



回复

使用道具 举报

10#
发表于 2016-3-4 16:04:22 | 只看该作者
本帖最后由 2011cwj6958 于 2016-3-4 16:23 编辑

我的意思是用其他的引导比如Windows的bcd或者 Grub4DOS的grldr,直接引导g2ldr.mbr文件 换句话说就是不修改原来引导的从其他的引导环境进入grub2,
回复

使用道具 举报

11#
发表于 2016-3-4 16:04:43 | 只看该作者
2012angelkyo 发表于 2016-3-4 15:01
可以啊,菜单里自己添加一个启动项呗。。。

我的意思是用其他的引导比如Windows的bcd或者 Grub4DOS的grldr,直接引导g2ldr.mbr文件
回复

使用道具 举报

12#
发表于 2016-3-4 19:21:50 | 只看该作者
貌似不错哦
回复

使用道具 举报

13#
发表于 2016-4-8 11:19:23 | 只看该作者
用了下,虚拟机里面没有问题,实机测试的时候引导PE花屏!!! 又用了神雕的winly,没有出现花屏现象
回复

使用道具 举报

14#
发表于 2016-4-8 11:19:33 | 只看该作者
用了下,虚拟机里面没有问题,实机测试的时候引导PE花屏!!! 又用了神雕的winly,没有出现花屏现象
回复

使用道具 举报

15#
发表于 2016-4-17 18:23:22 | 只看该作者
专门注册来感谢楼主的。非常好的在windows下定制grub2的范例。
回复

使用道具 举报

16#
发表于 2016-4-17 18:26:30 | 只看该作者
2011cwj6958 发表于 2016-3-4 16:04
我的意思是用其他的引导比如Windows的bcd或者 Grub4DOS的grldr,直接引导g2ldr.mbr文件

实测BCD和Grub4DOS可以引导压缩包中的g2ldr.mbr
回复

使用道具 举报

17#
发表于 2016-4-26 13:22:14 | 只看该作者
谢谢提供
回复

使用道具 举报

18#
发表于 2016-4-26 16:02:37 | 只看该作者
我试试,老是不行啊
回复

使用道具 举报

19#
发表于 2016-4-26 16:02:41 | 只看该作者
我试试,老是不行啊
回复

使用道具 举报

20#
发表于 2016-4-28 19:15:37 | 只看该作者
这么眼熟,楼主在恩山上做的三启动软路由也是这个界面
回复

使用道具 举报

21#
发表于 2016-6-6 16:27:15 | 只看该作者
不错不错,值得学习啊!












励志故事 li96.com
回复

使用道具 举报

22#
发表于 2016-6-26 13:45:10 | 只看该作者
好多啊,哈哈,谢谢您
回复

使用道具 举报

23#
发表于 2016-7-1 11:17:56 | 只看该作者
请教下楼主:uefi模式下grub2引导win7失败。使用chainloader (hd0,1)/efi/microsoft/boot/bootmgfw.efi,试了一下,使用grub2引导win7的bootmgfw.efi,xorboot.efi都是失败,只能引导shell.efi。然后在shell下引导win7

点评

路径写错了。 应该为 (hd0,msdos2) (mbr分区表) 或者为 (hd0,gpt2) (gpt分区表)  详情 回复 发表于 2016-7-1 20:46
回复

使用道具 举报

24#
发表于 2016-7-1 18:51:33 | 只看该作者
EFI模式使用gurb2的chainloader能启动win10吗?我的电脑启动不了,。
回复

使用道具 举报

25#
发表于 2016-7-1 20:46:56 | 只看该作者
本帖最后由 wintoflash 于 2016-7-1 20:48 编辑
ql1307096 发表于 2016-7-1 11:17
请教下楼主:uefi模式下grub2引导win7失败。使用chainloader (hd0,1)/efi/microsoft/boot/bootmgfw.efi,试 ...


路径写错了。grub2的分区表示方法和grub4dos不一样。
应该为 (hd0,msdos2) (mbr分区表)
或者为 (hd0,gpt2) (gpt分区表)

点评

路径没错,可以用TAB键补全,改成(hd0,gpt1)/这样的也是一样的错误。  详情 回复 发表于 2016-7-1 21:14
回复

使用道具 举报

26#
发表于 2016-7-1 21:14:41 | 只看该作者
wintoflash 发表于 2016-7-1 20:46
路径写错了。grub2的分区表示方法和grub4dos不一样。
应该为 (hd0,msdos2) (mbr分区表)
或者为 (hd0, ...

路径没错,可以用TAB键补全,改成(hd0,gpt1)/这样的也是一样的错误。
回复

使用道具 举报

27#
发表于 2016-7-3 21:11:16 | 只看该作者
真希望我能看懂
回复

使用道具 举报

28#
发表于 2016-10-14 16:13:48 | 只看该作者
下载看看,学习中
回复

使用道具 举报

29#
发表于 2016-10-14 16:36:56 来自手机 | 只看该作者
回复

使用道具 举报

30#
发表于 2016-10-17 10:40:31 | 只看该作者
您好,你的这个作品,从任何角度,是我见过最优美的!!
回复

使用道具 举报

31#
发表于 2016-11-4 06:09:42 | 只看该作者
资源已经失效,楼主能否补下资源到百度盘?多谢
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-22 20:38

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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