无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 27831|回复: 51
打印 上一主题 下一主题

[讨论] 求指点简化GRUB4DOS引导Clover过程。

  [复制链接]
跳转到指定楼层
1#
发表于 2015-3-24 12:17:37 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
引导ISO格式的Clover很容易,menu.lst里写:

  1. title Clover 2.3k 3193 X64 (ISO)
  2. map --mem (hd0,0)/Clover-v2.3k-3193-X64.iso (hd32)
  3. map --hook
  4. chainloader (hd32)
  5. boot
复制代码



但这种方式有个很大的缺点,改变Clover的配置不容易,要重新构建iso文件。


从网上找了一个方法引导优盘中的Clover,很复杂:

1.把ISO中的所有内容拷贝到优盘。
  2.从.\usr\standalone\i386\x64中把boot7拷贝到优盘根目录.
  3.在优盘根目录建立CLOVER文件夹。
  4.下载附件BOOT1F32ALT7 ,解压放在优盘CLOVER文件中
  5.从.\usr\standalone\i386中把boot0md, boot0ss和boot0af拷贝到优盘CLOVER目录.
  6.在优盘根目录建立menu.lst文本文件,输入以下内容:

  1. iftitle [cat --locate="FAT32" --length=10 --skip=0x50 ()+1 > nul] Run Clover UEFI Boot Menu\n Run this if you wish to use Clover to UEFI boot
  2. set CL=0
  3. ## boot7 is default boot file
  4. cat --locate="BOOT7" --length=10 --skip=0x58 ()+1 > nul && set /a CL=%CL%+1 > nul
  5. if "%CL%"=="1" echo Information: Clover is already installed to the PBR
  6. ## configfile /menu.lst
  7. echo ffffffffff > (md)0x350+1
  8. dd if=(hd0,0)+1 of=(md)0x350+1 > nul
  9. dd if=()/clover/boot1f32alt7 of=(md)0x350+1 skip=87 seek=87 bs=1 > nul
  10. dd if=()/clover/boot1f32alt7 of=(md)0x350+1 count=3 bs=1 > nul
  11. #cat --hex (md)0x350+1 && pause
  12. if not "%CL%"=="1" cat --locate="SYSLINUX" --length=10 --skip=0x2 ()+1 > nul && pause PROBLEM: SYSLINUX PBR DETECTED - Cannot install Clover to PBR... && configfile /menu.lst
  13. if not "%CL%"=="1" dd if=(md)0x350+1 of=(hd0,0)+1 > nul && pause --wait=2 PBR updated with Clover boot code
  14. chainloader /clover/boot0md || chainloader /clover/boot0ss || chainloader /clover/boot0af
  15. # User can press 2 for 3 for 32-bit UEFI, 6 for 64-bit UEFI or 1 for Chameleon - within 2 seconds
  16. # boot0md gives a boot0 message and is slower - boot0ss is silent with no message
复制代码


上面的一堆东西看起来很复杂,其实功能就是把boot1f32alt7安装到优盘的PBR,运行一次后,menu.lst可改写成:

title Clover 2.3k 3193 X64
chainloader (hd0,0)/clover/boot0md || chainloader (hd0,0)/clover/boot0ss || chainloader (hd0,0)/clover/boot0af

分析了一下,其引导过程是 grldr->boot0md(其实是个MBR)->boot1f32alt7(其实是个PBR)->boot7(真正的Clover引导文件)

我试了一下,直接chainloader boot1f32alt7(其实是个PBR)不行,直接chainloader boot7提示“格式不对”

按照以前grub4dos引导“变色龙”(Chameleon)的方式:
kernel /boot7
也是提示“格式不对”

我想请教一下:有没有办法不用上述写入PBR的过程,直接用grldr chainloader 或 kernel一个文件的方式引导clover

附件放上Clover的MBR , PBR,和BOOT7文件。 CLOVER.zip (337.25 KB, 下载次数: 198)



参考网址

http://reboot.pro/topic/19809-uefi-boot-from-grub4dos/

Clover (有源代码)

http://sourceforge.net/projects/cloverefiboot/

推荐
发表于 2018-5-3 15:51:07 | 只看该作者
呵呵,你们的方法全试了,没有一个正确的

点评

链接: https://pan.baidu.com/s/1MXi5neF0xnXGwBOqZ8RzkQ 密码: gjt9  详情 回复 发表于 2018-7-3 10:39
回复

使用道具 举报

推荐
发表于 2015-3-24 17:11:31 | 只看该作者
本帖最后由 chromatin2 于 2015-3-24 18:10 编辑

楼主,知道软驱无敌法吗?妥妥的。


看看楼主的办法,我很佩服,那个menu都能写出来,我这方法,你懂的?







点评

你是指做成IMG镜像么?求详细  详情 回复 发表于 2015-3-24 17:18
回复

使用道具 举报

4#
发表于 2015-3-24 12:29:22 | 只看该作者
我是这样做的:

在MAC中安装Clover,再将安装好的复制到U盘EFI目录,然后下载ISO版的Clover,放到U盘任意位置,使用菜单

if exist ()/BOOT/IMGS/Clover2k-3050-X64.iso || find --set-root /BOOT/IMGS/Clover2k-3050-X64.iso
map ()/BOOT/IMGS/Clover2k-3050-X64.iso (0xff) || map --mem ()/BOOT/IMGS/Clover2k-3050-X64.iso (0xff)
map --rehook
chainloader (0xff)
boot

亲测,启动ISO后会读取U盘上的配置,所以,改U盘上的config.plist就可以了。

1.png (80.59 KB, 下载次数: 305)

1.png

点评

感谢热心指点。 不失为一个好方法。 如果有了解grub4dos原理的能改写一下Clover的MBR或PBR,能直接chainloader就好了。  详情 回复 发表于 2015-3-24 14:12

评分

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

查看全部评分

回复

使用道具 举报

5#
 楼主| 发表于 2015-3-24 14:12:12 | 只看该作者
527104427 发表于 2015-3-24 12:29
我是这样做的:

在MAC中安装Clover,再将安装好的复制到U盘EFI目录,然后下载ISO版的Clover,放到U盘任 ...

感谢热心指点。 不失为一个好方法。

如果有了解grub4dos原理的能改写一下Clover的MBR或PBR,能直接chainloader就好了。
回复

使用道具 举报

6#
 楼主| 发表于 2015-3-24 17:18:10 | 只看该作者
chromatin2 发表于 2015-3-24 17:11
楼主,知道软驱无敌法吗?妥妥的

你是指做成IMG镜像么?求详细

点评

感谢热心回复,惭愧,你的图我没看明白。 那一段menu.lst不是我写的,是一个老外写的,参见:http://reboot.pro/topic/19809-ueif-boot-from-grub4dos/  详情 回复 发表于 2015-3-24 22:42
回复

使用道具 举报

7#
发表于 2015-3-24 17:50:57 | 只看该作者
估计楼上跟我想的一样,直接将clover引导文件改名为bootmgr或grldr

点评

我以为是把所有的文件都放入一个IMG镜像,IMG镜像还是比较容易修改的。  详情 回复 发表于 2015-3-24 22:43
回复

使用道具 举报

8#
 楼主| 发表于 2015-3-24 22:42:01 | 只看该作者
2010twilight 发表于 2015-3-24 17:18
你是指做成IMG镜像么?求详细

感谢热心回复,惭愧,你的图我没看明白。

那一段menu.lst不是我写的,是一个老外写的,参见:http://reboot.pro/topic/19809-ueif-boot-from-grub4dos/

回复

使用道具 举报

9#
 楼主| 发表于 2015-3-24 22:43:06 | 只看该作者
527104427 发表于 2015-3-24 17:50
估计楼上跟我想的一样,直接将clover引导文件改名为bootmgr或grldr

我以为是把所有的文件都放入一个IMG镜像,IMG镜像还是比较容易修改的。

点评

clover 2.0到最新的3.85的启动文件都是一样的,可以作个空壳启动文件。 clover只要解压lzmax64的那个efi放到根目录就可以了,都不用在mac上安装。 最后,任何一个版本解压就ok了,都是那个空壳启动文件来启动。  详情 回复 发表于 2015-3-25 19:49
回复

使用道具 举报

10#
发表于 2015-3-25 19:49:55 | 只看该作者
本帖最后由 chromatin2 于 2015-3-26 13:59 编辑
2010twilight 发表于 2015-3-24 22:43
我以为是把所有的文件都放入一个IMG镜像,IMG镜像还是比较容易修改的。


clover 2.0到最新的3185的启动文件都是一样的,可以作个空壳启动文件。
clover只要解压lzmax64的那个efi放到根目录就可以了,都不用在mac上安装。

最后,任何一个版本解压就ok了,都是那个空壳启动文件来启动。其实就是楼上5大大方法的延伸。

点评

你说的空壳文件是指Clover-v2.3k-3193-X64.iso么,还是用cdboot自己做个iso? PS:Clover最新版都是 Cover v2.3k 加Build号, 现在最新版是 Clover v2.3k 3193, 莫非你说的“最新的3.85"是指Clover v2.3k 3185 ?  详情 回复 发表于 2015-3-26 09:30
回复

使用道具 举报

11#
 楼主| 发表于 2015-3-26 09:30:22 | 只看该作者
chromatin2 发表于 2015-3-25 19:49
clover 2.0到最新的3.85的启动文件都是一样的,可以作个空壳启动文件。
clover只要解压lzmax64的那个efi ...

你说的空壳文件是指Clover-v2.3k-3193-X64.iso么,还是用cdboot自己做个iso?

PS:Clover最新版都是 Cover v2.3k 加Build号, 现在最新版是 Clover v2.3k 3193,  莫非你说的“最新的3.85"是指Clover v2.3k 3185 ?

点评

是3185。自己做镜像。用Clover-v2.3k-3193-X64.iso的空壳没试过。  详情 回复 发表于 2015-3-26 14:00
回复

使用道具 举报

12#
发表于 2015-3-26 14:00:12 | 只看该作者
2010twilight 发表于 2015-3-26 09:30
你说的空壳文件是指Clover-v2.3k-3193-X64.iso么,还是用cdboot自己做个iso?

PS:Clover最新版都是 Co ...

是3185。自己做镜像。用Clover-v2.3k-3193-X64.iso的空壳没试过。
回复

使用道具 举报

13#
发表于 2015-3-26 23:35:29 | 只看该作者
本帖最后由 细细哥~ 于 2015-3-27 00:31 编辑

这个空壳文件我会制作:
clover64.rar (381.28 KB, 下载次数: 264)
clover32.rar (384.93 KB, 下载次数: 169)

  1. title  【XX】  启动 clover 64 四叶草 引导
  2. find --set-root /clover64.img
  3. map --mem /clover64.img (hd0)
  4. map --hook
  5. chainloader (hd0)+1

  6. title  【YY】  启动 clover 32 四叶草 引导
  7. find --set-root /clover32.img
  8. map --mem /clover32.img (hd0)
  9. map --hook
  10. chainloader (hd0)+1
复制代码


没有配置文件图:


有配置文件图:

点评

ee1
空壳文件怎么做的阿 ?  详情 回复 发表于 2015-11-18 11:53
感谢。请问你这两个IMG文件是怎么制作的。 我会用命令行 hdiutil makehybrid,重新打包生成iso文件。  详情 回复 发表于 2015-3-27 11:48
回复

使用道具 举报

14#
发表于 2015-3-26 23:39:13 | 只看该作者
本帖最后由 细细哥~ 于 2015-3-27 00:36 编辑

我以前在IT天空发过,不过实际测试有部分电脑不成功,只显示一个“6”
http://www.itiankong.net/thread-334576-1-3.html

另外,我在U盘上测试,
1、“Qemu启动测试器”测试情况:UD三分区的U盘“Qemu启动测试器”测试不成功。没有分区的,只有一个FAT32分区的可以成功。
2、实体机测试情况:IMG文件放在UD区测试不成功,放在其它两个区测试成功(NTFS+FAT),看样子“Qemu启动测试器”与实际情况有出入。
回复

使用道具 举报

15#
 楼主| 发表于 2015-3-27 11:48:39 | 只看该作者
细细哥~ 发表于 2015-3-26 23:35
这个空壳文件我会制作:

感谢。请问你这两个IMG文件是怎么制作的。
我会用命令行 hdiutil makehybrid,重新打包生成iso文件。
回复

使用道具 举报

16#
发表于 2015-3-31 12:41:25 | 只看该作者
膜拜下高人!
回复

使用道具 举报

17#
发表于 2015-5-17 18:44:50 | 只看该作者
527104427 发表于 2015-3-24 12:29
我是这样做的:

在MAC中安装Clover,再将安装好的复制到U盘EFI目录,然后下载ISO版的Clover,放到U盘任 ...

您好,请教一下.
按您的方法配置后,启动后卡在cdboot done的地方.
我的U盘分了两个区,不知道是不是和这个有关系,请问有其他方法能启动吗?
谢谢!

点评

不行就用这个吧: http://bbs.wuyou.net/forum.php?mod=viewthread&tid=366522&extra=page%3D1  详情 回复 发表于 2015-5-17 18:59
回复

使用道具 举报

18#
发表于 2015-5-17 18:59:39 | 只看该作者
lansi 发表于 2015-5-17 18:44
您好,请教一下.
按您的方法配置后,启动后卡在cdboot done的地方.
我的U盘分了两个区,不知道是不是和这 ...

不行就用这个吧:

http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1
回复

使用道具 举报

19#
发表于 2015-5-18 10:06:07 | 只看该作者
527104427 发表于 2015-5-17 18:59
不行就用这个吧:

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=366522&extra=page%3D1

您好,我的目的并不是做一个clover启动u盘,而是想集成多个引导工具,用grub4dos。
现在已经能够启动常规Linux,变色龙,按您的方法,在qemu中能够启动,(两种模式,一种是启动iso,一种是img模式),但是实体机无法启动。望指点一二,谢谢!

点评

clover有x86和x64两个iso,x86的不行就试x64的,以实机的efi 位数为准  详情 回复 发表于 2015-5-18 10:40
回复

使用道具 举报

20#
发表于 2015-5-18 10:40:06 | 只看该作者
lansi 发表于 2015-5-18 10:06
您好,我的目的并不是做一个clover启动u盘,而是想集成多个引导工具,用grub4dos。
现在已经能够启动常 ...

clover有x86和x64两个iso,x86的不行就试x64的,以实机的efi 位数为准
回复

使用道具 举报

21#
发表于 2015-5-18 14:17:43 | 只看该作者
527104427 发表于 2015-5-18 10:40
clover有x86和x64两个iso,x86的不行就试x64的,以实机的efi 位数为准

您好。x86和x64都试过了。qemu里可以启动的。但是实体机器无法引导成功。
一台笔记本,一台台式机,没有更多机器测试了,也不确定是否个例。
如果是单个分区的话,用楼主一开始的方法,写入pbr扇区,可以成功从u盘启动。
但是分区之后就不行。
回复

使用道具 举报

22#
发表于 2015-5-18 22:23:19 | 只看该作者
用reFinder吧,这个四叶太费劲

点评

原来你是指The rEFInd Boot Manager,多了er,怪不得搜索不到  发表于 2015-5-26 16:59
回复

使用道具 举报

23#
发表于 2015-9-14 00:00:29 | 只看该作者
这帖子沉下去了吗?
回复

使用道具 举报

24#
发表于 2015-9-14 00:03:20 | 只看该作者
2010twilight 发表于 2015-3-24 14:12
感谢热心指点。 不失为一个好方法。

如果有了解grub4dos原理的能改写一下Clover的MBR或PBR,能直接cha ...

那我就按这个方案执行一下看看如何。
回复

使用道具 举报

25#
发表于 2015-9-14 00:08:18 | 只看该作者
2010twilight 发表于 2015-3-24 14:12
感谢热心指点。 不失为一个好方法。

如果有了解grub4dos原理的能改写一下Clover的MBR或PBR,能直接cha ...

那如果把U盘换成硬盘是否可行,也就是说我的EFI目录放在硬盘上会如何?请指教!
回复

使用道具 举报

26#
发表于 2015-9-14 00:11:18 | 只看该作者
chromatin2 发表于 2015-3-24 17:11
楼主,知道软驱无敌法吗?妥妥的。

就上几张图也没说个方案,搞什么。
回复

使用道具 举报

27#
发表于 2015-9-14 00:12:47 | 只看该作者
chromatin2 发表于 2015-3-24 17:11
楼主,知道软驱无敌法吗?妥妥的。

不管是否可行,先把iso改成img,然后用img方式载入看看可行否。
回复

使用道具 举报

28#
发表于 2015-11-18 11:51:15 | 只看该作者
本帖最后由 ee1 于 2015-11-18 11:57 编辑

http://reboot.pro/topic/19809-uefi-boot-from-grub4dos/     这个菜单 非常 牛!   再次 膜拜高人!

我 用的这个
title Clover

map   (hd0,0)/Clover.iso (hd32)

map --hook

chainloader (hd32)

boot
回复

使用道具 举报

29#
发表于 2015-11-18 11:53:14 | 只看该作者
细细哥~ 发表于 2015-3-26 23:35
这个空壳文件我会制作:

空壳文件怎么做的阿 ?
回复

使用道具 举报

30#
发表于 2016-4-1 11:01:33 | 只看该作者
请问这些都是放在U 盘上执行的吗?放在硬盘上可以不?
回复

使用道具 举报

31#
发表于 2017-5-20 20:53:23 | 只看该作者
今天试了下 grub4dos引导clover.iso根本不行啊!!
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-24 13:28

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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