无忧启动论坛

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

[原创] NTBOOT & wimboot for UEFI GRUB2

    [复制链接]
211#
发表于 2021-5-4 18:22:02 | 只看该作者
wintoflash 发表于 2021-5-4 18:18
(1) 即使有 bug 我也不会去修。因为我前面已经说过了,本项目不再开发了。
(2) mkisofs 生成的 ISO 是正 ...

不是这个项目的事
回复

使用道具 举报

212#
发表于 2021-5-4 19:06:04 | 只看该作者
本帖最后由 hhh333 于 2021-5-4 20:10 编辑

换了个新版本的mkisofs再参考你的参数,终于可以了

比较了一下,主要是要有-boot-info-table参数,没这个就不行
回复

使用道具 举报

213#
发表于 2021-5-6 10:48:35 | 只看该作者
这个是做什么用的,可以介绍一下么?
回复

使用道具 举报

214#
发表于 2021-5-13 00:09:19 | 只看该作者
wimboot 在bios环境如何写?是不是就是把bootmgfw.efi改成bootmgr就可以了?
想把这个wimboot.mod编译进去,提示image is too big不知道哪么弄了,加insmod wimboot似乎也没用
回复

使用道具 举报

215#
发表于 2021-5-13 05:41:21 | 只看该作者
本帖最后由 hhh333 于 2021-5-13 05:46 编辑
hhh333 发表于 2021-5-13 00:09
wimboot 在bios环境如何写?是不是就是把bootmgfw.efi改成bootmgr就可以了?
想把这个wimboot.mod编译进去 ...

找到原因了,与wimboot相关的mod有5、6个,要全部放i386-pc。
"setjmp.mod"
"uuid.mod"
"wimboot.mod"
"lua.mod"
"map.mod"

总共是247kb,编译进去提示太大了,想必bios下的启动文件有大小限制?

回复

使用道具 举报

216#
发表于 2021-5-31 09:53:49 | 只看该作者
新手学习,感谢分享。
回复

使用道具 举报

217#
发表于 2021-6-8 15:03:32 | 只看该作者
請問如何將NTBOOT編譯成 GRUB4DOS UEFI可以呼叫使用
回复

使用道具 举报

218#
发表于 2021-6-8 15:15:30 | 只看该作者
hhh333 发表于 2021-5-13 05:41
找到原因了,与wimboot相关的mod有5、6个,要全部放i386-pc。
"setjmp.mod"
"uuid.mod"

你说的是BIOS情况下的grub2吧?可以用grub4dos去加载core.img,core.img可以打包到430KB左右。
要么就把你说的那些模块直接外置,用的时候用insmod加载,全部放i386-pc,外置的模块如果版本不对,会加载不了,必须确认都是一套版本。        
回复

使用道具 举报

219#
发表于 2021-6-8 15:21:26 | 只看该作者
minmax 发表于 2021-6-8 15:03
請問如何將NTBOOT編譯成 GRUB4DOS UEFI可以呼叫使用

NTloader: BIOS/UEFI 下用 GRUB4DOS 启动 VHD/WIM - GRUB4DOS - 无忧启动论坛 - Powered by Discuz! http://wuyou.net/forum.php?mod=viewthread&tid=423940
回复

使用道具 举报

220#
发表于 2021-6-8 16:36:20 | 只看该作者
本帖最后由 minmax 于 2021-6-8 16:38 编辑
liuzhaoyzz 发表于 2021-6-8 15:21
NTloader: BIOS/UEFI 下用 GRUB4DOS 启动 VHD/WIM - GRUB4DOS - 无忧启动论坛 - Powered by Discuz! http ...

NTBOOT NOT  NTLOADER
NTBOOT 在GRUB2下 測試可以用
但是還是習慣用GRUB4DOS 所以請教如何能在GRUB4DIS UEF下使用NTBOOT
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=417545
回复

使用道具 举报

221#
发表于 2021-6-8 17:17:28 | 只看该作者
minmax 发表于 2021-6-8 16:36
NTBOOT NOT  NTLOADER
NTBOOT 在GRUB2下 測試可以用
但是還是習慣用GRUB4DOS 所以請教如何能在GRUB4DI ...

g4e下面,wintoflash移植(或者说叫做功能重建)过去的,就是叫做ntloader!
回复

使用道具 举报

222#
发表于 2021-6-8 17:39:55 | 只看该作者
挺好的!!!!!
回复

使用道具 举报

223#
发表于 2021-6-21 10:45:41 | 只看该作者
停止开发,不再维护  可惜了
回复

使用道具 举报

224#
发表于 2021-6-27 17:06:38 | 只看该作者
按照我的理解 不再维护就是说 基本没BUG 了。不用再弄了。
回复

使用道具 举报

225#
发表于 2021-7-12 15:09:44 | 只看该作者
进来学习一下
回复

使用道具 举报

226#
发表于 2021-7-15 01:20:04 | 只看该作者
本帖最后由 minmax 于 2021-7-15 01:27 编辑

请教  -inject= 语法如何下 路径设为X:\
​ -inject=%systemroot% 之类的用法失败

> wimboot [OPTIONS] @:NAME:FILE
​> --inject=WIN32_PATH, -j 指定射入文件夹,省缺为\Windows\Syatem32
回复

使用道具 举报

227#
 楼主| 发表于 2021-7-15 15:33:13 | 只看该作者
minmax 发表于 2021-7-15 01:20
请教  -inject= 语法如何下 让 路径设为X:\
​ -inject=%systemroot% 之类的用法失败
> wimboot [OP ...

--inject=\\试试。我不确定是否能注入到根目录。
回复

使用道具 举报

228#
发表于 2021-7-16 00:46:35 | 只看该作者
本帖最后由 minmax 于 2021-7-19 14:22 编辑
wintoflash 发表于 2021-7-15 15:33
--inject=\\试试。我不确定是否能注入到根目录。

YES! 感謝能注入到根目录下目录PATH

回复

使用道具 举报

229#
 楼主| 发表于 2021-10-20 11:40:20 | 只看该作者
本帖最后由 wintoflash 于 2021-10-20 11:45 编辑
ksafei 发表于 2021-1-16 18:20
试了最新版grub2,不用 efi_connect_all NTBOOT 还是会报错。感谢W大还惦记着这个小问题

在 USBOS 的帖子下面讨论 grubfm 对楼主不太礼貌,因此我在自己的帖子里面做一些说明。
修改 boot/grubfm/rules/iso/winpe.lua 这个文件,在开头的 "winpe_wim_list " 这个表里面加上 USBOS 里面 WIM 的路径,就可以出自动菜单启动,
并且在启动后还可以自动挂载 ISO。
https://github.com/grub4dos/grub ... 5dc58bcbe878ce8019c
  1.     "(loop)/BOOT/H3_7PE.WIM",
  2. +  "(loop)/BOOT/NT10PEX64.WIM",
  3. +  "(loop)/BOOT/NT63PEX86.WIM",
  4.     "(loop)/Rescue/Rescue.wim",
  5.     "(loop)/boot/images/w7x64/w7x64.wim",
  6.   "(loop)/boot/images/w7x86/w7x86.wim",
复制代码

在 boot/grubfm/rules/iso/map.sh 里面,把
  1. map -f "${grubfm_file}";
复制代码

改为
  1. map -f -g "${grubfm_file}";
复制代码

就可以不写入兼容 GRUB4DOS 的 map 信息,这样就可以让 SVBus 无视 ISO 了。

对于懒人的话,可以点 "fork" 按钮,复刻到自己的仓库,在 "actions" 设置里面,启用 github actions。
然后找到对应文件,直接在网页上修改,提交之后就可以等github自动编译出成品。
比如我刚刚改的:https://github.com/grub4dos/grub2-filemanager/releases



回复

使用道具 举报

230#
发表于 2021-10-20 12:34:38 | 只看该作者
wintoflash 发表于 2021-10-20 11:40
在 USBOS 的帖子下面讨论 grubfm 对楼主不太礼貌,因此我在自己的帖子里面做一些说明。
修改 boot/grubf ...

非常感谢wintoflash大指点,学习了!
回复

使用道具 举报

231#
发表于 2022-1-21 10:33:03 | 只看该作者
GRUB2成功引导VHDX和差分,感谢wintoflash大!

部署方案见http://bbs.wuyou.net/forum.php?mod=viewthread&tid=428427&extra=page%3D1

grub.cfg增加vhdx引导项
menuentry "Windows 10 Pro VHDX" "/EFI/Microsoft/Boot/bootmgfw.efi" --unrestricted {
        if search --no-floppy --file --set $2 ; then
                ntboot --efi=$2 --vhd (hd0,gpt6)/Windows10Study.vhdx
        fi
}

初次引导后,发现UEFI启动序列被修改,增加了一个Windows Boot Manager,并在第一顺序,调整之

回复

使用道具 举报

232#
 楼主| 发表于 2022-1-21 14:46:29 | 只看该作者
风.轻扬 发表于 2022-1-21 10:33
GRUB2成功引导VHDX和差分,感谢wintoflash大!

部署方案见http://bbs.wuyou.net/forum.php?mod=viewthre ...

这个启动项是Windows自己加的。有些时候Windows会自己调整启动项顺序,有些时候不会,具体什么导致的不清楚。
回复

使用道具 举报

233#
发表于 2022-1-21 18:04:57 | 只看该作者
Grub2引导wim成功

grub.cfg增加引导项

menuentry "WinPE By Wimboot" "/EFI/Microsoft/Boot/bootmgfw.efi" --unrestricted {
        if search --no-floppy --file --set $2 ; then
                wimboot --rawwim @:bootmgfw.efi:$2 @:boot.wim:${imgpath}/winpe.wim;
        fi
}


回复

使用道具 举报

234#
 楼主| 发表于 2022-1-21 19:37:30 | 只看该作者
风.轻扬 发表于 2022-1-21 18:04
Grub2引导wim成功

grub.cfg增加引导项

启动普通分区(FAT/exFAT/NTFS)里面的wim,且不需要射入文件功能,推荐用 ntboot 命令,加载速度更快。
ntboot --efi=$2 --wim ${imgpath}/winpe.wim
回复

使用道具 举报

235#
发表于 2022-1-21 21:52:36 | 只看该作者
wintoflash 发表于 2022-1-21 19:37
启动普通分区(FAT/exFAT/NTFS)里面的wim,且不需要射入文件功能,推荐用 ntboot 命令,加载速度更快。
n ...

好的,谢谢wintoflash大!
回复

使用道具 举报

236#
发表于 2022-4-19 11:39:03 | 只看该作者
本帖最后由 mmc199 于 2022-4-19 13:12 编辑
wintoflash 发表于 2020-5-22 09:48
目前不能,因为用了一点汇编。
主要是没有 arm 设备,没法测试。

w大,您好!
这个项目现在支不支持arm64 aarch64 架构,还有如何在ubuntu20.04 arm64机子上编译出arm64-efi的全套二进制模块(需要包含ntboot.mod在oracle vps上 grub chainload armwin用,arm64的KVM虚拟机在video-VGA模式会卡死,需要更改到ramfb或者virtioGPU才能启动windows)
由于某些原因,ARM的KVM虚拟机开启VGA会导致宕机,所以TianoCore主线代码里面删除了对于ARM/ARM64的VGA支持,只支持virtio-gpu&ramfb
但是Windows只支持使用后两者进行显示
https://tieba.baidu.com/p/6839035154  

回复

使用道具 举报

237#
 楼主| 发表于 2022-4-19 18:22:21 | 只看该作者
本帖最后由 wintoflash 于 2022-4-19 18:28 编辑
mmc199 发表于 2022-4-19 11:39
w大,您好!
这个项目现在支不支持arm64 aarch64 架构,还有如何在ubuntu20.04 arm64机子上编译出arm64- ...

ntboot模块我限制了只在x86下编译。
以前用 rpi 3b 测试 ntboot/wimboot 启动winpe,直接卡死。后来 rpi 3b 坏了也就没法再研究了。估计是内存对齐的问题。

你直接下载下来是有 aarch64 的,不过没有 ntboot 模块。至于编译,你这都不算交叉编译,不用指定 toolchain 直接编译就行了。
回复

使用道具 举报

238#
发表于 2022-5-14 19:26:06 | 只看该作者
set fallback=1
这个语句为啥无效
回复

使用道具 举报

239#
发表于 2022-5-15 20:05:23 | 只看该作者
感谢W大制作分享!
回复

使用道具 举报

240#
发表于 2022-5-15 20:53:59 | 只看该作者
再顶
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-25 19:35

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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