无忧启动论坛

标题: 请问GRUB4如何启动WIM格式的win8PE! [打印本页]

作者: usb2008    时间: 2015-10-19 17:35
标题: 请问GRUB4如何启动WIM格式的win8PE!
本帖最后由 usb2008 于 2015-10-19 17:42 编辑

menu.lst这个如何编写 希望给一个例子!用这个 wimboot 引导 就是不会写!谢谢先了 我的是PXE 启动 我之前是这样写的

title  [1]  WIN8PE
kernel (pd)/wimboot
initrd (pd)/bcd
initrd (pd)/boot.sdi
initrd (pd)/bootmgr.exe
initrd (pd)/win8pe.WIM
boot

就是不成功 !望指引 谢谢
作者: 有阴也有阳    时间: 2015-10-19 19:12
        我的一点经验,仅供你参考:
        
        在根目录下——或是硬盘,或是启动U盘兴建一个boot文件夹,把你的bcd 、boot.sdi、bootmgr、win8pe.WIM放进去,如果没有bootmgr,

从一个win8pe的ISO文件中提取一个就行,你是32位的win8pe就从其它的32位的win8pe的ISO文件中提取;你是64位的win8pe就从其它的64位

的win8pe的ISO文件中提取,然后再填写menu.lst菜单:

title 运行Win8  PE  
find --set-root /boot/bootmgr
chainloader /boot/bootmgr

       应该就能启动。
作者: chenall    时间: 2015-10-19 21:27
把initrd命令写成一行
参考这里的语法.
http://grub4dos.chenall.net/downloads/grub4dos-0.4.6a-2014-11-10/
作者: usb2008    时间: 2015-10-19 21:51
chenall 发表于 2015-10-19 21:27
把initrd命令写成一行
参考这里的语法.
http://grub4dos.chenall.net/downloads/grub4dos-0.4.6a-2014-11 ...

谢谢 我明天试试先!不过我是网启环境 不知道有没有影响
作者: captain_g    时间: 2015-10-20 08:02
如果你网启是使用 grldr + menu.lst 的,菜单可以这样写:

title [0]  Boot 8x86PE via WIMBOOT
kernel /boot/wimboot
initrd @bcd=/boot/bcd @boot.sdi=/boot/boot.sdi @bootmgr=/boot/bootmgr @boot.wim=/boot/WIN8PE.WIM

如果服务端根下的菜单是外置的,前面不要加 pxe detect
作者: captain_g    时间: 2015-10-20 08:09
还有

bcd boot.sdi bootmgr

这三个文件直接用微软原版的文件,无需进行修改。
作者: yjqd    时间: 2015-10-20 09:16
请问一下:我制作了UD分区的启动U盘,WIMBOOT启动U盘UD分区的WIN8PE.W,启动动画变成了滚动条,怎样才能恢复原来的启动动画
我的命令如下:
pxe detect
configfile
default 0
timeout 10
terminal console
fontfile (ud)/muifont.gz
graphicsmode -1 640:480
splashimage (ud)/bj2008.xpm.gz

title 启动WIN8PE
kernel /wimboot
initrd @bcd=/boot/bcd @boot.sdi=/boot/boot.sdi @bootmgr=/bootmgr @boot.wim=/boot.WIM
boot
作者: 有阴也有阳    时间: 2015-10-20 10:03
yjqd 发表于 2015-10-20 09:16
请问一下:我制作了UD分区的启动U盘,WIMBOOT启动U盘UD分区的WIN8PE.W,启动动画变成了滚动条,怎样才能恢 ...

你换一下,就应该正常了:

title 启动WIN8PE
find --set-root /boot/bootmgr
chainloader /boot/bootmgr
作者: yjqd    时间: 2015-10-20 10:30
在UD分区用
find --set-root /boot/bootmgr
chainloader /boot/bootmgr
启动不了win8pe吧,bcd所指向目标在windows环境才行
作者: 有阴也有阳    时间: 2015-10-20 10:42
本帖最后由 有阴也有阳 于 2015-10-20 10:51 编辑
yjqd 发表于 2015-10-20 10:30
在UD分区用
find --set-root /boot/bootmgr
chainloader /boot/bootmgr


你试过了吗?

这种用法在grub4dos环境下没有问题。

在我的grub4dos0.4.6a的启动U盘中成功运行Win10PEX64.WIM。

Win10PE X64 .png (575.41 KB, 下载次数: 152)

在grub4dos0.4.6a的启动U盘中成功运行Win10PEX64.WIM

在grub4dos0.4.6a的启动U盘中成功运行Win10PEX64.WIM

作者: yjqd    时间: 2015-10-20 11:02
谢谢!
find --set-root /boot/bootmgr
chainloader /boot/bootmgr
在可见分区能够启动,但在UD分区(隐藏分区)不行
作者: yjqd    时间: 2015-10-20 11:03
也就是U盘用FbinstTool格式化后产生的UD分区
作者: 不点    时间: 2015-10-20 11:52
你的 ud 区有 bootmgr 这个文件吗?就是说,有 (ud)/boot/bootmgr 吗?不应该有啊。如果有的话,你先删除它,再用

find --set-root /boot/bootmgr
chainloader /boot/bootmgr

就是启动别的 bootmgr 了。

另外,bootmgr 需要与其他文件(例如 BCD)配合才能真正启动成功。


作者: yjqd    时间: 2015-10-20 12:20
bootmgr、boot文件夹、boot.wim如果没有制作成iso,而是直接放在UD分区根目录,
find --set-root /boot/bootmgr
chainloader /boot/bootmgr
启动了bootmgr,如果bootmgr找了到UD分区的boot中的bcd,但bcd也不能识别UD分区目录结构,找不到boot.wim
作者: 不点    时间: 2015-10-20 13:27
你的逻辑好像不对劲。bootmgr 是微软的文件,它怎会承认 ud 区?你把微软的一整套启动文件放在 ud 区,肯定不行的。

但是如果是放在 fat32、ntfs 这样的分区里面,则是有可能成功的。

find 命令不只是查找 ud 区的文件,而是查找所有设备上的文件。

不要有误区,不要以为 find 命令只能找到当前分区的文件。

find 命令可以找到别的设备上的文件。


作者: yjqd    时间: 2015-10-20 14:30
我的意思是:
bootmgr、boot文件夹、boot.wim如果没有制作成iso,而是直接放在UD分区根目录,
find --set-root /boot/bootmgr
chainloader /boot/bootmgr
上面命令执行后无法启动boot.wim,不是说能启动boot.wim,可能刚才没说清楚。
要用下面的命令:
kernel /wimboot
initrd @bcd=/boot/bcd @boot.sdi=/boot/boot.sdi @bootmgr=/bootmgr @boot.wim=/boot.WIM
boot

作者: 有阴也有阳    时间: 2015-10-20 15:12
yjqd 发表于 2015-10-20 14:30
我的意思是:
bootmgr、boot文件夹、boot.wim如果没有制作成iso,而是直接放在UD分区根目录,
find --set ...

title 启动WIN8PE
find --set-root /boot/bootmgr
chainloader /boot/bootmgr

在UD分区用这种调用方式你试过了吗?如果你没有试过,就坚持说不行,未免太武断,不信你试试,我有把握能成功。
作者: yjqd    时间: 2015-10-20 15:32
谢谢!
我UD分区文件是这样的:
bootmgr、boot文件夹、boot.wim直接放在UD分区根目录
grldr菜单内容如下:

title 启动WIN8PE
find --set-root /boot/bootmgr
chainloader /boot/bootmgr
刚才测试了,没能成功启动,直接又返回菜单界面了,请问你的文件是怎么放置的,grldr菜单是怎么写的


作者: yjqd    时间: 2015-10-20 15:41
bootmgr、boot.wim放在boot文件夹里测试了下也没成功
作者: 有阴也有阳    时间: 2015-10-20 16:00
本帖最后由 有阴也有阳 于 2015-10-20 16:48 编辑
yjqd 发表于 2015-10-20 15:41
bootmgr、boot.wim放在boot文件夹里测试了下也没成功


抱歉!我对UD分区不太了解,在UD分区的确不能用:
title 启动WIN8PE
find --set-root /boot/bootmgr
chainloader /boot/bootmgr

否则,即有如下之错误提示:

No such partition

没有这样的分区

看来我是经验主义+想当然了,你是对的,抱歉!没能帮你解决问题,还误导了你......

不过你可以变通一下,把你的WIN8PE的boot.wim文件制作成ISO文件,再放进UD分区里,就要方便多了,用另外一个WIN8PE的ISO文件,把里面的

boot.wim替换成你的boot.wim就OK了......,用软碟通替换、保存,用相同位数(32位/64位)的WIN8PE的ISO文件来替换。

在UD分区直接加入Win7PE的ISO文件.png (25.48 KB, 下载次数: 103)

图一

图一

menu.lst菜单.png (1.49 KB, 下载次数: 114)

图二

图二

Win7PE正在载入.png (10.43 KB, 下载次数: 118)

图三

图三

作者: yjqd    时间: 2015-10-20 16:12
谢谢!
以前我应该是用find --set-root /boot/bootmgr
chainloader /boot/bootmgr这些命令测试过,文件位置也交换过多次,都不行,后来隔了很久了,在无忧上找到如下命令,并且还要wimboot文件,grldr版本也有要求(从某一版本起才行),
kernel /wimboot
initrd @bcd=/boot/bcd @boot.sdi=/boot/boot.sdi @bootmgr=/bootmgr @boot.wim=/boot.WIM
boot
就成功了

如果用find --set-root /boot/bootmgr
chainloader /boot/bootmgr能成功启动就更好,就不需要另外下载wimboot文件,对grldr版本要求也没那么严



作者: yjqd    时间: 2015-10-20 16:22
应该是从grub4dos-0.4.6a-2014-11-10.7z起就可以了吧
chenall的介绍
http://grub4dos.chenall.net/downloads/grub4dos-0.4.6a-2014-11-10/
作者: yjqd    时间: 2015-10-20 16:29
grub4dos 0.4.6a ipxegrldr 功能介绍
http://chenall.net/post/grub4dos_ipxe/
作者: 有阴也有阳    时间: 2015-10-20 16:38
yjqd 发表于 2015-10-20 16:12
谢谢!
以前我应该是用find --set-root /boot/bootmgr
chainloader /boot/bootmgr这些命令测试过,文件 ...

wimboot你是放在UD分区的根目录吗?还是放到boot文件夹中?还是其它什么地方?
作者: yjqd    时间: 2015-10-20 16:39
我以前就是用的iso格式,但更换boot.wim文件麻烦(因为有时在boot.wim里增添工具),为了学习了UltraISO命令和fbist命令,目的是制作批处理自动更换iso里面的boot.wim,并且把iso导入UD分区,方便多了,但是学习命令也够麻烦的,特别是UltraISO命令网上资料比较少,但总归学到了它们的命令

后来就想在UD分区直接启动boot.wim,还终于找到命令了
作者: yjqd    时间: 2015-10-20 16:48
wimboot、bootmgr、boot文件夹、boot.wim放在UD分区根目录
bcd、boot.sid在boot文件夹里面
其实wimboot、bootmgr、boot.wim都可以放在boot文件夹里面,当然grldr菜单内容也要变

boot文件夹名不能改吧,bcd、boot.sid也必须要放在boot文件夹里吧
作者: 有阴也有阳    时间: 2015-10-20 16:54
yjqd 发表于 2015-10-20 16:48
wimboot、bootmgr、boot文件夹、boot.wim放在UD分区根目录
bcd、boot.sid在boot文件夹里面
其实wimboot、 ...

谢谢!!!又学了一手。
作者: yjqd    时间: 2015-10-20 16:56
测试了,boot文件夹名称改了也能启动
作者: yjqd    时间: 2015-10-20 16:59
又测试了,bcd、boot.sid放在根目录也行
作者: yjqd    时间: 2015-10-20 17:16
fbinst (hd1) export win8pe.iso %cd%\win8pe.iso
echo 从ud分区导出win8pe.iso
pause


ultraiso -in WIN8PE.ISO -rm /boot/boot.wim -out lsWIN8PE.ISO
pause
echo 更换iso中的boot.wim
ultraiso -in lsWIN8PE.ISO -chdir /boot -f %cd%\boot.wim
pause

fbinst (hd1) remove WIN8PE.ISO
echo 删除ud分区的WIN8PE.ISO
pause
echo --------50%%---------100%%
fbinst (hd1) add -e WIN8PE.ISO %cd%\lsWIN8PE.ISO
del /a /f lsWIN8PE.ISO
echo 把win8pe.iso导入到ud分区
echo 完成
作者: chenall    时间: 2015-10-20 19:23
yjqd 发表于 2015-10-20 16:59
又测试了,bcd、boot.sid放在根目录也行


用WIMBOOT的话,放在哪里都无所谓的,只要GRUB4DOS可以访问得到就可以了.

要想文件干净清爽,也可以试试NTBOOT,这些BOOT.SDI/BCD/BOOTMGR都不需要,只要一个WIM文件和NTBOOT文件就行了.
作者: 有阴也有阳    时间: 2015-10-20 20:03
yjqd 发表于 2015-10-20 17:16
fbinst (hd1) export win8pe.iso %cd%\win8pe.iso
echo 从ud分区导出win8pe.iso
pause

你这个更换boot.wim的批处理具体该咋样操作?
作者: usb2008    时间: 2015-10-20 20:49
chenall 发表于 2015-10-20 19:23
用WIMBOOT的话,放在哪里都无所谓的,只要GRUB4DOS可以访问得到就可以了.

要想文件干净清爽,也可以试 ...

NTBOOT 支持PXE 网启吗?
作者: yjqd    时间: 2015-10-20 21:04
以前看过chenall 关于NTBOOT的介绍,但没太搞明白,具体怎样操作呢
作者: usb2008    时间: 2015-10-20 21:11
chenall 发表于 2015-10-19 21:27
把initrd命令写成一行
参考这里的语法.
http://grub4dos.chenall.net/downloads/grub4dos-0.4.6a-2014-11 ...

这是一个老版本的grldr 报错
这是一个新版的grldr 报错
作者: usb2008    时间: 2015-10-20 21:14
本帖最后由 usb2008 于 2015-10-20 21:19 编辑

这是一个新版grldr 报错!不知道错在那里
作者: chenall    时间: 2015-10-20 21:56
usb2008 发表于 2015-10-20 20:49
NTBOOT 支持PXE 网启吗?

不支持,NTBOOT只支持本地磁盘
作者: chenall    时间: 2015-10-20 21:57
usb2008 发表于 2015-10-20 21:14
这是一个新版grldr 报错!不知道错在那里

Error 15

文件未找到看看你的TFTPROOT目录下有没有 bcd boot.sdi bootmgr等文件
根据你的命令行写法,这些文件都是TFTPROOT目录下.
作者: yjqd    时间: 2015-10-20 22:10
以前看过chenall 关于NTBOOT的介绍,但没太搞明白,具体怎样操作呢
作者: yjqd    时间: 2015-10-20 22:41
下载了NTBOOT解压后NTBOOT文件夹放在UD分区根目录
grldr内容:
title 启动WIN8PE
/NTBOOT/NTBOOT nt6=/fboot/boot.wim
boot
启动后出现:
will boot nt6.x from (hd0,255)/fboot/boot.wim
boot: (fd0)/bootmgr
press ESC to quit!
后面的启动就出错了

作者: yjqd    时间: 2015-10-20 23:36
搜索了半天,ntboot好像不支持UD分区
作者: pseudo    时间: 2015-10-21 01:19
yjqd 发表于 2015-10-20 11:02
谢谢!
find --set-root /boot/bootmgr
chainloader /boot/bootmgr

坛里找
零+十pe
把你的boot.wim放入efi文件夹替换同名文件,efi文件夹放入ud内,可以不用wimboot启动。
efi文件夹打包在0pe.iso内或移出iso外都行,在ud内或外都行,在可见区或非可见区都行。

作者: yjqd    时间: 2015-10-21 07:18
谢谢pseudo 的解答!
作者: usb2008    时间: 2015-10-21 18:47
chenall 发表于 2015-10-20 21:57
Error 15

文件未找到看看你的TFTPROOT目录下有没有 bcd boot.sdi bootmgr等文件

那个ERROR 15的确是 缺少了个文件 !这次补齐了!但是又有另外错误55555555
作者: usb2008    时间: 2015-10-22 23:38
usb2008 发表于 2015-10-20 20:49
NTBOOT 支持PXE 网启吗?

C大麻烦你帮忙找找解决的问题啦拜托




欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3