无忧启动论坛

标题: VBoot WinPE [打印本页]

作者: liuhj    时间: 2010-11-18 21:04
标题: VBoot WinPE
VBOOT是VMlite公司推出的一个新的启动工具。

一、准备工作

1. 下载vboot。
官方下载要先注册一下:http://vmlite.com/index.php/download/38-vboot
本论坛下载:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=180927&extra=page%3D1

2. 将vboot解包到C:根目录,将C:\vboot\vbootldr、C:\vboot\vbootldr.mbr拷贝到C:根目录,打开boot.ini,添加启动项C:\vbootldr.mbr="VBoot System"

3. 打开C:\vboot\grub\grub.cfg,添加启动项:
menuentry "VBoot WinPE" {
  vboot harddisk="(hd0,1)/xp.vhd"
}

4. 主系统安装vboot驱动,还没有测试VPC2007的虚拟硬盘能否直接使用。

将C:\vboot\vboot.img(2k3使用C:\vboot\vboot-2k3.img)中的文件提出,打开“控制面板\添加硬件”,安装vboot驱动。

二、制作新PE,添加下面的插件

1. 在PEBuilder的插件目录plugin下建一个vboot目录,放入下面插件,再在vboot目录下建一个files目录,将C:\vboot\vboot.img中的vbootdsk.inf、vbootdsk.sys放入其中(制作2K3版PE用C:\vboot\vboot-2k3.img中的文件)。
————————
; vboot.inf
; PE Builder v3 plug-in INF file for VMLite VBoot SCSI Disk Device 32-bit
; Created by Liuhj


[Version]
Signature= "$Windows NT$"

[PEBuilder]
Name="VMLite VBoot SCSI Disk Device 32-bit"
Enable=1

[SourceDisksFiles]
fltmgr.inf=20
fltmgr.sys=4
fltlib.dll=2
files\vbootdsk.inf=20,,1
files\vbootdsk.sys=4,,1

[SetupReg.AddReg]
0x0,"ControlSet001\Services\FltMgr"
0x4,"ControlSet001\Services\FltMgr","AttachWhenLoaded",0x0
0x1,"ControlSet001\Services\FltMgr","Description","文件系统筛选器管理器驱动程序"
0x1,"ControlSet001\Services\FltMgr","DisplayName","FltMgr"
0x4,"ControlSet001\Services\FltMgr","ErrorControl",0x1
0x1,"ControlSet001\Services\FltMgr","Group","FSFilter Infrastructure"
0x2,"ControlSet001\Services\FltMgr","ImagePath","system32\DRIVERS\fltMgr.sys"
0x4,"ControlSet001\Services\FltMgr","Start",0x0
0x4,"ControlSet001\Services\FltMgr","Tag",0x4
0x4,"ControlSet001\Services\FltMgr","Type",0x2
0x0,"ControlSet001\Services\FltMgr\Enum"
0x1,"ControlSet001\Services\FltMgr\Enum","0","Root\LEGACY_FLTMGR\0000"
0x4,"ControlSet001\Services\FltMgr\Enum","Count",0x1
0x4,"ControlSet001\Services\FltMgr\Enum","NextInstance",0x1
0x0,"ControlSet001\Services\FltMgr\Security"
0x3,"ControlSet001\Services\FltMgr\Security","Security",01,00,14,80,90,00,00,00,9c,00,00,00,14,00,00,00,30,00,00,00,02,00,1c,00,01,\
  00,00,00,02,80,14,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,00,00,02,00,\
  60,00,04,00,00,00,00,00,14,00,fd,01,02,00,01,01,00,00,00,00,00,05,12,00,00,\
  00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,20,02,00,00,\
  00,00,14,00,8d,01,02,00,01,01,00,00,00,00,00,05,0b,00,00,00,00,00,18,00,fd,\
  01,02,00,01,02,00,00,00,00,00,05,20,00,00,00,23,02,00,00,01,01,00,00,00,00,\
  00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00

0x0,"ControlSet001\Enum\Root\LEGACY_FLTMGR"
0x4,"ControlSet001\Enum\Root\LEGACY_FLTMGR","NextInstance",0x1
0x0,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000"
0x1,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","Class","LegacyDriver"
0x1,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","ClassGUID","{8ECC055D-047F-11D1-A537-0000F8753ED1}"
0x4,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","ConfigFlags",0x0
0x1,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","DeviceDesc","FltMgr"
0x4,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","Legacy",0x1
0x1,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000","Service","FltMgr"
0x0,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000\Control"
0x1,"ControlSet001\Enum\Root\LEGACY_FLTMGR\0000\Control","ActiveService","FltMgr"

0x0,"ControlSet001\Services\vbootdsk"
0x4,"ControlSet001\Services\vbootdsk","Type",0x1
0x4,"ControlSet001\Services\vbootdsk","Start",0x0
0x4,"ControlSet001\Services\vbootdsk","ErrorControl",0x1
0x1,"ControlSet001\Services\vbootdsk","ImagePath","system32\drivers\vbootdsk.sys"
0x0,"ControlSet001\Services\vbootdsk\Parameters\Device"
0x4,"ControlSet001\Services\vbootdsk\Parameters\Device","BusType",0x1
0x1,"ControlSet001\Services\vbootdsk\Parameters\Device","DriverParameter","\Device\HarddiskVolume1\xp.vhd"
0x4,"ControlSet001\Services\vbootdsk\Parameters\Device","CreateInitiatorLU",0x1
0x0,"ControlSet001\Services\vbootdsk\Parameters\PnpInterface"
0x4,"ControlSet001\Services\vbootdsk\Parameters\PnpInterface","5",0x1

[AddLine]
"txtsetup.sif", "BusExtenders.Load",     "fltmgr   = fltmgr.sys"
"txtsetup.sif", "files.fltmgr",   "fltmgr.sys,4"
"txtsetup.sif", "files.fltmgr",   "fltlib.dll,2"
"txtsetup.sif", "BusExtenders",     "fltmgr   = ""File System Filter Manager Driver"",files.fltmgr,fltmgr"

[SetValue]
"txtsetup.sif","SourceDisksFiles","vbootdsk.sys","1,,,,,,4_,4,1,,,1,4"
"txtsetup.sif","SCSI.Load","vbootdsk","vbootdsk.sys,4"
"txtsetup.sif","SCSI","vbootdsk","""VMLite VBoot SCSI Disk Device 32-bit"""
"txtsetup.sif","HardwareIdsDatabase","root\vbootdsk","""vbootdsk"""
——————————————
插件中含文件系统筛选器驱动,如果其它插件已经使用,请将相关内容删除。

2. 生成PE后,设定输出目录为BartPE,将BartPE根目录下的文件删除,再将BartPE\I386下setupldr.bin、ntdetect.com移到BartPE目录下,并将setupldr.bin改名为ntldr,也可以将BartPE\I386目录下的spcmdcon.sys、BIOSINFO.INF两文件删除。

3. 将BartPE\I386目录改名为BartPE\MININT

三、封装

1. 进入C:\vboot\tools\x86目录,打开命令行,输入:
vbootctl createhd C:\xp.vhd /size 2 /fixed
制作2GB的xp.vhd

2. 挂接虚拟硬盘
vbootctl mount c:\xp.vhd
打开磁盘管理器diskmgmt.msc,创建新分区,并格式化(假定盘符为X:),记着要将它设为活动分区。

3. 将BartPE中所有文件复制到X:盘中。

4. 卸载虚拟硬盘:vbootctl umount X:

退出命令行,重新启动,进入“VBoot System\VBoot WinPE”,体验一下VBoot WinPE。

[ 本帖最后由 liuhj 于 2010-11-18 21:15 编辑 ]
作者: ones    时间: 2010-11-18 21:33
怎么不贴几张图来瞧瞧?
作者: liuhj    时间: 2010-11-19 01:16
标题: 回复 #2 ones 的帖子
vboot主要特色是将XP、2K3或一些Linux系统安装VHD虚拟硬盘中运行,所以vboot运行WinPE的思路也很简单,就是将WinPE布放在VHD虚拟硬盘中运行,这里有两个问题:一是安装vboot驱动到WinPE,二是怎样布放WinPE到硬盘中运行。本文就是解决两个问题的。

说明很详细,贴图没有必要。

本人测试WinXPSP3版VBoot WinPE成功。
作者: fjxplsy    时间: 2010-11-19 08:31
好东西啊  谢谢分享 !
作者: 小施    时间: 2010-11-19 09:16
非常强大  学习收藏
作者: dvd008    时间: 2010-11-19 09:41
能建几百M的VHD吗?

这么说,可以在XP下挂载VHD了?以前只能是WIN7
作者: fujianabc    时间: 2010-11-19 10:03
原帖由 dvd008 于 2010-11-19 09:41 发表
能建几百M的VHD吗?

这么说,可以在XP下挂载VHD了?以前只能是WIN7

xp本来就有好几个软件能挂vhd的
作者: liuhj    时间: 2010-11-19 13:39
标题: 回复 #6 dvd008 的帖子
VBOOT创建VHD虚拟硬盘的单位是GB,它支持动态VHD,就是创建一个20GB的VHD虚拟硬盘,实际只用了200MB,那么VHD虚拟硬盘的大小也只有200多MB。

创建虚拟硬盘时不使用/fixed参数,就可以创建动态VHD虚拟硬盘。如创建20GB动态VHD:

vbootctl createhd c:\xp.vhd /size 20

[ 本帖最后由 liuhj 于 2010-11-19 13:40 编辑 ]
作者: bank-w3000    时间: 2010-11-19 14:26
不懂,进来学习。
作者: jxdeng    时间: 2010-11-19 15:58
vhd封装的WinPE,又一新方向。不知有何优势?
作者: dvd008    时间: 2010-11-19 19:51
原帖由 <i>fujianabc</i> 于 2010-11-19 10:03 发表 <a href="http://bbs.wuyou.net/redirect.php?goto=findpost&pid=2088632&ptid=181302" target="_blank"><img src="http://bbs.wuyou.net/images/common/back.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open(this.src);}" onmousewheel="return imgzoom(this);" alt="" /></a><br />

<br />
xp本来就有好几个软件能挂vhd的
<br />
以前用WINMOUNT,往里加东西,出错.

打开,我就用7ZIP.

这样就简单了

只是这个和RAMOS,有什么优势?
作者: fujianabc    时间: 2010-11-19 20:03
原帖由 dvd008 于 2010-11-19 19:51 发表

以前用WINMOUNT,往里加东西,出错.

打开,我就用7ZIP.

这样就简单了

只是这个和RAMOS,有什么优势?

vhdmount没问题,还有vmlite自带的命令行工具,现在已经包含在vhdboot里面了
作者: fujianabc    时间: 2010-11-19 20:29
vhd启动pe 1.x,可以不用手动添加入vboot驱动,直接插着vboot的f6镜像即可,或者用vboot本身的命令把f6镜像模拟成软驱
作者: zhhsh    时间: 2010-11-20 15:40
等等,或许可以把带外置软件的PE的ISO通过vboot启动。
这样无需把整个ISO放到内存里
作者: fujianabc    时间: 2010-11-20 16:46
原帖由 zhhsh 于 2010-11-20 15:40 发表
等等,或许可以把带外置软件的PE的ISO通过vboot启动。
这样无需把整个ISO放到内存里

可以的,我已经试过了,vboot可以单独模拟iso启动,没有vhd模拟也行
作者: 布特300    时间: 2023-7-17 19:15
vboot站点是不是挂掉了

vmlite.com
作者: napoleon_lai    时间: 2023-7-17 20:15
好东西啊, 进来学习
作者: me007003    时间: 2023-7-19 19:10
diskgenius(大多pe都有它)支持vhd,为什么我还折腾它?




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