devilma 发表于 2020-3-25 00:18:17

不错的说,谢谢楼主了

macowen 发表于 2020-5-24 21:27:09

谢谢楼主分享!!

wfccsqk 发表于 2020-8-23 20:00:40

赞一个 再赞一个

menhm 发表于 2021-2-24 20:43:51

谢谢大神分享。。。

2012bc 发表于 2021-4-7 09:25:22

感谢分享!

MiFan 发表于 2021-5-6 16:09:42

谢谢大神分享。。。

2011wolfsina 发表于 2021-6-28 12:12:23

vhdx有时候启动出错,是不是可以改为map方式启动,因为vhdx里面包含ESP分区或启动程序了(bootmgfw.efi)?

hilsonma 发表于 2021-6-28 13:30:37

2011wolfsina 发表于 2021-6-28 12:12
vhdx有时候启动出错,是不是可以改为map方式启动,因为vhdx里面包含ESP分区或启动程序了(bootmgfw.efi)?

我试过不论哪个方式都有可能出错,特别是win10的vhdx,grub2引导基本都出错.
后来在本论坛一贴提示说要用微软自身的引导 ( http://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=425569&pid=4310864&fromuid=586362 )
于是我建立vhdx时都是先用winntsetup装入win10镜像(取消休眠和页面文件等),在某台电脑使用时,先建立差分,挂载差分,使用bcdboot建立微软自身引导来启动差分,等重启差分走完安装后再改用grub2引导,这样就不会出问题了。

wintoflash 发表于 2021-6-28 13:34:39

hilsonma 发表于 2021-6-28 13:30
我试过不论哪个方式都有可能出错,特别是win10的vhdx,grub2引导基本都出错.
后来在本论坛一贴提示说要 ...

ntboot启vhdx报什么错误?

hilsonma 发表于 2021-6-28 14:09:11

本帖最后由 hilsonma 于 2021-6-28 14:14 编辑

wintoflash 发表于 2021-6-28 13:34
ntboot启vhdx报什么错误?

我碰到的是Windows无法更新计算机的启动配置。
这个应该只能用微软自身引导才能解决。




还有就是上面我提到那个贴子中的,我也遇到过。



再有就是bcd错误,例如找不到winload.efi此类,其实winload.efi是存在的

以上种种自从我使用微软自身引导设置好后再改用grub2引导,就没有再遇到了。

wintoflash 发表于 2021-6-28 14:39:29

hilsonma 发表于 2021-6-28 14:09
我碰到的是Windows无法更新计算机的启动配置。
这个应该只能用微软自身引导才能解决。



你还没完成安装,就用ntboot启动,那当然不行了。
在安装的阶段 Windows 是会向硬盘写bcd等引导文件的。
bios下,Windows 一般会直接向第一个硬盘 (0x80) 写文件。grub2 ntboot启动时,boomgr所在的硬盘是最后一个硬盘。一般情况下第一硬盘都可以写入,所以你感觉不出问题。
但是在uefi下,bootmgfw.efi是会记录自己的设备路径的。grub2 ntboot启动时,bootmgfw.efi位于虚拟磁盘上,系统启动后这个磁盘就不存在了,当然会报错。

hilsonma 发表于 2021-6-28 17:29:04

本帖最后由 hilsonma 于 2021-6-28 17:36 编辑

wintoflash 发表于 2021-6-28 14:39
你还没完成安装,就用ntboot启动,那当然不行了。
在安装的阶段 Windows 是会向硬盘写bcd等引导文件的。 ...
是的,现在我已经明白,谢谢。

之前我用的win8还有朋友给我的win10都是不用走微软安装就可以直接grub2引导的,所以误导了我,以为释放了镜像就可以直接grub2引导,后来遇到很多引导不了的情况,最多的是无法安装在你的硬件配置上。后来才知道需要微软自身引导安装完成,而且mbr硬盘要bios引导,gpt硬盘要uefi引导,这样才能正确完成安装,然后才能改用第三方引导。

2011wolfsina 发表于 2021-6-28 17:47:10

hilsonma 发表于 2021-6-28 14:09
我碰到的是Windows无法更新计算机的启动配置。
这个应该只能用微软自身引导才能解决。



我的不是,最多还是类似这个错误:


按两次或n此回车都不行。

hilsonma 发表于 2021-6-28 17:50:36

2011wolfsina 发表于 2021-6-28 17:47
我的不是,最多还是类似这个错误:




这个我之前也遇过,但是我使用微软自身引导完成安装后再改用grub2引导就再也没有遇过。

2011wolfsina 发表于 2021-6-28 18:17:02

hilsonma 发表于 2021-6-28 17:50
这个我之前也遇过,但是我使用微软自身引导完成安装后再改用grub2引导就再也没有遇过。
是vhdx文件有问题吗?但是我用GPT硬盘BCD引导和U盘GrubFMMultiArch.iso或GrubFMx64.efi引导都能正常进入Win8.1x64EIE.vhdx系统(用winsetup安装的Win8.1x64EIE精简版,里面有windows分区和esp分区)。

而且很奇怪
UEFI→U盘ventoy引导→本贴生成的efi→正常列表,正常启动Win8.1x64EIE.vhdx

UEFI→U盘MBROSTool6.26分区引导→本贴生成的efi→能正常列表,但引导Win8.1x64EIE.vhdx出现上述错误

UEFI→U盘MBROSTool6.26分区引导→GrubFMx64.efi→能正常列表,正常启动Win8.1x64EIE.vhdx

MBROSTool6.26分区:建立一个空白fat32分区,把本贴生成的efi改名bootx64.efi放在/efi/boot/bootx64.efi,UEFI就能启动

MBROSTool6.26
http://bbs.wuyou.net/forum.php?m ... tra=page%3D1&page=1

GrubFMMultiArch.iso
https://gitee.com/a1ive/grub2-filemanager/attach_files/587149/download/grubfm_multiarch.iso


https://github.com/a1ive/grub2-filemanager/releases/download/v7.4.0/grubfm-zh_CN.7z

hilsonma 发表于 2021-6-28 18:32:03

本帖最后由 hilsonma 于 2021-6-28 18:53 编辑

2011wolfsina 发表于 2021-6-28 18:17
是vhdx文件有问题吗?但是我用GPT硬盘BCD引导和U盘GrubFMMultiArch.iso或GrubFMx64.efi引导都能正常进入W ...
我也不是很清楚,反正之前我是搞不定vhdx,经常出各种问题不得不放弃vhdx,改装实体盘
但实体盘也常遇到无法安装到你的硬盘配置上之类的问题
后来才知道mbr硬盘用bios引导, gpt硬盘用uefi引导,而且是微软自身的引导
我之前多数用的SR的win8,没有那么讲究,所以不知道win10会这么严格。
现在一般是用飞天舞的win10ltsb,按上面要求走完安装后,再改用grub2引导就没有遇过问题。

我没有用ventoy和mbrostool,bios下我硬盘用wee+grldr,U盘用fbinst+grldr,uefi下全部用grub2

硬盘分区我用dg,扇区对齐我用pa,分区查看和引导调整我用bootice

我的意思是win10更较真,最好是在用了其他分区工具后,在分区信息确定不改了,再用微软自身引导走一次vhdx的安装,完成后再改用其他引导,而且改引导时不能改变分区信息。这样应该问题就少了。

你的win81也可以这样试试看。

2011wolfsina 发表于 2021-6-28 19:41:30

hilsonma 发表于 2021-6-28 18:32
我也不是很清楚,反正之前我是搞不定vhdx,经常出各种问题不得不放弃vhdx,改装实体盘
但实体盘也常遇到 ...

明白,也可能是winsetup安装时生成ESP的问题,我试试用微软自身引导走一次vhdx,谢谢大神耐心解答!

2011wolfsina 发表于 2021-6-28 19:55:55

hilsonma 发表于 2021-6-28 18:32
我也不是很清楚,反正之前我是搞不定vhdx,经常出各种问题不得不放弃vhdx,改装实体盘
但实体盘也常遇到 ...

有个问题:
安装好Win8.1x64,是不是可以直接使用
bcdboot.exe Y:\windows /s Z: /f ALL /l zh-cn
不需要解压
imagex.exe /apply X:\sources\install.wim 2 Y:

mrzhonghb 发表于 2021-6-28 20:38:23

2011wolfsina 发表于 2021-6-28 19:55
有个问题:
安装好Win8.1x64,是不是可以直接使用
bcdboot.exe Y:\windows /s Z: /f ALL /l zh-cn


vhd(x)的话,不用imagex命令解压,但是要双击vhdx文件,双击就相当于挂载它,会自动分配盘符,按照这个盘符来运行bcdboot建立引导。

hilsonma 发表于 2021-6-28 22:38:24

本帖最后由 hilsonma 于 2021-6-28 22:47 编辑

2011wolfsina 发表于 2021-6-28 19:55
有个问题:
安装好Win8.1x64,是不是可以直接使用
bcdboot.exe Y:\windows /s Z: /f ALL /l zh-cn

不要用imagex
使用winntsetup,要点 优化调整,勾上 禁用系统还原 禁用系统休眠 禁用页面文件 这三个
我还勾了 禁用用帐户控制,后面这个视乎你的需要来决定是否勾。

如果你不使用差分,winntsetup已经帮你建好引导了。也可以手工直接操作
bcdboot Y:windows /s z: /f uefi
或者
bcdboot Y:windows /s c: /f bios
前者适用uefi模式,如需要可事先备份原来的bootmgfw.efi和bcd
后者适用legacy模式,如需要可事先备份原来的bootmgr和bcd
Y 是你挂载vhdx的盘符,Z是GPT硬盘的ESP,C是MBR硬盘的激活的主分区
如果盘符不对需要作相应更改

如果你使用差分,需要先分离原vhdx,将其作为父vhdx,建立子vhdx (差分vhdx),再挂载子vhdx,然后再运行bcdboot建立微软自身引导。

已经建立子vhdx的父vhdx不能改名,不能挂载,总之不要再动它,否则子vhdx会出错。
一旦动了,原来的子vhdx就不能再用,需要重新建立子vhdx

2011wolfsina 发表于 2021-6-29 22:40:34

hilsonma 发表于 2021-6-28 22:38
不要用imagex
使用winntsetup,要点 优化调整,勾上 禁用系统还原 禁用系统休眠 禁用页面文件 这三个
...

感觉与vhdx关系不大,启动wim也是出错。奇怪的是运行mentest.efi他显示的路径居然是\boot\memtest.efi.是不是ntboot.mod版本的问题,比较新版的grubFMx64能正常运行

vhdx的错误提示


wim的错误提示




2011wolfsina 发表于 2021-6-29 22:57:52

查了下grubfm源代码,vhdx好像是用map启动的?

https://gitee.com/a1ive/grub2-filemanager/blob/master/samples/grubfm.cfg


function menu_vhd_uefi_map
{
vhd -d vhd0;
vhd -p vhd0 "${grub_file}";
map --mem --type=HD --disk vhd0;
echo " Press any key to continue ...";
getkey;
}


# vhd
elif regexp '^$' "${name_ext}"; then
    if [ "$grub_platform" = "pc" ]; then
      menu_vhd_bios_vboot;
    elif [ "$grub_platform" = "efi" ]; then
      if [ "$grub_cpu" = "x86_64" ]; then
      menu_vhd_uefi_map;
      fi;
    fi;

hilsonma 发表于 2021-6-30 02:26:28

2011wolfsina 发表于 2021-6-29 22:40
感觉与vhdx关系不大,启动wim也是出错。奇怪的是运行mentest.efi他显示的路径居然是\boot\memtest.efi.是 ...

我想起一个事情:下载包里的bootmgfw.efi是比较旧版本的,如果要启动的是比较新版本的win10,请使用新的bootmgfw.efi替换下载包里的bootmgfw.efi,之前有坛友反馈过后来是这样解决的。

hilsonma 发表于 2021-6-30 02:29:18

2011wolfsina 发表于 2021-6-29 22:57
查了下grubfm源代码,vhdx好像是用map启动的?

https://gitee.com/a1ive/grub2-filemanager/blob/master ...

你的vhd是双分区的带ESP的,可以用map
我的都是单分区的不带ESP的,你做一个这样的试试看能不能用map引导,我没有试过,都是用ntboot的。

2011wolfsina 发表于 2021-6-30 09:28:44

hilsonma 发表于 2021-6-30 02:26
我想起一个事情:下载包里的bootmgfw.efi是比较旧版本的,如果要启动的是比较新版本的win10,请使用新的b ...

我的是win8.1x64,更换过系统的bootmgfw.efi也是同样的错误。

hilsonma 发表于 2021-6-30 09:35:39

2011wolfsina 发表于 2021-6-30 09:28
我的是win8.1x64,更换过系统的bootmgfw.efi也是同样的错误。

可以把你的vhd文件用文叔叔发给我试试

wintoflash 发表于 2021-6-30 09:45:25

2011wolfsina 发表于 2021-6-29 22:40
感觉与vhdx关系不大,启动wim也是出错。奇怪的是运行mentest.efi他显示的路径居然是\boot\memtest.efi.是 ...

但是我用GPT硬盘BCD引导和U盘GrubFMMultiArch.iso或GrubFMx64.efi引导都能正常进入Win8.1x64EIE.vhdx系统(用winsetup安装的Win8.1x64EIE精简版,里面有windows分区和esp分区)。
你用的 GRUB2 版本太低了。这个应该是刚弄出 ntboot 时候的版本。
查了下grubfm源代码,vhdx好像是用map启动的?
你没有找对地方。vhdx是用 ntboot 启动的。
你的vhd是双分区的带ESP的,可以用map
我的都是单分区的不带ESP的,你做一个这样的试试看能不能用map引导,我没有试过,都是用ntboot的。
不行。vhd里面必须安装 SVBus 驱动才能识别虚拟盘。另外,vhdx 不能 map。

2011wolfsina 发表于 2021-6-30 09:47:07

hilsonma 发表于 2021-6-30 09:35
可以把你的vhd文件用文叔叔发给我试试

好的,稍等,感谢大神!

另外,如果map方式要怎样写,用iso的map $1这个不行。

2011wolfsina 发表于 2021-6-30 10:10:24

wintoflash 发表于 2021-6-30 09:45
你用的 GRUB2 版本太低了。这个应该是刚弄出 ntboot 时候的版本。

你没有找对地方。vhdx是用 ntboot ...

比较小白,谢谢解答!

2011wolfsina 发表于 2021-6-30 10:19:05

hilsonma 发表于 2021-6-30 09:35
可以把你的vhd文件用文叔叔发给我试试

可能是MBROSTool6.26的启动配置对您的efi有影响,因为我用ventoy-uefi模式启动您的efi是可以正常启动vhdx的,MBROSTool的udm的不行。
页: 1 2 3 4 [5] 6 7
查看完整版本: grub2的自动菜单和多功启动(以cfg文件的方式仿造g4d的run/siso)