无忧启动论坛

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

VHD封装的PE!读写编辑更方便!

[复制链接]
跳转到指定楼层
1#
发表于 2009-7-28 17:27:24 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
各位老大是不是应该考虑推出以VHD封装的PE了!这样读写控制和编辑更方便!
48#
发表于 2013-2-17 10:28:35 | 只看该作者
过来学习一下,感觉好复杂
回复

使用道具 举报

47#
发表于 2009-8-1 18:27:12 | 只看该作者
貌似都有些走火入魔,大家都用过vpc吧, vpc的性能硬盘就是vhd, 与win7说的vhd是一回事,win7的vhd映像vpc也一样能够正确识别并引导,区别只是内和外的问题,win7的vhd支持文件当然无法用于xp下(没听说过向上兼容的),如果真想折腾的话, vpc的文件或许可以借鉴~~~~
pe去折腾vhd完全没有必要,如果要配合win7的系统备份和恢复功能的话不妨用用
以上纯粹个人观点,错误百出也不希望拍砖, 老了, 身体不佳不经拍^_^
回复

使用道具 举报

46#
发表于 2009-8-1 18:15:19 | 只看该作者
原帖由 yichya 于 2009-8-1 16:35 发表
WIM也可以加个卷做增量呀。

wim增量卷显然是不能启动的
回复

使用道具 举报

45#
发表于 2009-8-1 16:35:07 | 只看该作者
WIM也可以加个卷做增量呀。
回复

使用道具 举报

44#
发表于 2009-8-1 15:17:57 | 只看该作者
如果VHD能够支持非RAM启动,我觉得也是一大好处,起码要启动这个PE就不必要求大内存了。而且这样做以后,也不存在外置程序的概念了。
回复

使用道具 举报

43#
发表于 2009-8-1 14:55:25 | 只看该作者
或许不妨公正点看vhd 封装格式。

iso,img 贵在广泛的兼容和足够多的启动软件支持上,wim 可能在压缩等方面颇有长处,但也不应忽视vhd格式最吸引人的差异磁盘特性。

例如,某位作者发布一个pe后,经常进行后续更新,要让人重新下载一些动则就几百兆的PE,或者让一些缺乏pe技能的用户自己修改pe文件,显然没有让用户更新一个小巧的差异磁盘来得轻松。

再例如,pe核心和外置分离的形式,用差异磁盘的方式也值得考虑。这些其实对测试和维护都具有现实意义。

chenall 等大师一直走在pe应用和启动研究的前列,建议更应该关注下新格式可能带来的优势,并将可取之处应用到pe领域去。

[ 本帖最后由 八千流 于 2009-8-1 15:07 编辑 ]
回复

使用道具 举报

42#
发表于 2009-8-1 11:38:33 | 只看该作者
我现在觉得LZ有什么神经搭到VHD上不能动了。

我就不明白,成熟的ISO,优良的IMG,正在研究的WIM,到底哪跟LZ过不去?

如果LZ是看中用VHD做PE可以保存设置(还不一定),或者可以在WIN7下更加简单的安装(也不一定),我估计LZ也是有点那个什么了。
回复

使用道具 举报

41#
发表于 2009-8-1 03:47:08 | 只看该作者
吃力不讨好的东西我们火星人不感兴趣

我觉得为了技术而技术没啥意思

要么能增加功能,要么能提高效率,或者提高稳定性、兼容性

如果殊途同归,新路比老路还远一些,那干吗放着老路不走,一定要走新路呢
回复

使用道具 举报

40#
发表于 2009-7-31 17:19:47 | 只看该作者
PE1.X要支持VHD启动,
直接用GRUB4DOS MAP这个VHD启动,(但只支持固定大小的)
进入PE后再使用一个脚本自动挂载一次这个VHD文件,就像ISO的一样.也是可行的.但就失去了它的优势,只是使用VHD封装而已.

基于VISTA以上的PE应该就可以把驱动移过来或许可以用.
回复

使用道具 举报

39#
发表于 2009-7-31 17:02:01 | 只看该作者
原帖由 rstart 于 2009-7-31 16:08 发表
看完所有的帖子。。。 对 1.x 和 2.x 的 pe 来说, vhd 基本没有什么优势。。

其实pe 3.0用vhd启动也没什么优势,微软官方文档里面也没提到过用vhd启动winpe这回事。

只不过是我当时看到了vhd启动win7的方法后,结合非ramdisk启动winpe 2.x/3.0的方法,自己搞出vhd启动winpe 3.0的,然后就写了个启动方法而已。
回复

使用道具 举报

38#
发表于 2009-7-31 16:08:51 | 只看该作者
看完所有的帖子。。。 对 1.x 和 2.x 的 pe 来说, vhd 基本没有什么优势。。
回复

使用道具 举报

37#
发表于 2009-7-31 15:51:02 | 只看该作者
原帖由 NicTense 于 2009-7-31 02:00 发表
我从火星来的,请问vhd相对于之前的img,iso或者wim,到底有什么优秀之处啊

没什么优势,只是img/iso/sdi/wim都是ramdisk启动的winpe,vhd是非ramdisk启动的winpe
回复

使用道具 举报

36#
发表于 2009-7-31 02:00:16 | 只看该作者
我从火星来的,请问vhd相对于之前的img,iso或者wim,到底有什么优秀之处啊
回复

使用道具 举报

35#
发表于 2009-7-30 17:54:37 | 只看该作者
就算他们有用,也不见得来管我们呀,本来研究PE就影响他们的利润(有不要钱的PE用就不用买了)。
回复

使用道具 举报

34#
发表于 2009-7-30 17:35:01 | 只看该作者
原帖由 yichya 于 2009-7-30 17:18 发表
换句话说,怎样让PE1.X-2.X从native那块就支持VHD才好呀。

这个你找David Cutler都不一定有用(不找盖茨了,前面说他只懂dos :))

注:David Cutler是NT内核的首席设计师
回复

使用道具 举报

33#
发表于 2009-7-30 17:18:48 | 只看该作者
从VHD启动才是个问题,挂载多简单呀,随便用个什么软件就可以了,换句话说,怎样让PE1.X-2.X从native那块就支持VHD才好呀。
回复

使用道具 举报

32#
发表于 2009-7-30 17:05:54 | 只看该作者
原帖由 chenall 于 2009-7-30 11:02 发表
使用VHD 封装PE会更方便吗?
感觉使用VHD 封装PE并没有多大的实用性.
但如果可以在PE里面加入VHD驱动让它可以读写VHD文件倒是不错的想法.

这个到不困难,把微软的vhdmount注入winpe 1.x/2.x就可以了,vhdmount是virtual server 2005中的一个组件,可以单独安装,在xp/vista下挂载vhd文件
回复

使用道具 举报

31#
发表于 2009-7-30 12:12:40 | 只看该作者
原帖由 chenall 于 2009-7-30 11:02 发表
使用VHD 封装PE会更方便吗?
感觉使用VHD 封装PE并没有多大的实用性.
但如果可以在PE里面加入VHD驱动让它可以读写VHD文件倒是不错的想法.



win7pe3.0 本身就支持 VHD。以前的低版本pe不支持。

启动进入win7pe后,运行 diskpart命令

select vdisk file=d:\win7pe.vhd
attach vdisk


就挂载了win7pe.vhd,

也可以使用 /s 参数,把上述内容保存为select.txt文件

diskpart /s select.txt

即可挂载。

挂载后这个win7pe.vhd文件会被映射成一个盘符,你就可以读写了。

[ 本帖最后由 kinglion 于 2009-7-30 12:17 编辑 ]
回复

使用道具 举报

30#
发表于 2009-7-30 11:02:33 | 只看该作者
使用VHD 封装PE会更方便吗?
感觉使用VHD 封装PE并没有多大的实用性.
但如果可以在PE里面加入VHD驱动让它可以读写VHD文件倒是不错的想法.
回复

使用道具 举报

29#
发表于 2009-7-30 10:52:18 | 只看该作者
看来按LS的办法,我们得对VISTAPE大换血了。
回复

使用道具 举报

28#
发表于 2009-7-29 21:56:06 | 只看该作者
原帖由 neo4026 于 2009-7-29 21:41 发表

老实说....有点怀疑可行性......

可行性不大,除非能把以下驱动结构全盘移到vista/pe 2.x中,且不出现驱动版本问题,详见
http://msdn.microsoft.com/en-us/library/dd323654(VS.85).aspx
回复

使用道具 举报

27#
发表于 2009-7-29 21:41:24 | 只看该作者
原帖由 kinglion 于 2009-7-29 16:50 发表



呵呵,当然的了,修改了VISTA的BOOTMANGE后,启动VISTA后会自动识别VHD。你可以尝试一下。我接下来借花献佛了。

在Windows 7中,微软把VHD的驱动内置进了操作系统,也包括在了Windows 7的引导程序中。 ...

老实说....有点怀疑可行性......
回复

使用道具 举报

26#
 楼主| 发表于 2009-7-29 21:18:01 | 只看该作者
原帖由 fujianabc 于 2009-7-29 15:56 发表

不知者无畏,这个你想都别想,根本不可能,你去找盖茨都没用!!!

vhd只有win7的nt 6.1内核支持直接启动,xp/vista的都不支持。

另外,xp的pe也不能用bootmgr引导,只能用setupldr.bin引导

哈哈,盖茨那老头只懂DOS,这么复杂的问题还得我们70后来解决!
回复

使用道具 举报

25#
发表于 2009-7-29 19:35:23 | 只看该作者
拿虚拟机试验一下好了!谢谢楼主!
回复

使用道具 举报

24#
发表于 2009-7-29 19:23:48 | 只看该作者
原帖由 zhhsh 于 2009-7-29 19:02 发表
往WinPE 1.x加入vhd相关驱动也是一个问题

加了也没用,winpe 1.x不能用bootmgr启动
回复

使用道具 举报

23#
发表于 2009-7-29 19:02:37 | 只看该作者
往WinPE 1.x加入vhd相关驱动也是一个问题
回复

使用道具 举报

22#
发表于 2009-7-29 16:50:45 | 只看该作者
原帖由 fujianabc 于 2009-7-29 16:03 发表

看你也是制作pe的高手了,怎么会认为vhd启动只需要一个bootmgr呢?

bootmgr只是加载vhd的第一步,接着更重要的是还需要vhd驱动。



呵呵,当然的了,修改了VISTA的BOOTMANGE后,启动VISTA后会自动识别VHD。你可以尝试一下。我接下来借花献佛了。

在Windows 7中,微软把VHD的驱动内置进了操作系统,也包括在了Windows 7的引导程序中这也就是说,我们可在使用Windows 7的时候,直接访问VHD文件中的内容(把VHD的硬盘映射到一个盘符),也可以通过Windows 7的引导程序,启动位于VHD磁盘上的另一个操作系统,这也就是说,在启动计算机的阶段,Windows 7的引导程序可以大摇大摆的直接访问VHD文件,并且启动VHD中安装的系统。

慢着,什么是Windows 7的引导程序?简单地说,引导程序就是在操作系统内核或用户应用程序运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备(加载必要的驱动程序)、建立内存映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核或用户应用程序准备好正确的环境。我们在裸机上安装Windows 7时,首先做的,就是把Windows 7的引导程序写入磁盘的特殊位置。Windows 7的引导程序带有VHD驱动,因此可以从VHD启动。

大牛Aviraj Ajgekar在他的博客中又列出了在Vista SP1下使用VHD启动计算机的方法,我想大家一定会很感兴趣,特此转贴如下(喻勇(Frank Yu)的技术博客)。
(原文在此)

以下的操作需要:
1. 干净安装的Windows 7计算机一台
2. U盘一个
3. Vista或者Widows 7的启动光盘一张
4. 你想要折腾的Vista计算机(一台或多台)
------------以下为原文的翻译------------
为了在安装Vista的计算机上使用VHD启动,我们需要下面三个步骤
  • 复制Windows 7的引导文件(启动包含对VHD的支持)
  • 备份Vista的引导文件
  • 用Windows 7的引导文件替换Vista的引导文件
复制Windows 7的引导文件为了能够从VHD启动计算机,机器的引导文件必须支持VHD格式文件的读写。Windows 7的引导文件包含了这一功能,我们需要做的就是把Windows 7的引导文件复制出来并且覆盖Vista的引导文件。Windows 7的引导文件有两个:BootMgrBCDEdit.exe. BootMgr通常在系统分区的根目录,BcdEdit.exe在C:\Windows\System32文件夹下。
找一台工作正常的Windows 7计算机,连接上一个U盘,并用管理员权限执行以下的命令:
C:\windows\system32>xcopy /h /y bcdedit.exe f:\    (F盘是U盘的盘符)
/H - 复制隐藏和系统文件
/Y  - 对确认提示进行默认YES应答
C:\>cd\
C:\>xcopy /h /y bootmgr f:\
完成后安全的把U盘拔下,备用。

备份Vista的引导文件在替换Vista的引导文件之前,我们必须进行备份。步骤如下:
启动进入Vista,用管理员权限执行以下的命令:
C:\windows\system32>cd\
C:\>xcopy /y /h bootmgr bootmgr.sav
Press f after prompted
C:\>cd Windows\System32
C:\windows\system32>xcopy /y /h bcdedit.exe bcdedit.sav
Press f after prompted

用Windows 7的引导文件替换Vista的引导文件这是最关键的一步,我们需要把之前从Windows 7提出出来的引导文件复制到Vista上。我们可以用Vista安装盘启动计算机,并进入Windows恢复工作台(或者Windows PE启动计算机),并且执行下面的操作:.
C:\>attrib bootmgr –s –h –r                     (Note:  C: Vista的系统分区)
Attribute command with –s –h –r changes the System, Hidden and Read Only attributes of a given file.
C:\>e:                                                          (Note:  E: 之前备份Windows 7引导文件的U盘)
E:\>xcopy /y /h bootmgr c:\bootmgr
E:\>xcopy /y /h bcdedit.exe c:\windows\system32

搞定!接下来,您就可以像在Windows 7一样,从Vista启动VHD镜像文件了!
------------原文到此结束------------

[ 本帖最后由 kinglion 于 2009-7-29 17:04 编辑 ]
回复

使用道具 举报

21#
发表于 2009-7-29 16:03:41 | 只看该作者
原帖由 kinglion 于 2009-7-29 13:12 发表

当然也可以替换VISTA的BOOTMANGE文件为WIN7的从而使VISTA本身启动后可以识别VHD。

看你也是制作pe的高手了,怎么会认为vhd启动只需要一个bootmgr呢?

bootmgr只是加载vhd的第一步,接着更重要的是还需要vhd驱动。
回复

使用道具 举报

20#
发表于 2009-7-29 15:56:32 | 只看该作者
原帖由 woshixiguapi 于 2009-7-29 07:45 发表

所以我想那位高人把PE3.0中的VHD组件移植到1.X和2.X中,然后以
BOOTMGR启动,这样真的很吸引人呢!

不知者无畏,这个你想都别想,根本不可能,你去找盖茨都没用!!!

vhd只有win7的nt 6.1内核支持直接启动,xp/vista的都不支持。

另外,xp的pe也不能用bootmgr引导,只能用setupldr.bin引导

[ 本帖最后由 fujianabc 于 2009-7-29 15:57 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-2-1 02:53

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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