2010twilight 发表于 2015-3-24 12:17:37

求指点简化GRUB4DOS引导Clover过程。

引导ISO格式的Clover很容易,menu.lst里写:

title Clover 2.3k 3193 X64 (ISO)
map --mem (hd0,0)/Clover-v2.3k-3193-X64.iso (hd32)
map --hook
chainloader (hd32)
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文本文件,输入以下内容:

iftitle Run Clover UEFI Boot Menu\n Run this if you wish to use Clover to UEFI boot
set CL=0
## boot7 is default boot file
cat --locate="BOOT7" --length=10 --skip=0x58 ()+1 > nul && set /a CL=%CL%+1 > nul
if "%CL%"=="1" echo Information: Clover is already installed to the PBR
## configfile /menu.lst
echo ffffffffff > (md)0x350+1
dd if=(hd0,0)+1 of=(md)0x350+1 > nul
dd if=()/clover/boot1f32alt7 of=(md)0x350+1 skip=87 seek=87 bs=1 > nul
dd if=()/clover/boot1f32alt7 of=(md)0x350+1 count=3 bs=1 > nul
#cat --hex (md)0x350+1 && pause
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
if not "%CL%"=="1" dd if=(md)0x350+1 of=(hd0,0)+1 > nul && pause --wait=2 PBR updated with Clover boot code
chainloader /clover/boot0md || chainloader /clover/boot0ss || chainloader /clover/boot0af
# User can press 2 for 3 for 32-bit UEFI, 6 for 64-bit UEFI or 1 for Chameleon - within 2 seconds
# 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文件。



参考网址

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

Clover (有源代码)

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

ziluopao 发表于 2018-5-3 15:51:07

呵呵,你们的方法全试了,没有一个正确的

chromatin2 发表于 2015-3-24 17:11:31

本帖最后由 chromatin2 于 2015-3-24 18:10 编辑

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


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







527104427 发表于 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就可以了。

2010twilight 发表于 2015-3-24 14:12:12

527104427 发表于 2015-3-24 12:29
我是这样做的:

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

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

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

2010twilight 发表于 2015-3-24 17:18:10

chromatin2 发表于 2015-3-24 17:11
楼主,知道软驱无敌法吗?妥妥的

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

527104427 发表于 2015-3-24 17:50:57

估计楼上跟我想的一样,直接将clover引导文件改名为bootmgr或grldr

2010twilight 发表于 2015-3-24 22:42:01

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

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

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

2010twilight 发表于 2015-3-24 22:43:06

527104427 发表于 2015-3-24 17:50
估计楼上跟我想的一样,直接将clover引导文件改名为bootmgr或grldr

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

chromatin2 发表于 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大大方法的延伸。

2010twilight 发表于 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 ?

chromatin2 发表于 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的空壳没试过。

细细哥~ 发表于 2015-3-26 23:35:29

本帖最后由 细细哥~ 于 2015-3-27 00:31 编辑

这个空壳文件我会制作:



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

title【YY】启动 clover 32 四叶草 引导
find --set-root /clover32.img
map --mem /clover32.img (hd0)
map --hook
chainloader (hd0)+1

没有配置文件图:


有配置文件图:

细细哥~ 发表于 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启动测试器”与实际情况有出入。

2010twilight 发表于 2015-3-27 11:48:39

细细哥~ 发表于 2015-3-26 23:35
这个空壳文件我会制作:




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

ee1 发表于 2015-3-31 12:41:25

膜拜下高人!

lansi 发表于 2015-5-17 18:44:50

527104427 发表于 2015-3-24 12:29
我是这样做的:

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

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

527104427 发表于 2015-5-17 18:59:39

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

不行就用这个吧:

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

lansi 发表于 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模式),但是实体机无法启动。望指点一二,谢谢!

527104427 发表于 2015-5-18 10:40:06

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

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

lansi 发表于 2015-5-18 14:17:43

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

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

devilma 发表于 2015-5-18 22:23:19

用reFinder吧,这个四叶太费劲

linzifu 发表于 2015-9-14 00:00:29

这帖子沉下去了吗?

linzifu 发表于 2015-9-14 00:03:20

2010twilight 发表于 2015-3-24 14:12
感谢热心指点。 不失为一个好方法。

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

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

linzifu 发表于 2015-9-14 00:08:18

2010twilight 发表于 2015-3-24 14:12
感谢热心指点。 不失为一个好方法。

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

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

linzifu 发表于 2015-9-14 00:11:18

chromatin2 发表于 2015-3-24 17:11
楼主,知道软驱无敌法吗?妥妥的。




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

linzifu 发表于 2015-9-14 00:12:47

chromatin2 发表于 2015-3-24 17:11
楼主,知道软驱无敌法吗?妥妥的。




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

ee1 发表于 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

ee1 发表于 2015-11-18 11:53:14

细细哥~ 发表于 2015-3-26 23:35
这个空壳文件我会制作:




空壳文件怎么做的阿 ?

yoshubom 发表于 2016-4-1 11:01:33

请问这些都是放在U 盘上执行的吗?放在硬盘上可以不?

无翼的炽天使 发表于 2017-5-20 20:53:23

今天试了下 grub4dos引导clover.iso根本不行啊!!
页: [1] 2
查看完整版本: 求指点简化GRUB4DOS引导Clover过程。