无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: hilsonma

[分享] Grub2的简单使用

    [复制链接]
发表于 2019-12-31 12:01:39 | 显示全部楼层
hilsonma 发表于 2019-12-31 10:39
是啊,现在grub2支持map启动iso.
不过我没有走过安装程序,不知走安装程序会不会改写efi引导

win原版安装镜像没有你说的那么简单。
回复

使用道具 举报

 楼主| 发表于 2019-12-31 14:48:37 | 显示全部楼层
wintoflash 发表于 2019-12-31 12:01
win原版安装镜像没有你说的那么简单。

哦。因为我一直是用别人的精简版,没有装过原版镜像,所以不知道。受教了,谢谢。
回复

使用道具 举报

发表于 2019-12-31 15:26:49 | 显示全部楼层
hilsonma 发表于 2019-12-31 10:33
grub2.efi在定制生成的时候就指定了配置文件的,可以在启动之后重新指定,不过是有特殊需要才这样的,一 ...

多谢,也就是说,只能启动以后再更改
回复

使用道具 举报

 楼主| 发表于 2019-12-31 17:58:32 | 显示全部楼层
本帖最后由 hilsonma 于 2019-12-31 19:25 编辑

请今天早上8:47后下载过我的自用grub2启动模板的朋友,重新下载。

我更改文件夹结构后忘记更新bcd文件了,会导致grub2引导主菜单第二菜单项启动PE出错,因为boot.sdi的存放位置改变了。现在已更新为正确位置的bcd,请重新下载。

造成不便敬请原谅。
回复

使用道具 举报

发表于 2019-12-31 19:06:56 来自手机 | 显示全部楼层
hilsonma 发表于 2019-12-31 10:16
我刚试了,这样定制没有问题:

估计是个案,官网2.02版没问题,w
大的试了几个版本也都没问题,不知官网的的2.04版怎么回事!谢谢你耐心的指导!
回复

使用道具 举报

发表于 2020-1-2 11:06:49 | 显示全部楼层
好好好
回复

使用道具 举报

发表于 2020-1-2 20:02:57 | 显示全部楼层

膜拜并学习
回复

使用道具 举报

发表于 2020-1-8 21:20:35 | 显示全部楼层
支持教程
回复

使用道具 举报

发表于 2020-1-11 21:46:18 | 显示全部楼层
你好,楼主,我有个问题向你请教
1,能否做个双启动的ISO模板?
2,g2ldr哪里下载?
光盘引导grub2的文件哪里下载?
3.里面那么多文件,能否集成到一个文件里面,有洁癖,
谢谢楼主能抽空给回复一下!
回复

使用道具 举报

 楼主| 发表于 2020-1-11 23:12:15 | 显示全部楼层
zhxy9804 发表于 2020-1-11 21:46
你好,楼主,我有个问题向你请教
1,能否做个双启动的ISO模板?
2,g2ldr哪里下载?
1,能否做个双启动的ISO模板?

我不使用ISO模板,所以没有学会做ISO模板
如果是做启动U盘,就用8楼的模板做uefi启动,用附件的模板做bios启动
g4d.7z (2.06 MB, 下载次数: 132)
回复

使用道具 举报

发表于 2020-1-12 17:07:45 来自手机 | 显示全部楼层
h能不能把所有文件打包,放到内存用,
回复

使用道具 举报

发表于 2020-1-12 17:11:30 来自手机 | 显示全部楼层
我好像在哪里见过,这种方式,定制时把所有文件打包,加载到内存,然后从内存加载,前几天我试了一下,失败了,水平有限,没办法,等高手支招
回复

使用道具 举报

 楼主| 发表于 2020-1-12 18:56:32 | 显示全部楼层
wangziqiang 发表于 2020-1-12 17:11
我好像在哪里见过,这种方式,定制时把所有文件打包,加载到内存,然后从内存加载,前几天我试了一下,失败 ...

wintoflash那个run.efi应该就是你说的那个方式,所有文件封装成一个efi文件。
他的贴子里也附了源码,你可以学着做。

grub2作为一款启动器,我谋求的是最快地启动操作系统,我觉得我目前的方式是最有效率的,什么时候我发现更有效率的方式我再作改进。
回复

使用道具 举报

发表于 2020-1-12 21:06:07 来自手机 | 显示全部楼层
hilsonma 发表于 2020-1-12 18:56
wintoflash那个run.efi应该就是你说的那个方式,所有文件封装成一个efi文件。
他的贴子里也附了源码,你 ...

w大神的我在用,确实是挺方便的。你的菜单我也在用,两者各有千秋!顺便请教个问题,grub2菜单中当前目录,怎么写。?
回复

使用道具 举报

 楼主| 发表于 2020-1-12 22:25:56 | 显示全部楼层
wangziqiang 发表于 2020-1-12 21:06
w大神的我在用,确实是挺方便的。你的菜单我也在用,两者各有千秋!顺便请教个问题,grub2菜单中当前目录 ...

grub2现在没有当前目录的变量,只有当前分区的变量root,grub2中叫root设备。
你在grub2命令行中输入set就可以看到当前grub2有哪些环境变量。
其中prefix是配置文件grub.cfg所在目录,cmdpath是启动文件bootx64.efi(grubx64.efi)所在目录,这两个变量在合适的时候可以使用。

在grub2中一般都是要使用全路径的,即设备名(分区)开始直到文件扩展名为止。多数时候可以省略设备名,这时默认根设备即root变量所指分区。部分命令可以使用相对路径,这时没有写全的部分都是使用命令默认值,如果不知道默认值就老实写全路径,这样可以减少路径出错。
回复

使用道具 举报

发表于 2020-1-13 02:34:36 来自手机 | 显示全部楼层
hilsonma 发表于 2020-1-12 22:25
grub2现在没有当前目录的变量,只有当前分区的变量root,grub2中叫root设备。
你在grub2命令行中输入set ...

谢谢!
回复

使用道具 举报

 楼主| 发表于 2020-1-16 20:34:11 | 显示全部楼层
本帖最后由 hilsonma 于 2020-1-16 20:45 编辑
wangziqiang 发表于 2020-1-12 17:11
我好像在哪里见过,这种方式,定制时把所有文件打包,加载到内存,然后从内存加载,前几天我试了一下,失败 ...
@zhxy9804 @wangziqiang
附件就是你要的全打包方式。将附件的bootx64.efi替换到 \efi\boot\bootx64.efi 就是我的启动模板。
第一个菜单项启动Windows需要将附件的bcd放到 Windows分区 \Windows\Boot\EFI
第二个菜单项启动WinPE需要将你的PE镜像wim文件命名为pe.wim放到任一分区的根目录,包括藏到ESP.
第三个菜单项将任意分区根目录下的pe目录列为自动菜单,你也可以将你的菜单文件放到pe目录自动成为子菜单
boot.7z (833.71 KB, 下载次数: 79)
回复

使用道具 举报

发表于 2020-1-16 21:36:24 | 显示全部楼层
hilsonma 发表于 2020-1-16 20:34
@zhxy9804 @wangziqiang
附件就是你要的全打包方式。将附件的bootx64.efi替换到 \efi\boot\bootx64.efi  ...

收到了,感谢啊
回复

使用道具 举报

发表于 2020-1-17 08:36:19 | 显示全部楼层
本帖最后由 zhxy9804 于 2020-1-17 08:42 编辑
hilsonma 发表于 2020-1-16 20:34
@zhxy9804 @wangziqiang
附件就是你要的全打包方式。将附件的bootx64.efi替换到 \efi\boot\bootx64.efi  ...

你好,我想你还是没明白我说的意思,我的意思就是想要个模板
模板的作用就是搞明白逻辑结构,谁启动谁,谁引导谁
你也看到,我做过bootmgr的双启动模板,已经搞清了逻辑结构
现在这个uefi的grub2好搞,bios的呢,还是一头雾水
所以我想要个双启动的bios模板,搞明白文件结构,尤其是bios版本的光盘启动逻辑
回复

使用道具 举报

发表于 2020-1-17 09:10:54 | 显示全部楼层
zhxy9804 发表于 2020-1-17 08:36
你好,我想你还是没明白我说的意思,我的意思就是想要个模板
模板的作用就是搞明白逻辑结构,谁启动谁,谁引 ...

BIOS下为啥非得用GRUB2?
GRUB4DOS 不好吗。
回复

使用道具 举报

发表于 2020-1-17 10:13:14 | 显示全部楼层
wintoflash 发表于 2020-1-17 09:10
BIOS下为啥非得用GRUB2?
GRUB4DOS 不好吗。

感谢大神回话
是这样子的,我看你开发的grub2,可以载入硬盘img,就是那种海蜘蛛 爱快等公司做的那种硬盘img
回复

使用道具 举报

发表于 2020-1-17 10:14:22 | 显示全部楼层
zhxy9804 发表于 2020-1-17 10:13
感谢大神回话
是这样子的,我看你开发的grub2,可以载入硬盘img,就是那种海蜘蛛 爱快等公司做的那种硬盘im ...

BIOS下有这功能?我咋不知道。
回复

使用道具 举报

发表于 2020-1-17 10:33:19 | 显示全部楼层
wintoflash 发表于 2020-1-17 10:14
BIOS下有这功能?我咋不知道。

http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1
你写的这篇,既然uefi下能用,bios下不能用吗?
盼回复!
回复

使用道具 举报

发表于 2020-1-17 10:56:06 | 显示全部楼层
zhxy9804 发表于 2020-1-17 10:33
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=417233&extra=page%3D1
你写的这篇,既然uefi下能用 ...

???
不是很懂你的逻辑。
当然不行。
回复

使用道具 举报

发表于 2020-1-17 14:45:17 | 显示全部楼层
wintoflash 发表于 2020-1-17 10:56
???
不是很懂你的逻辑。
当然不行。

好,明白
那还是麻烦告诉一下grub2双启动光盘的做法吧,我想了解一下结构跟原理
回复

使用道具 举报

 楼主| 发表于 2020-1-17 16:07:55 | 显示全部楼层
zhxy9804 发表于 2020-1-17 08:36
你好,我想你还是没明白我说的意思,我的意思就是想要个模板
模板的作用就是搞明白逻辑结构,谁启动谁,谁引 ...

其实我没有看到你做的bootmgr的双启动模板,所以不太明白你的意思。
bootmgr是ms在bios平台下的启动管理器,哪来的双启,如果是指bios/uefi双启,那ms的就是bootmgr/bootmgfw.efi,grub2的就是g2ldr/grubx64.efi/grubia32.efi
但你下面又来个双启动的bios模板,我就又不明白你的真实意愿了,我搞不清楚你的概念。

bios是之前的电脑主板rom上的基本开机程序,现在的一般是uefi,由于习惯上的原因,也有人把现在的uefi叫做uefi-bios,如果非要这样叫,就要带上传统bios和uefi-bios这样对应着叫,让人明白。我建议就叫bios和uefi,传统的bios就叫bios,新的bios其实是uefi就叫uefi.

如果你是指这两个平台的启动叫双启,那我现在是bios下用g4d,uefi下用grub2, 不是一定要双平台都用同一种启动软件。
回复

使用道具 举报

 楼主| 发表于 2020-1-17 16:44:06 | 显示全部楼层
zhxy9804 发表于 2020-1-17 10:33
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=417233&extra=page%3D1
你写的这篇,既然uefi下能用 ...

磁盘仿真,本来就是g4d早就有了,而grub2没有,所以wintoflash就开发出来的,是应用在uefi平台的。
如果你留意并学习wintoflash的grubfm的话就能发现,他的grubfm在bios平台下也是调用g4d的.

bios是基于中断的,就是int13, int9 之类。而uefi 是没有这些概念的,所以两个平台下的引导是并不能相通的。
有人已经在bios下模拟uefi并成功,而uefi下模拟bios还没有应该也没有必要。毕竟现在新出的电脑都是uefi,bios随着旧电脑的淘汰会逐渐消失。
回复

使用道具 举报

发表于 2020-1-17 17:00:40 | 显示全部楼层
本帖最后由 zhxy9804 于 2020-1-17 17:08 编辑

双启动,就是bios跟uefi都适应,的确是两套文件比如我做的双启动光盘都是bootmgr,只是bootgmr分两种形式罢了

我要的就是grub2的两种形式,
我看那个core.img,
回复

使用道具 举报

 楼主| 发表于 2020-1-17 17:02:33 | 显示全部楼层
zhxy9804 发表于 2020-1-17 14:45
好,明白
那还是麻烦告诉一下grub2双启动光盘的做法吧,我想了解一下结构跟原理

基于我前面的表达,如果你的双启是指bios/uefi双启的话,就没有必要一定做grub2双启,虽然也可以做到。在bios下我始终觉得g4d比grub2好,双启都用grub2的话唯一的好处就是可以共用一个菜单文件,菜单文件而已,有必要一定用同一个吗?一个菜单文件的内容,将其不同平台的部分,分成两个菜单文件来表达,或者会更简单更清晰吧。

所以真的做双启光盘,可以bootmgr/bootmgfw.efi,也可以g4d/grub2 (grldr/grubx64.efi)
你可以参考微PE的双启光盘,就是bootmgr/bootmgfw.efi的
将bootmgr换成grldr,将bootmgfw.efi换成grubx64.efi 就可以了,当然菜单文件(配置文件)要相应更改(包括路径)
同理,如果你硬要bios下用grub2引导,就把bootmgr换成g2ldr就可以了
要注意的是,bootmgr是支持udf文件系统的,而grldr/g2ldr是不支持的。
回复

使用道具 举报

发表于 2020-1-17 17:33:02 | 显示全部楼层
hilsonma 发表于 2020-1-17 17:02
基于我前面的表达,如果你的双启是指bios/uefi双启的话,就没有必要一定做grub2双启,虽然也可以做到。在 ...

bios下g2确实不能与g4d比,efi下那没得比。但网络启动g2不行,无论是bios还是efi,网启应该来说是ipxe的天下。

点评

明白,谢谢。我前面的表达不包括网启,我对网启不熟悉。目前我只对本地启动有一定的了解,网启还没有涉及。  详情 回复 发表于 2020-1-17 17:48
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-29 13:48

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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