无忧启动论坛

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

[已解决] legacy+grub4dos+ntboot引导win7.vhd失败{添加bios+g4d引导vhd的多个写法}

  [复制链接]
61#
 楼主| 发表于 2025-11-26 13:50:34 | 只看该作者
本帖最后由 qj_tzy 于 2025-11-26 13:51 编辑
chen463 发表于 2025-11-24 16:48
title Boot from Windows VHD
find --set-root /Win7.vhd
map --mem /Win7.vhd (hd0)

看到您的回复,我很高兴,因我试过用g4d+map,及g4e+map来引导win7_x64.vhd及win8.1_x64.vhdx均失败,非常希望能学会这种引导方法。
我的内存较小,装不下上述vhd之一。但我对2个vhd均作了如下处理:
1.在根目录拷入bootmgr及\boot\bcd,bcd作了设置(在电脑管理中,若该vhd虚拟为X:盘,就设该bcd为从X:盘启动的分区系统,见24楼),还将bootvhd.dll文件拷入\boot\目录下。
2.拷bcd及bootx64.efi到\efi\boot\目录下,bcd如上作了设置。

如何用g4d+map及g4e+map引导vhd系统,还望得到您的热心指点,谢谢!

回复

使用道具 举报

62#
发表于 2025-11-26 14:03:02 | 只看该作者
好。。。。。。。。。。。。。
回复

使用道具 举报

63#
发表于 2025-11-26 14:07:50 | 只看该作者
qj_tzy 发表于 2025-11-26 13:50
看到您的回复,我很高兴,因我试过用g4d+map,及g4e+map来引导win7_x64.vhd及win8.1_x64.vhdx均失败,非 ...

内存不够就别试了,因为map --mem就是把vhd装载到内存。
回复

使用道具 举报

64#
发表于 2025-11-26 14:09:54 | 只看该作者
qj_tzy 发表于 2025-11-26 13:15
还用grub4dos的2019-02-22版+ntboot的2014版,引导win8.1_x64.vhdx,能正常引导进入系统桌面。
电脑中未 ...

用grub4dos+ntboot引导vhd,跟你硬盘上安装的系统没有关系,你没装win10/win11,也可以用来引导win10的vhd。vhd里已经包含了win10运行需要的所有东西,哪怕你电脑没硬盘,从移动硬盘上也可以这样启动win10系统。但win7系统貌似不能运行在移动设备上,所以估计无法正常启动。
回复

使用道具 举报

65#
发表于 2025-11-26 14:13:41 | 只看该作者
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=333863
http://bbs.wuyou.net/forum.php?m ... 863&pid=2926654


十几年前就发生的事,现在重新复习一次,老大们真是无所事作,哈…
回复

使用道具 举报

66#
发表于 2025-11-26 14:18:20 | 只看该作者
本帖最后由 chen463 于 2025-11-26 14:28 编辑
qj_tzy 发表于 2025-11-26 13:50
看到您的回复,我很高兴,因我试过用g4d+map,及g4e+map来引导win7_x64.vhd及win8.1_x64.vhdx均失败,非 ...

W大大的新版本 NTloader,我实测过WIM和VHD(X),真的好用,G4D、G4E、GRUB2-BIOS和EFI都行
http://bbs.wuyou.net/forum.php?m ... 3940&extra=page%3D1


  1. title [bios} VHD-kernel+ntloader-/PE10/Win10-22H2-pro.vhdx
  2. find --set-root /PE10/Win10-22H2-pro.vhdx
  3. uuid ()
  4. find --set-root /efi/grub/ext/ntloader
  5. kernel /efi/grub/ext/ntloader uuid=%?% file=/PE10/Win10-22H2-pro.vhdx
  6. initrd /efi/grub/ext/initrd.cpio
  7. boot
复制代码
  1. title [EFI]Boot Windows NT6+ VHD /PE11/Win11-22H2-Home.vhdx
  2. find --set-root /PE11/Win11-22H2-Home.vhdx
  3. uuid ()
  4. find --set-root /efi/grub/ext/ntloader
  5. kernel /efi/grub/ext/ntloader uuid=%?_UUID% vhd=/PE11/Win11-22H2-Home.vhdx
  6. initrd /efi/grub/ext/initrd.cpio



复制代码


点评

这个我已在grub2、grub4dos和refind中均作过测试,感谢您的热心回复!  详情 回复 发表于 2025-11-26 14:41
回复

使用道具 举报

67#
 楼主| 发表于 2025-11-26 14:41:14 | 只看该作者
本帖最后由 qj_tzy 于 2025-11-26 14:49 编辑
chen463 发表于 2025-11-26 14:18
W大大的新版本 NTloader,我实测过WIM和VHD(X),真的好用,G4D、G4E、GRUB2-BIOS和EFI都行
http://bbs.w ...

感谢您的热心回复,这个我已在grub2、grub4dos和refind中均作过测试,感觉使用效果比较好。但测试到bios+grub2下,用其引导wim格式的winpe存在时而显示全屏、时而花屏只显半屏的情况
但我知是grub2的问题,而不是ntloader的问题。
回复

使用道具 举报

68#
发表于 2025-11-26 14:53:22 | 只看该作者
qj_tzy 发表于 2025-11-26 14:41
感谢您的热心回复,这个我已在grub2、grub4dos和refind中均作过测试,感觉使用效果比较好。但测试到bios+ ...

title 启动 RUN Windows WIM/VHD-/PE10/Win10-22H2-pro.vhdx
command /efi/grub/ext/RUN   (hd0,2)/PE10/Win10-22H2-pro.vhdx


定位重要
(hd0,2)/PE10/Win10-22H2-pro.vhdx

点评

好的,谢谢!  详情 回复 发表于 2025-11-26 17:50
回复

使用道具 举报

69#
发表于 2025-11-26 16:41:02 | 只看该作者
qj_tzy 发表于 2025-11-26 13:31
您分享给我的g4d下的run,您说是内置了ntboot的,但我看run的大小才747kb,比ntboot还小,猜测这个run是 ...

我再次检查了一下,分享给你的g4d的run是不支持vhd的,如果要引导vhd,直接chainloader bootmgr 或者使用527104427 的siso 或者使用 wintoflash 的ntloader.
siso.7z (1.89 MB, 下载次数: 55)
siso ntboot nt6=/vhd/win7.vhd

g4e下我也是 chainloader bootmgfw.efi 来引导vhdx的,只使用run 引导wim,如果使用 g4e 的run有问题可以去 2011yaya2007777 的贴子提问。
g4e下,wintoflash的ntloader也是比较完善了的。

点评

谢谢,我正要学习siso的使用,以前未用过,有否详细的使用说明,想搞清引导win+vhd+wim+iso(若行的话)的写法。siso除可在bios+g4d下使用外,可否在uefi+g4e下使用?  详情 回复 发表于 2025-11-26 17:32
回复

使用道具 举报

70#
 楼主| 发表于 2025-11-26 17:32:15 | 只看该作者
hilsonma 发表于 2025-11-26 16:41
我再次检查了一下,分享给你的g4d的run是不支持vhd的,如果要引导vhd,直接chainloader bootmgr 或者使用 ...

谢谢,我正要学习siso的使用,以前未用过,有否详细的使用说明,想搞清引导win+vhd+wim+iso(若行的话)的写法。siso除可在bios+g4d下使用外,可否在uefi+g4e下使用?
回复

使用道具 举报

71#
 楼主| 发表于 2025-11-26 17:50:46 | 只看该作者
chen463 发表于 2025-11-26 14:53
title 启动 RUN Windows WIM/VHD-/PE10/Win10-22H2-pro.vhdx
command /efi/grub/ext/RUN   (hd0,2)/PE10 ...

好的,谢谢!
回复

使用道具 举报

72#
发表于 2025-11-26 18:21:33 | 只看该作者
qj_tzy 发表于 2025-11-26 17:32
谢谢,我正要学习siso的使用,以前未用过,有否详细的使用说明,想搞清引导win+vhd+wim+iso(若行的话) ...

siso是g4d下的,当时还没有g4e.

siso文档.7z (267.02 KB, 下载次数: 25)
mht文件可以用chrome阅读

点评

谢谢,这可帮了我大忙,学习下。  详情 回复 发表于 2025-11-26 19:35
回复

使用道具 举报

73#
 楼主| 发表于 2025-11-26 19:35:25 | 只看该作者
hilsonma 发表于 2025-11-26 18:21
siso是g4d下的,当时还没有g4e.

谢谢,这可帮了我大忙,学习下。
回复

使用道具 举报

74#
 楼主| 发表于 2025-11-27 17:08:34 | 只看该作者
#bios_g4d_vhd.lst
#试图列出我所知道的 bios+g4d 方式下引导win7/8/10/11_x64的原生vhd/vhdx系统引导的多个写法
#用win7_x64.vhd及win8.1_x64.vhdx系统作的测试,但以下各菜单项均按引导win7_x64.vhd来书写
#因电脑中未安装win10vhdx及win11vhdx系统,未用后两者作测试。
#以下各项在grub4dos-0.4.6a-2019-02-22版的grldr中测试通过,其中ntboot和siso目前只能用该版本引导,其他项可用该版至2025-8-19间的各版本引导。
#g4d(含ext下各文件)及bwin7vhd.ima等各引导文件可存放在gpt分区硬盘的fat/exfat/ntfs分区(如esp分区),也可是mbr分区硬盘的fat/exfat/ntfs分区。但用bcd引导项仅后者(见该项说明)。


title === ★ legacy+Grub4dos+winnt6-vhd/vhdx 多引导菜单 ★  ===
clear


title Win7VHD-ntboot
find /vhds/win7_x64.vhd | set bd=
find --set-root /boot/g4d/ext/ntboot
#/boot/g4d/ext/ntboot NT6=%bd%/vhds/win7_x64.vhd NTPATH=system32
/boot/g4d/ext/ntboot NT6=%bd%/vhds/win7_x64.vhd
#上两行之一均可
boot
#目前需grub4dos-0.4.6a-2019-02-22版+ntboot的2014版才能成功引导,g4d+ntboot的其他版本组合,将出现"不识别的命令"的出错提示


title Win7VHD-siso
find /vhds/win7_x64.vhd | set bd=
find --set-root /boot/g4d/ext/siso
/boot/g4d/ext/siso ntboot NT6=%bd%/vhds/win7_x64.vhd
#siso内置ntboot
boot
#目前需grub4dos-0.4.6a-2019-02-22版+siso(1955kb)才能成功引导,该两者外的其他g4d+siso版本组合,将出现"不识别的命令"的出错提示


title Win7vhd_bcd
find --set-root --devices=h /boot/win/win7vhd/bootmgr
chainloader /boot/win/win7vhd/bootmgr
boot
#\boot\win\win7vhd\bootmgr、bootvhd.dll(bios引导vhd的支持文件)均用BMplus_v1.3.5生成,bootmgr引导\boot\win\win7vhd\中的bcd,bcd需解除数字签名,设定引导x:\vhds\win7x64.vhd。
#bcd解除数字签名的方法是:假如bcd在e:\boot\目录下,先按win+r键,运行cmd,再运行cd  e:\boot,再运行bcdedit /store BCD /set {bootmgr} nointegritychecks yes。一般需在win10pe或win11pe中进行。
#该目录只能存放在mbr分区硬盘的fat/exfat/ntfs分区,不能放在gpt分区硬盘的某分区,因微软不支持bios+gpt方式引导。


title Win7VHD-ima
find /boot/win/bwin7vhd.ima | set bd=
map (hd0) (hd)
map --mem %bd%/boot/win/bwin7vhd.ima (hd0)
map --hook
chainloader (hd0)+1
boot
#bwin7vhd.ima含有\bootmgr、\boot\bootvhd.dll、\boot\bcd,bcd设定引导x:/vhds/win7_x64.vhd。


title Win7VHD-ntloader_g4d版
find --set-root /vhds/win7_x64.vhd
uuid ()
find --set-root /boot/g4d/ext/ntloader
kernel /boot/g4d/ext/ntloader uuid=%?% file=/vhds/win7_x64.vhd
initrd /boot/g4d/ext/initrd.lz1
#需将ntloader、initrd.lz1这两个文件复制到\boot\g4d\ext\目录下
boot


title Win7VHD-ntloader_源版
find --set-root /vhds/win7_x64.vhd
uuid ()
find --set-root /boot/ntloader/ntloader
kernel /boot/ntloader/ntloader uuid=%?_UUID% vhd=/vhds/win7_x64.vhd
initrd /boot/ntloader/initrd.cpio
#将ntloader源版的整个目录/ntloader拷入某盘某分区的根目录或某目录下,如/boot/目录
boot


title Win7VHD-map_需足够内存
find --set-root /vhds/win7_x64.vhd
map (hd0) (hd)
map --mem /vhds/win7_x64.vhd (hd0)
#因需装入内存后生成硬盘头信息,--mem参数不可省,否则将出现分区有问题或参数大多等出错提示。
map --hook
root (hd0,0)
chainloader /bootmgr
boot
#这项是网上所说的方法,因我的内存较小,无条件作测试。


#经我测试,bios+g4d+run 似不支持引导vhd/vhdx,是否是我下载的run未内置ntboot所致,所以未列出。
#g4d之wimboot,似只支持wim文件的引导,也未列出。
#若上述有误敬请指出。或还有bios+g4d引导vhd的方法未列出,敬请列出,供大家学习借鉴为谢!


回复

使用道具 举报

75#
 楼主| 发表于 2025-11-27 17:10:05 | 只看该作者
liangzr1976 发表于 2025-11-26 07:38
1、
建议 楼主分享一下 最终的打包组合。

按照您的提醒,我总结了下,发在74楼
回复

使用道具 举报

76#
 楼主| 发表于 2025-11-27 17:12:43 | 只看该作者
2011yaya2007777 发表于 2025-11-26 09:46
grub4dos-2019-2-22版本到grub4dos-2019-12-30版本,中间还有若干版本,可否确定是从哪个具体版本出现 ...

g4d+siso引导也存在这一问题,见74楼
回复

使用道具 举报

77#
发表于 2025-11-27 19:00:42 | 只看该作者
感谢楼主的分享
回复

使用道具 举报

78#
发表于 2025-11-27 20:37:15 | 只看该作者

点评

走过的路有的已记不起了,谢谢提醒!  详情 回复 发表于 2025-11-27 22:31
回复

使用道具 举报

79#
 楼主| 发表于 2025-11-27 22:31:16 | 只看该作者
chen463 发表于 2025-11-27 20:37
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=337283

ntboot的2014版

走过的路有的已记不起了,谢谢提醒!
回复

使用道具 举报

80#
发表于 2025-11-28 09:39:31 | 只看该作者
感谢分享
回复

使用道具 举报

81#
发表于 2025-11-29 15:59:55 | 只看该作者
从37#下载你的win7_64.vhd(压缩3591122kb,解压缩8669354kb)。解压缩后放在c:\win7_x64\目录下。
ntboot.iso(3296kb,2014-8-24版本)放在U盘j:\boot\grub\ext\目录下。
通过QEMU虚拟机附加c盘,启动U盘j。

菜单项:
title 启动 win7_x64.vhd
map --mem /boot/grub/ext/ntboot.iso (0xff)
map --hook
(0xff)/ntboot NT6=(hd1,3)/win7_x64/win7_x64.vhd
boot

grldr分别测试2019-2-22版本及当前官网2025-11-25版本,结果一样。
1.  启动到windows转圈,见图1。此时应当理解为grldr及ntboot已经成功完成使命,将启动过程交给windows。
2.  进不了系统,出现图2画面,最后蓝屏。看样子视乎是虚拟机驱动问题。

2.jpg (192.8 KB, 下载次数: 72)

2.jpg

1.jpg (144.64 KB, 下载次数: 89)

1.jpg

点评

感谢您的热心回复 1、我后来在多台电脑上测试过,用以下3种方式之一安装win7_x64.vhd,一是将已安装好且使用一切正常的win7_x64分区系统,转为win7_vhd;二是用win7_x64原版iso安装的win7_vhd;三是用网上下载的g  详情 回复 发表于 2025-11-29 19:25
回复

使用道具 举报

82#
发表于 2025-11-29 16:03:04 | 只看该作者
不知道什么原因,没有重现你的问题。也无法找到问题根源。
回复

使用道具 举报

83#
 楼主| 发表于 2025-11-29 19:25:58 | 只看该作者
本帖最后由 qj_tzy 于 2025-11-29 19:31 编辑
2011yaya2007777 发表于 2025-11-29 15:59
从37#下载你的win7_64.vhd(压缩3591122kb,解压缩8669354kb)。解压缩后放在c:\win7_x64\目录下。
ntboot. ...

感谢您的热心回复

1、我后来在多台电脑上测试过,用以下3种方式之一安装win7_x64.vhd,一是将已安装好且使用一切正常的win7_x64分区系统,转为win7_vhd;二是用win7_x64原版iso安装的win7_vhd;三是用网上下载的gho版win7_x64安装的win7.vhd。在实机上测试:一是grub4dos-0.4.6a-2019-02-22版+ntboot的2014版才能成功引导,g4d+ntboot的其他版本组合,将出现"不识别的命令"的出错提示;二是grub4dos-0.4.6a-2019-02-22版+siso(1955kb)才能成功引导,该两者外的其他g4d+siso版本组合,将出现"不识别的命令"的出错提示。这说明:以上外的g4d+ntboot,或g4d+siso的组合,是存在bug的,出现上述出错提示,表明尚未进入win7_vhd的引导进程。

2、我在2台电脑上测试时发现过这一问题,即有的引导在Qemu测试通过,但在实机上测试失败。从您在虚拟机上的测试情况看,应是已进入了win_vhd的引导进程了,但若在实机上测试,可能会到不了这一进程,会引导失败。


所以非常期望 g4d+ntboot+siso的几位开发者,能修正这一bug。




回复

使用道具 举报

84#
发表于 2025-11-29 20:00:56 来自手机 | 只看该作者
可惜我的笔记本是uefi启动的,没办法在实机上测试g4d。

点评

是否可用csmwrap测试下。 下载地址:https://github.com/FlyGoat/CSMWrap  详情 回复 发表于 2025-12-4 08:54
回复

使用道具 举报

85#
发表于 2025-12-1 13:31:20 | 只看该作者
本帖最后由 mygamexxx 于 2025-12-1 13:34 编辑
qj_tzy 发表于 2025-11-29 19:25
感谢您的热心回复

1、我后来在多台电脑上测试过,用以下3种方式之一安装win7_x64.vhd,一是将已安装好 ...

VMware是否能重现问题?只有让YAYA大能重现问题,才有可能修复。
回复

使用道具 举报

86#
发表于 2025-12-1 14:52:37 | 只看该作者
VMware是否能重现问题?

VMware虚拟机无法挂载当前正在使用的磁盘或者分区。
现象是启动时提示:
物理磁盘已被使用

打不开磁盘“C:\Users\MAC\Documents\Virtual Machines\Windows 10 x64\Windows 10 x64-1.vmdk”或它所依赖的某个快照磁盘。

模块“Disk”启动失败。

未能启动虚拟机。

点评

VMware应该是建个bios虚拟机,8G虚拟硬盘,在硬盘上使用G4D引导,然后放入楼主分享的WIN7.VHD,再用NTBOOT引导此VHD来重现吧?  详情 回复 发表于 2025-12-1 19:19
回复

使用道具 举报

87#
发表于 2025-12-1 19:19:04 | 只看该作者
2011yaya2007777 发表于 2025-12-1 14:52
VMware虚拟机无法挂载当前正在使用的磁盘或者分区。
现象是启动时提示:
物理磁盘已被使用

VMware应该是建个bios虚拟机,8G虚拟硬盘,在硬盘上使用G4D引导,然后放入楼主分享的WIN7.VHD,再用NTBOOT引导此VHD来重现吧?
回复

使用道具 举报

88#
发表于 2025-12-1 20:09:09 来自手机 | 只看该作者
明天想办法试一试。主要是硬盘容量太大小了。
回复

使用道具 举报

89#
发表于 2025-12-1 20:11:37 来自手机 | 只看该作者
VM挂载U盘及硬盘太不容易了。只成功挂载过有数的几次U盘。

点评

我试过了,vm重现不了问题,估计得特定的硬件才会出问题。  详情 回复 发表于 2025-12-1 20:15
回复

使用道具 举报

90#
发表于 2025-12-1 20:15:41 | 只看该作者
2011yaya2007777 发表于 2025-12-1 20:11
VM挂载U盘及硬盘太不容易了。只成功挂载过有数的几次U盘。

我试过了,vm重现不了问题,估计得特定的硬件才会出问题。

点评

如果我的菜单没错,VMware应该是能重现。 新建win7x64虚拟机,BIOS启动,硬盘要10G左右,格式化为NTFS,复制入G4D所需文件和WIN7.VHD。 虚拟机用PE光盘ISO文件启动,用BOOTICE修改硬盘主引导为GRUB4DOS0.4.6a。  详情 回复 发表于 2025-12-2 08:19
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2026-2-3 11:07

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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