无忧启动论坛

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

[求助] 恳请哪位大侠出手,制作一个全模块的 grub2

[复制链接]
跳转到指定楼层
1#
发表于 2020-11-2 21:41:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 blank007 于 2020-11-5 20:37 编辑

恳请哪位大侠出手,制作一个 wintoflash 大侠版本、全模块的 grub2 ? legacy 的就不用做了。有请大侠出手。先谢过了。



2020.11.05 补充:

根据 wintoflash 大侠指导,对其 grub2 2020.11.04 版,去除了如下模块:

ahci、ehci、ohci、uhci、scsi、ata、pata、usbms、nativedisk

解压wintotoflash大侠的压缩包,将 x64.cmd、x86.cmd 放在含有 grub-mkimage.exe 的目录下,执行 x64.cmd 、x86.cmd 分别生成不包含上述模块的 Bootx64.efi 、Bootia32.efi

请注意 .cmd 文件内容:默认的菜单文件 Grub.cfg 应在 /efi/grub/x64 、/efi/grub/x86  下各放一个

熟悉的朋友请自行调整参数

wintoflash大侠的grub2下载地址:

https://github.com/a1ive/grub/re ... grub2-latest.tar.gz

x86.zip

1.35 KB, 下载次数: 24, 下载积分: 无忧币 -2

x64.zip

1.35 KB, 下载次数: 29, 下载积分: 无忧币 -2

2#
发表于 2020-11-2 22:04:55 | 只看该作者
这里有2020.10.21做的UEFI启动模板:
http://wuyou.net/forum.php?mod=v ... &extra=page%3D1
wintoflash的grub2文件管理器用到的模块都有。可自定义的配置文件为mygrub2.cfg。

点评

多谢。这就去学习  详情 回复 发表于 2020-11-2 22:18
回复

使用道具 举报

3#
发表于 2020-11-2 22:05:46 | 只看该作者
下载压缩包之后解压,双击 "build_grub.bat",不就行了吗。
"全模块" 是不可能的。部分模块只是供少数特殊情况下使用的,正常情况下不能乱用,加上了反而坏事。

点评

是的,多谢分享 !!!!!!!  发表于 2024-2-23 20:05
使用如下命令,对大侠的版本,将所有的 .mod 文件生成 Bootx64.efi 成功,但不能进入菜单,只能进入命令行。各命令看起来正常,但不能执行,说root变量没有设置。另外,在进入命令行之前,有信息一闪而过,但太快了  详情 回复 发表于 2020-11-4 09:40
多谢。 用过大侠的这个,但似乎只能生成 ia32 的,不能生成 legacy 和 x64 的。 另外,对于文件驱动,我主要希望能涵盖 msdos 、windows、linux、mac 、cdrom 系统的各类 .mod 。还有能 chainloader 操作系统  详情 回复 发表于 2020-11-2 22:18
回复

使用道具 举报

4#
 楼主| 发表于 2020-11-2 22:18:03 | 只看该作者
wintoflash 发表于 2020-11-2 22:05
下载压缩包之后解压,双击 "build_grub.bat",不就行了吗。
"全模块" 是不可能的。部分模块只是供少数特殊 ...

多谢。

用过大侠的这个,但似乎只能生成 ia32 的,不能生成 legacy 和 x64 的。

另外,对于文件驱动,我主要希望能涵盖 msdos 、windows、linux、mac 、cdrom 系统的各类 .mod 。还有能 chainloader 操作系统 windows 、linux 、mac 的 booter。

点评

论坛上有好几个制作帖子,可以修改加入模块部分的文件。  详情 回复 发表于 2020-11-3 12:59
[attachimg]467801[/attachimg] 可以生成 x86_64-efi 和 i386-pc 的啊。  详情 回复 发表于 2020-11-2 22:49
回复

使用道具 举报

5#
 楼主| 发表于 2020-11-2 22:18:29 | 只看该作者
pseudo 发表于 2020-11-2 22:04
这里有2020.10.21做的UEFI启动模板:
http://wuyou.net/forum.php?mod=viewthread&tid=420392&extra=page%3 ...

多谢。这就去学习
回复

使用道具 举报

6#
发表于 2020-11-2 22:43:17 | 只看该作者
完全不懂怎么抄刀
回复

使用道具 举报

7#
发表于 2020-11-2 22:49:06 | 只看该作者
blank007 发表于 2020-11-2 22:18
多谢。

用过大侠的这个,但似乎只能生成 ia32 的,不能生成 legacy 和 x64 的。


可以生成 x86_64-efi 和 i386-pc 的啊。

点评

刚刚试了一下,WinXP下,一个.bat 文件确实不能生成 3 个 grub2 ,但分开执行可以。  详情 回复 发表于 2020-11-2 22:59
可能是因为我在 WinXP 下操作的原因。 ia32 的生成在第一个位置,x64、legacy 的在后面。估计是 modules 变量在影响。也许,分开操作会全部成功。  详情 回复 发表于 2020-11-2 22:56
回复

使用道具 举报

8#
 楼主| 发表于 2020-11-2 22:56:35 | 只看该作者
wintoflash 发表于 2020-11-2 22:49
可以生成 x86_64-efi 和 i386-pc 的啊。

可能是因为我在 WinXP 下操作的原因。

ia32 的生成在第一个位置,x64、legacy 的在后面。估计是 modules 变量在影响。也许,分开操作会全部成功。
回复

使用道具 举报

9#
 楼主| 发表于 2020-11-2 22:59:51 | 只看该作者
wintoflash 发表于 2020-11-2 22:49
可以生成 x86_64-efi 和 i386-pc 的啊。

刚刚试了一下,WinXP下,一个.bat 文件确实不能生成 3 个 grub2 ,但分开执行可以。

点评

使用如下命令,对大侠的版本,将所有的 .mod 文件生成 Bootx64.efi 成功,但不能进入菜单,只能进入命令行。各命令看起来正常,但不能执行,说root变量没有设置。另外,在进入命令行之前,有信息一闪而过,但太快了  详情 回复 发表于 2020-11-4 09:39
回复

使用道具 举报

10#
发表于 2020-11-3 07:13:03 | 只看该作者
高手如林!
回复

使用道具 举报

11#
发表于 2020-11-3 12:59:24 | 只看该作者
本帖最后由 2011cwj6958 于 2020-11-3 13:33 编辑
blank007 发表于 2020-11-2 22:18
多谢。

用过大侠的这个,但似乎只能生成 ia32 的,不能生成 legacy 和 x64 的。

论坛上有好几个制作帖子,可以修改加入模块部分的文件。
wintoflashNTBOOT & wimboot for UEFI GRUB2
jebbs 一键生成Grub2三启ISO[原创]
2012angelkyo  ===GRUB2一键定制批处理===小白必备利器!

2010eflying  [发布] 发个GRUB2单文件定制版工具






点评

wintoflash grub2-latest版本制作后需要自己建立相关目录,拷贝制作修改文件  详情 回复 发表于 2020-11-4 12:19
请大侠看看14楼,指点一二。多谢。  详情 回复 发表于 2020-11-4 09:41
回复

使用道具 举报

12#
发表于 2020-11-3 13:39:01 | 只看该作者
很好。。。。
回复

使用道具 举报

13#
 楼主| 发表于 2020-11-4 09:39:06 | 只看该作者
blank007 发表于 2020-11-2 22:59
刚刚试了一下,WinXP下,一个.bat 文件确实不能生成 3 个 grub2 ,但分开执行可以。

使用如下命令,对大侠的版本,将所有的 .mod 文件生成 Bootx64.efi 成功,但不能进入菜单,只能进入命令行。各命令看起来正常,但不能执行,说root变量没有设置。另外,在进入命令行之前,有信息一闪而过,但太快了,没有看清楚。
请大侠开示一下原因。谢谢


grub-mkimage -d x86_64-efi -p /efi/grub -o Bootx64.efi -O x86_64-efi acpi adler32 affs afs ahci all_video aout appleldr archelp ata at_keyboard backtrace bfs bitmap bitmap_scale blocklist boot bsd bswap_test btrfs bufio cat cbfs cbls cbmemc cbtable cbtime chain cmdline_cat_test cmp cmp_test configfile cpio cpio_be cpuid crc64 crypto cryptodisk cs5536 ctz_test date datehook datetime disk diskfilter div div_test dm_nv echo efifwsetup efinet efi_gop efi_uga ehci elf eval exfat exfctest ext2 extcmd f2fs fat file fixvideo font fshelp functional_test gcry_arcfour gcry_blowfish gcry_camellia gcry_cast5 gcry_crc gcry_des gcry_dsa gcry_idea gcry_md4 gcry_md5 gcry_rfc2268 gcry_rijndael gcry_rmd160 gcry_rsa gcry_seed gcry_serpent gcry_sha1 gcry_sha256 gcry_sha512 gcry_tiger gcry_twofish gcry_whirlpool geli gettext gfxmenu gfxterm gfxterm_background gfxterm_menu gptsync gzio halt hashsum hdparm hello help hexdump hfs hfsplus hfspluscomp http iorw iso9660 jfs jpeg keylayouts keystatus ldm legacycfg legacy_password_test linux linux16 loadbios loadenv loopback ls lsacpi lsefi lsefimmap lsefisystab lsmmap lspci lssal luks lvm lzopio macbless macho mdraid09 mdraid09_be mdraid1x memdisk memrw minicmd minix minix2 minix2_be minix3 minix3_be minix_be mmap morse mpi msdospart multiboot multiboot2 mul_test nativedisk net newc nilfs2 normal ntfs ntfscomp odc offsetio ohci parttool part_acorn part_amiga part_apple part_bsd part_dfly part_dvh part_gpt part_msdos part_plan part_sun part_sunpc password password_pbkdf2 pata pbkdf2 pbkdf2_test pcidump pgp play png priority_queue probe procfs progress raid5rec raid6rec random rdmsr read reboot regexp reiserfs relocator romfs scsi search search_fs_file search_fs_uuid search_label serial setjmp setjmp_test setpci sfs shift_test shim_lock signature_test sleep sleep_test spkmodem squash4 strtoull_test syslinuxcfg tar terminal terminfo test testload testspeed test_blockarg tftp tga time tpm tr trig true udf ufs1 ufs1_be ufs2 uhci usb usbms usbserial_common usbserial_ftdi usbserial_pl2303 usbserial_usbdebug usbtest usb_keyboard verifiers video videoinfo videotest videotest_checksum video_bochs video_cirrus video_colors video_fb wrmsr xfs xnu xnu_uuid xnu_uuid_test xzio zfs zfscrypt zfsinfo zstd


点评

补充一下我是怎么把这么多 .mod 全列出到命令中的: 1.进入相应的目录,使用 dir /b *.mod >>mod.txt。 2.记事本打开 mod.txt ,把".mod"这4个字符替换为 空格。保存。 3. 打开word,读入 mod.txt ,使用 word  详情 回复 发表于 2020-11-4 09:46
回复

使用道具 举报

14#
 楼主| 发表于 2020-11-4 09:40:04 | 只看该作者
wintoflash 发表于 2020-11-2 22:05
下载压缩包之后解压,双击 "build_grub.bat",不就行了吗。
"全模块" 是不可能的。部分模块只是供少数特殊 ...

使用如下命令,对大侠的版本,将所有的 .mod 文件生成 Bootx64.efi 成功,但不能进入菜单,只能进入命令行。各命令看起来正常,但不能执行,说root变量没有设置。另外,在进入命令行之前,有信息一闪而过,但太快了,没有看清楚。
请大侠开示一下原因。谢谢


grub-mkimage -d x86_64-efi -p /efi/grub -o Bootx64.efi -O x86_64-efi acpi adler32 affs afs ahci all_video aout appleldr archelp ata at_keyboard backtrace bfs bitmap bitmap_scale blocklist boot bsd bswap_test btrfs bufio cat cbfs cbls cbmemc cbtable cbtime chain cmdline_cat_test cmp cmp_test configfile cpio cpio_be cpuid crc64 crypto cryptodisk cs5536 ctz_test date datehook datetime disk diskfilter div div_test dm_nv echo efifwsetup efinet efi_gop efi_uga ehci elf eval exfat exfctest ext2 extcmd f2fs fat file fixvideo font fshelp functional_test gcry_arcfour gcry_blowfish gcry_camellia gcry_cast5 gcry_crc gcry_des gcry_dsa gcry_idea gcry_md4 gcry_md5 gcry_rfc2268 gcry_rijndael gcry_rmd160 gcry_rsa gcry_seed gcry_serpent gcry_sha1 gcry_sha256 gcry_sha512 gcry_tiger gcry_twofish gcry_whirlpool geli gettext gfxmenu gfxterm gfxterm_background gfxterm_menu gptsync gzio halt hashsum hdparm hello help hexdump hfs hfsplus hfspluscomp http iorw iso9660 jfs jpeg keylayouts keystatus ldm legacycfg legacy_password_test linux linux16 loadbios loadenv loopback ls lsacpi lsefi lsefimmap lsefisystab lsmmap lspci lssal luks lvm lzopio macbless macho mdraid09 mdraid09_be mdraid1x memdisk memrw minicmd minix minix2 minix2_be minix3 minix3_be minix_be mmap morse mpi msdospart multiboot multiboot2 mul_test nativedisk net newc nilfs2 normal ntfs ntfscomp odc offsetio ohci parttool part_acorn part_amiga part_apple part_bsd part_dfly part_dvh part_gpt part_msdos part_plan part_sun part_sunpc password password_pbkdf2 pata pbkdf2 pbkdf2_test pcidump pgp play png priority_queue probe procfs progress raid5rec raid6rec random rdmsr read reboot regexp reiserfs relocator romfs scsi search search_fs_file search_fs_uuid search_label serial setjmp setjmp_test setpci sfs shift_test shim_lock signature_test sleep sleep_test spkmodem squash4 strtoull_test syslinuxcfg tar terminal terminfo test testload testspeed test_blockarg tftp tga time tpm tr trig true udf ufs1 ufs1_be ufs2 uhci usb usbms usbserial_common usbserial_ftdi usbserial_pl2303 usbserial_usbdebug usbtest usb_keyboard verifiers video videoinfo videotest videotest_checksum video_bochs video_cirrus video_colors video_fb wrmsr xfs xnu xnu_uuid xnu_uuid_test xzio zfs zfscrypt zfsinfo zstd

回复

使用道具 举报

15#
 楼主| 发表于 2020-11-4 09:41:17 | 只看该作者
2011cwj6958 发表于 2020-11-3 12:59
论坛上有好几个制作帖子,可以修改加入模块部分的文件。
wintoflash的 NTBOOT & wimboot for UEFI GRUB2 ...

请大侠看看14楼,指点一二。多谢。

点评

wintoflash grub2-latest版本制作后需要自己建立相关目录,拷贝制作修改文件  详情 回复 发表于 2020-11-4 12:19
回复

使用道具 举报

16#
 楼主| 发表于 2020-11-4 09:46:26 | 只看该作者
本帖最后由 blank007 于 2020-11-4 10:17 编辑
blank007 发表于 2020-11-4 09:39
使用如下命令,对大侠的版本,将所有的 .mod 文件生成 Bootx64.efi 成功,但不能进入菜单,只能进入命令 ...

补充一下我是怎么把这么多 .mod 全列出到命令中的:

1.进入相应的目录,使用 dir /b *.mod >>mod.txt。
2.记事本打开 mod.txt ,把".mod"这4个字符替换为 空格。保存。
3. 打开word,读入  mod.txt ,使用 word 的替换功能:替换 ^p 为空格。
4. 将word 中的内容复制到 grub-mkimage 命令的 模块列表中,执行生成命令。

以上均在 WinXP、word 2003、记事本下完成。出现问题难道是因为系统过低?

回复

使用道具 举报

17#
发表于 2020-11-4 10:47:58 来自手机 | 只看该作者
严重怀疑菜单文件格式不是utf-8

点评

菜单是utf8格式的,用其它版本的 grub2 验证过  详情 回复 发表于 2020-11-4 11:20
回复

使用道具 举报

18#
发表于 2020-11-4 11:11:43 来自手机 | 只看该作者
另外只见过包含必要模块,并且内置memdisk和菜单的,具体你这样的很少见啊!

点评

哈哈。不是少见,恐怕是头一次见到哦。 我想使用全模块,是因为好奇,也希望能方便一些。 至于出现的问题,我怀疑是参数过长,以至于操作系统、grub-mkimage 没有处理全。  详情 回复 发表于 2020-11-4 11:24
回复

使用道具 举报

19#
 楼主| 发表于 2020-11-4 11:20:50 | 只看该作者
my9823 发表于 2020-11-4 10:47
严重怀疑菜单文件格式不是utf-8

菜单是utf8格式的,用其它版本的 grub2 验证过
回复

使用道具 举报

20#
 楼主| 发表于 2020-11-4 11:24:16 | 只看该作者
my9823 发表于 2020-11-4 11:11
另外只见过包含必要模块,并且内置memdisk和菜单的,具体你这样的很少见啊!

哈哈。不是少见,恐怕是头一次见到哦。

我想使用全模块,是因为好奇,也希望能方便一些。

至于出现的问题,我怀疑是参数过长,以至于操作系统、grub-mkimage 没有处理全。

点评

===GRUB2一键定制批处理===小白必备利器!可以制作  详情 回复 发表于 2020-11-4 13:01
我前面说过,"全模块" 是不可行的。我在压缩包里面给出的列表,就是比较合适的,如果还有额外的需要,再单独加上就行了。 比如,ahci 与固件提供的磁盘读写功能冲突,加载了 ahci 之后 efidisk 或 biosdisk 就不能  详情 回复 发表于 2020-11-4 12:30
回复

使用道具 举报

21#
发表于 2020-11-4 12:19:17 | 只看该作者
blank007 发表于 2020-11-4 09:41
请大侠看看14楼,指点一二。多谢。

wintoflash grub2-latest版本制作后需要自己建立相关目录,拷贝制作修改文件
回复

使用道具 举报

22#
发表于 2020-11-4 12:19:55 | 只看该作者
本帖最后由 2011cwj6958 于 2020-11-4 12:43 编辑
2011cwj6958 发表于 2020-11-3 12:59
论坛上有好几个制作帖子,可以修改加入模块部分的文件。
wintoflash的 NTBOOT & wimboot for UEFI GRUB2 ...

wintoflash grub2-latest版本制作后需要自己建立相关目录,拷贝制作修改文件 最关键有 /boot/grub/grub.cfg




]


回复

使用道具 举报

23#
发表于 2020-11-4 12:30:34 | 只看该作者
blank007 发表于 2020-11-4 11:24
哈哈。不是少见,恐怕是头一次见到哦。

我想使用全模块,是因为好奇,也希望能方便一些。

我前面说过,"全模块" 是不可行的。我在压缩包里面给出的列表,就是比较合适的,如果还有额外的需要,再单独加上就行了。
比如,ahci 与固件提供的磁盘读写功能冲突,加载了 ahci 之后 efidisk 或 biosdisk 就不能用了。
ehci, uhci, ata, pata, scsi 也是同样的道理。

点评

感谢您的指点。去掉您说的模块后,生成的“全模块”可以正常运行了。说正常,只是做了简单的测试,菜单可以进入,也可以进入命令行操作了。多谢。 另外,使用的是您 2020.11.02 版本。  详情 回复 发表于 2020-11-4 14:33
回复

使用道具 举报

24#
发表于 2020-11-4 13:01:53 | 只看该作者
本帖最后由 2011cwj6958 于 2020-11-4 13:34 编辑
blank007 发表于 2020-11-4 11:24
哈哈。不是少见,恐怕是头一次见到哦。

我想使用全模块,是因为好奇,也希望能方便一些。

===GRUB2一键定制批处理===小白必备利器!可以制作UEFⅠ版本可以全部打包到bootx64.efi文件里,还可以包括字体,主题。bios则受大小限制。要外置一个模块包










点评

谢谢提醒。BIOS下,我用 grub4dos  详情 回复 发表于 2020-11-4 14:44
回复

使用道具 举报

25#
发表于 2020-11-4 13:36:33 来自手机 | 只看该作者
我的是全模块,不过不是最新版,efi文件太大了,十来兆一个。

点评

这段时间W大版本更新的频繁,才制作好又出新了。现在是2020 1102版  详情 回复 发表于 2020-11-4 13:43
回复

使用道具 举报

26#
发表于 2020-11-4 13:43:40 | 只看该作者
本帖最后由 2011cwj6958 于 2020-11-4 13:47 编辑
窄口牛 发表于 2020-11-4 13:36
我的是全模块,不过不是最新版,efi文件太大了,十来兆一个。
不打包主题不超10,打包的话就大了。
这段时间W大版本更新的频繁,才制作好又出新了。现在是2020
1102版
回复

使用道具 举报

27#
发表于 2020-11-4 14:13:00 来自手机 | 只看该作者
最好的方法就是只集成w大默认的模块,内置菜单查找包含其他模块的memdisk并loopback,然后作为扩展diy菜单外置。
回复

使用道具 举报

28#
发表于 2020-11-4 14:14:54 来自手机 | 只看该作者
只需要三个文件:bootx64.efi  压缩的memdisk    外置菜单
回复

使用道具 举报

29#
 楼主| 发表于 2020-11-4 14:33:13 | 只看该作者
wintoflash 发表于 2020-11-4 12:30
我前面说过,"全模块" 是不可行的。我在压缩包里面给出的列表,就是比较合适的,如果还有额外的需要,再 ...

感谢您的指点。去掉您说的模块后,生成的“全模块”可以正常运行了。说正常,只是做了简单的测试,菜单可以进入,也可以进入命令行操作了。多谢。

另外,使用的是您 2020.11.02 版本。
回复

使用道具 举报

30#
 楼主| 发表于 2020-11-4 14:36:23 | 只看该作者
本帖最后由 blank007 于 2020-11-4 16:28 编辑

感谢所有大侠的热心帮助。

我使用 wintoflash 大侠 2020.11.02 版本,并在大侠的指导下,生成了“全模块”的 Bootia32.efi 和 Bootx64.efi 。

这个“全模块”去掉了 wintoflash 大侠提到的、会影响正常读写的 ata 、ehci 、scsi 、uhci 、pata 模块。


另外,附上本人的相应  .cmd  文件。恭请各位大侠继续指导!

菜单文件位置请自行修改

x86.zip

1.36 KB, 下载次数: 12, 下载积分: 无忧币 -2

x64.zip

1.35 KB, 下载次数: 18, 下载积分: 无忧币 -2

点评

查了一下,还有 usbms,ohci,nativedisk  详情 回复 发表于 2020-11-4 14:55
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-25 08:17

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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