无忧启动论坛

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

win 8.1 update1原生wim启动方法和体验

    [复制链接]
跳转到指定楼层
1#
发表于 2014-3-13 06:23:13 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 fujianabc 于 2014-3-17 06:19 编辑

这两天获悉Win 8.1 update 1支持原生wim启动,赶紧试了一下,很强大
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=327098

这里发一下大致方法和测试报告。

首先你需要一个集成了update 1的win 8.1和winpe (所谓的winpe 5.1),所有dism或者imagex操作都需要集成了update1的win8.1/winpe 5.1下进行。集成方法很繁琐,我在二楼另外写,没兴趣的等下个月官方集成版吧。
有了win 8.1 with update 1后就很简单了(可以忽略2楼和3楼了),分两种情况:1、制作全新启动的wim启动win  8.1;2、正常运行的win 8.1做成wim启动

一、制作全新启动的wim启动win  8.1
1、在winpe 5.1下,假设集成版安装文件为z:\sources\install.wim,要启动的wim放到d:盘,执行命令
  1. Dism /Export-Image /WIMBoot /SourceImageFile:z:\sources\install.wim /SourceIndex:1 /DestinationImageFile:d:\wimboot.wim
复制代码

这条命令生成可以启动的wim文件,启动/wimboot是关键参数,生成的wim文件比默认maximum方式压缩的wim文件要大一些。

2、生成指针文件(pointer file),假设放在c:分区
  1. DISM /Apply-Image /ImageFile:d:\wimboot.wim /ApplyDir:C: /Index:1 /WIMBoot
复制代码

生成之后可以看到c:盘中文件结构和普通windows分区一样(图一),但实际只占了200多MB,这些其实只是wim文件索引。另外,所有写入操作将保存在指针文件上,wim文件不会发生变动

3、生成启动菜单,重启开始系统安装和配置。
  1. bcdboot c:\windows /l zh-cn
复制代码



二、正常运行的win 8.1做成wim启动
如果一个普通硬盘启动的win 8.1 with update1已经配置安装好了,想做成wim启动,按如下步骤在winpe 5.1中操作。假设配置好的win8.1 with update1在z:分区
1、生成可以启动的wim文件,放到d:盘
  1. DISM /Capture-Image /WIMBoot /ImageFile:d:\wimboot.wim /CaptureDir:z: /Name:"WIMBoot Enterprise_x64 with 8.1 Updates"
复制代码

2、生成指针文件,放到c:盘
  1. DISM /Apply-Image /ImageFile:d:\wimboot.wim /ApplyDir:C: /Index:1 /WIMBoot
复制代码

3、修复盘符(否则系统启动可能会把原有系统分区z:认作c:),命令在附件中
  1. FixLetter.cmd /currentos:c
复制代码

4、生成启动菜单,重启开始系统安装和配置。
  1. bcdboot c:\windows /l zh-cn
复制代码


几点注意:
1、wimboot不需要官方所谓的UEFI,也不需要SSD,但机械硬盘wimboot速度很慢
2、方法一生成的指针文件大概200多MB,但启动配置完占用了1G多,因为系统安装配置操作都写入了指针分区。第二种方法,因为已经安装完系统了,直接启动指针文件还是只占几百MB
3、wim文件原则上可以和指针文件放在一个分区,不过建议分开来放而且指针文件和wim文件可以在不同硬盘上
4、指针文件可以放到一个VHD/VHDX文件中启动,这样系统就只需要一个vhd和一个wim文件了(注意,wim文件本身不能放入vhd中)
5、wim系统指针分区的改动可以保存为新的增量wim文件(同文件夹下的custom.wim),并同时清除pointer file所占空间,在winpe 5.1下执行
  1. DISM /Capture-CustomImage /CaptureDir:C:
复制代码

c.JPG (108.71 KB, 下载次数: 280)

图一

图一

d.JPG (61.96 KB, 下载次数: 274)

图二

图二

fixletter.rar

2.74 KB, 下载次数: 698, 下载积分: 无忧币 -2

评分

参与人数 10无忧币 +50 收起 理由
anarki2001 + 5 赞一个!
tapy + 5 我成功了
20090101 + 5 赞一个!
czswuyou + 5 很给力!
peterpanheaven + 5 赞一个!
kinglion + 5
tt911 + 5 很给力!
2011895866818 + 5 这个特性很新奇啊!!
飛之軌跡 + 5 建议使用optimize参数,以及cleanup-image.
freesoft00 + 5 很给力!

查看全部评分

推荐
发表于 2014-4-25 21:07:58 | 只看该作者
建议大大弄一个WimBoot.wim系统的处理工具,类似VHD系统处理工具,方便大家,不用录入命令等等
回复

使用道具 举报

推荐
发表于 2014-4-17 18:07:27 | 只看该作者
这个特性很新奇啊!!
回复

使用道具 举报

4#
 楼主| 发表于 2014-3-13 06:24:35 | 只看该作者

集成update1到win 8.1和winpe的方法

本帖最后由 fujianabc 于 2014-3-13 07:01 编辑

本楼介绍集成update1到win 8.1和winpe的方法,比制作wimboot烦多了,时间也很长。以下操作可以在没有update1的win 8.1/winpe5.0中完成

1、集成update1到win 8.1的install.wim
你需要先准备win 8.1原版install.wim,取名install_old.wim,还有Windows8.1-KB2919442-x64.msu, Windows8.1-KB2919355-x64.msu,Windows8.1-KB2932046-x64.msu,Windows8.1-KB2937592-x64.msu四个补丁,假设都放在d:盘。
1、挂载wim
  1. md d:\mount
  2. Dism /Mount-Image /ImageFile:d:\install_old.wim /Index:1 /MountDir:d:\mount
复制代码

2、离线安装补丁包
  1. Dism /Add-Package /PackagePath:d:\Windows8.1-KB2919442-x64.msu /Image:d:\mount
  2. Dism /Add-Package /PackagePath:d:\Windows8.1-KB2919355-x64.msu /Image:d:\mount
  3. Dism /Add-Package /PackagePath:d:\Windows8.1-KB2932046-x64.msu /Image:d:\mount
  4. Dism /Add-Package /PackagePath:d:\Windows8.1-KB2937592-x64.msu /Image:d:\mount
复制代码

3、卸载,重新导出新的install.wim
  1. Dism /Unmount-Image /MountDir:d:\mount /Commit
  2. Dism /Export-Image /SourceImageFile:d:\install_old.wim /SourceIndex:1 /DestinationImageFile:d:\install.wim
复制代码

4、优化减小体积,此步可以省略,但可以减小wim很多体积。具体写在3楼

2、集成update1到win 8.1内核winpe中
假设原版安装盘中的boot.wim在d:盘根目录,取名boot_old.wim
1、挂载wim,注意是第二个index
  1. md d:\mount
  2. Dism /Mount-Image /ImageFile:d:\boot_old.wim /Index:2 /MountDir:d:\mount
复制代码

2、离线安装补丁包
  1. Dism /Add-Package /PackagePath:d:\Windows8.1-KB2919442-x64.msu /Image:d:\mount
  2. Dism /Add-Package /PackagePath:d:\Windows8.1-KB2919355-x64.msu /Image:d:\mount
  3. Dism /Add-Package /PackagePath:d:\Windows8.1-KB2932046-x64.msu /Image:d:\mount
复制代码

3、优化wim
  1. Dism /image:d:\mount /Cleanup-Image /StartComponentCleanup /ResetBase
复制代码

4、卸载,重新导出新的boot.wim
  1. Dism /Unmount-Image /MountDir:d:\mount /Commit
  2. Dism /Export-Image /bootable /SourceImageFile:d:\boot_old.wim /SourceIndex:2 /DestinationImageFile:d:\boot.wim
复制代码
回复

使用道具 举报

5#
 楼主| 发表于 2014-3-13 06:26:33 | 只看该作者

减小集成后install.wim体积的方法

本帖最后由 fujianabc 于 2014-3-13 07:21 编辑

楼上winpe集成后优化减小镜像只要一条命令即可,而清理优化install.wim则比较繁琐,但可以减小wim启动文件的体积。大致方法如下:

1、先把集成后的install.wim装成一个系统,第一次登陆选择时区那个界面时,按ctrl+shift+F3重启进入审核模式

2、重启后sysprep选择“全新体验”“通用”,然后再次重启,用光盘或者其他设备启动进入集成有update1的winpe 5.1

3、winpe中假设系统在z:盘,如果要制作的wim只用于wim启动执行(这样做出来的install.wim大概能小好几百MB)
  1. Dism /Optimize-Image /Image:z: /WIMBoot
复制代码

注意这样系统就不能用普通方式启动了,如果install.wim需要普通启动,不要执行此步骤

4、执行清理(这个是关键,不管是否wim启动都要执行此命令)
  1. Dism /image:z: /Cleanup-Image /StartComponentCleanup /ResetBase
复制代码


5、删除z:\users\administrator和winre.wim,然后制作镜像
  1. DISM /Capture-Image /compress:max /ImageFile:d:\install.wim /CaptureDir:z: /Name:"Windows 8.1 Updates"
复制代码

回复

使用道具 举报

6#
发表于 2014-3-13 08:35:26 | 只看该作者
f大速度真快 佩服
回复

使用道具 举报

7#
发表于 2014-3-13 11:33:04 | 只看该作者
其实制作WINPE8.1不算繁琐嘛。
回复

使用道具 举报

8#
 楼主| 发表于 2014-3-13 14:55:35 | 只看该作者
friend8179 发表于 2014-3-13 10:44
搞定了,没有想象中卡啊

不知道01.DISM /Apply-Image /ImageFile:d:\wimboot.wim /ApplyDir:C: /Index:1 ...

win8.1 update1貌似是依靠一个叫wof.sys的驱动来访问pointer files的。win7可以加载此驱动。
grub+firadisk没成功,非wimboot的win8.1 update也没能成功安装firadisk
回复

使用道具 举报

9#
 楼主| 发表于 2014-3-13 16:39:36 | 只看该作者
friend8179 发表于 2014-3-13 15:35
firadisk跪了?
这个开源好解决,反馈下估计就行。

win7+wof.sys貌似正常,但dism/imagex之类的win7下不能用。
firadisk可能是年久失修了
回复

使用道具 举报

10#
 楼主| 发表于 2014-3-13 17:05:17 | 只看该作者
friend8179 发表于 2014-3-13 10:44
搞定了,没有想象中卡啊

不知道01.DISM /Apply-Image /ImageFile:d:\wimboot.wim /ApplyDir:C: /Index:1 ...

重新试了一下,发现pointer分区和wim文件完全可以在不同硬盘上。一楼改掉了
微软说明中的3大限制都是浮云: SSD、UEFI、pointer分区和wim在同一个硬盘上
回复

使用道具 举报

11#
 楼主| 发表于 2014-3-14 01:00:38 | 只看该作者
friend8179 发表于 2014-3-14 00:03
果然微软不带咱们玩啊

win7显然不可能了,不过wim启动官方还有一个限制是只对桌面版有效,服务器版不行,估计这个能破掉了。

刚刚试了一下,发现wim系统指针分区的改动可以保存为新的增量wim文件(同文件夹下的custom.wim),并同时清除pointer file所占空间,在winpe 5.1下执行
  1. DISM /Capture-CustomImage /CaptureDir:C:
复制代码
回复

使用道具 举报

12#
 楼主| 发表于 2014-3-14 04:04:32 | 只看该作者
friend8179 发表于 2014-3-14 01:09
刚才发现点好玩的东西,个人觉得还是有可能的

win8.1 update1下system32目录下有WimBootCompress.in ...

这个文件早就发现了,在imagex /apply /wimboot时c:盘根目录就有此文件存在,apply完自动删除了。
wimboot不是进入native模式才生效的,这个ini文件基本和imagex的排除列表一样,下面[ExclusionList]是指imagex /capture时排除的文件,不是不压缩的文件。

imagex /apply /wimboot释放的文件中只有ntoskrnl.exe、\Windows\System32\Config\SYSTEM、wof.sys、winload.exe/efi、winresume.exe/efi是不压缩的真实文件(可以用winhex看到的,所有pointer file全是稀疏文件属性)。其实新版bootmgr/bootmgfw.efi本身就具备了读写pointer files的功能,就如同bootmgr能直接不用驱动读取vhd一样。
回复

使用道具 举报

13#
 楼主| 发表于 2014-3-14 15:33:51 | 只看该作者
friend8179 发表于 2014-3-14 08:45
w 我的设想已经成功了,将文件补充到native状态,系统成功启动,WIN 7 X64版本

期待结果啊。。。
回复

使用道具 举报

14#
发表于 2014-3-15 10:21:52 | 只看该作者
2、生成指针文件(pointer file),假设放在c:分区

可以把指针文件放在vhd里面吧??
所以只需要一个wim,一个vhd,就可以启动
回复

使用道具 举报

15#
 楼主| 发表于 2014-3-15 17:38:42 | 只看该作者
friend8179 发表于 2014-3-15 08:07
大神,我已经整到支持vhd镶嵌启动wimboot,grub+firadisk自然也不在话下

这个是win7核心的吧,所以firadisk也支持。
我后来试了一下,原版win 8.1都无法正常安装firadisk,firadisk要更新了。

winpe 5.1我自己集成好了,不过这两天不方便传大文件(3G上网棒在上网,有流量限制)。按理你已经集成出win8.1 update1了,按我2楼的步骤,很容易集成winpe 5.1啊,一样的补丁包
回复

使用道具 举报

16#
 楼主| 发表于 2014-3-16 18:54:12 | 只看该作者
friend8179 发表于 2014-3-16 15:38
技术上自己也感觉没啥问题

关键是懒并且没空啊,每天都快凌晨回去折腾自己电脑

发帖之前想了一下,发现发在其他区都不太合适。
现在wuyou板块分的太细太多,人气都分散了。以前发在第一个综合板块也没啥人气
回复

使用道具 举报

17#
发表于 2014-3-17 00:23:15 来自手机 | 只看该作者
是否可以把指针文件做成ramos运行,这样只读wim,写都在内存进行,可以代替ewf或fbwf,毕竟全内存运行没必要,win7系统开机 c盘一堆文件都自动加载到内存,比如8g内存。安装到硬盘正常开机都差不多占用2g内存了,所以没有必要全ramos,只读wim写内存
回复

使用道具 举报

18#
发表于 2014-3-17 00:39:09 | 只看该作者
感谢楼主向我们介绍了全新的8.1 WIM系统,果然原生启动支持是很强大的,但系统运行时的中间环节略多了,也比较吃硬盘,有利必有弊。我暂时都还不打算把8.1作为常用系统。
回复

使用道具 举报

19#
 楼主| 发表于 2014-3-17 05:44:58 | 只看该作者
本帖最后由 fujianabc 于 2014-3-17 06:50 编辑
2012jlffa 发表于 2014-3-17 00:23
是否可以把指针文件做成ramos运行,这样只读wim,写都在内存进行,可以代替ewf或fbwf,毕竟全内存运行没必要 ...


firadisk目前不行,winvblock可能可以。
其实我的想法和你反过来,wim文件放到ramdisk中,指针分区则在实体硬盘上。这样系统文件都直接从内存读取,秒杀SSD,而保存则直接写入硬盘,避免了一般ramos保存设置麻烦的问题
回复

使用道具 举报

20#
 楼主| 发表于 2014-3-17 06:21:10 | 只看该作者
2011dingfei 发表于 2014-3-15 10:21
2、生成指针文件(pointer file),假设放在c:分区

可以把指针文件放在vhd里面吧??

之前没试过,回复错了。

刚刚试了一下,指针分区可以放到VHD中,这样的确只需要一个vhd、一个wim就可以了。
当然wim文件本身不能放入vhd内
回复

使用道具 举报

21#
发表于 2014-3-17 07:47:01 来自手机 | 只看该作者
fujianabc 发表于 2014-3-17 05:44
firadisk目前不行,winvblock可能可以。
其实我的想法和你反过来,wim文件放到ramdisk中,指针分区则 ...

你这样做,没什么优势,第一wim文件比较大,就算精简到1g左右大小,第二nt6核心不像nt5,它本来对内存有所优化,简单来说开机就自动加载一部分系统文件内存里面(内存越大加载系统文件越多,4g内存占用1g,8g内存占用2g),打开过一次chrome关闭,下次打开直接从内存打开。至于修改方便vhd加firadisk grub4dos更加方便。。如果你这样做的话加载wim到内存,而wim里面的部分系统文件又加载一遍到内存,内存占用两次了。
回复

使用道具 举报

22#
发表于 2014-3-17 08:04:36 来自手机 | 只看该作者
其实你可以看看性能监控,磁盘读写监控,几乎24小时开机,平均c盘读写都是几百k到几m而已。如果你把写都放在磁盘,这样以后安装的软件,比如qq,这时候无论读或者写都在硬盘执行,用起来和正常的硬盘nt6速度没区别
回复

使用道具 举报

23#
发表于 2014-3-17 08:20:05 来自手机 | 只看该作者
或者变态的说,c盘就是除了开机有读取,c盘几乎都在几k徘徊读写(临时文件除外,写放在内存可以解决这个问题)其实换现在已有的东西来说,ewf和全ramos用起来可以说是一模一样,ewf虽然读取会读取到c盘,但是上面说过了,系统开机会把很多需要的常用的系统文件都加载到内存(读取的话也从内存读取了,除了开机才从硬盘读取),这样ewf和ramos就真的没区别了
回复

使用道具 举报

24#
发表于 2014-3-17 08:43:07 | 只看该作者
主要用途与用法佩服谢谢
回复

使用道具 举报

25#
发表于 2014-3-17 14:24:31 | 只看该作者
对楼主提一个小小的建议:“指针”这样的说法不太让人习惯,容易理解成 pointer,说是“索引”就比较自然些了(index)。
回复

使用道具 举报

26#
 楼主| 发表于 2014-3-17 15:31:15 | 只看该作者
2013_top398 发表于 2014-3-17 14:24
对楼主提一个小小的建议:“指针”这样的说法不太让人习惯,容易理解成 pointer,说是“索引”就比较自然些 ...

微软官方文档里面写的是pointer files,我翻译没错阿
回复

使用道具 举报

27#
发表于 2014-3-17 15:43:57 | 只看该作者
fujianabc 发表于 2014-3-17 15:31
微软官方文档里面写的是pointer files,我翻译没错阿

再看了一下,确实是这样,楼主的翻译没错,是我没仔细看。但我总觉得“指针分区”、“指针文件”的说法有些别扭。
回复

使用道具 举报

28#
发表于 2014-3-17 16:55:47 | 只看该作者
不太看得懂。
回复

使用道具 举报

29#
发表于 2014-3-17 18:33:08 来自手机 | 只看该作者
nt6不是原生支持wim吗?这个wimboot跟前者有啥区别?求科普
回复

使用道具 举报

30#
发表于 2014-3-17 20:13:23 | 只看该作者
支持下,这是新的vhd启动方法了吧
回复

使用道具 举报

31#
发表于 2014-3-17 21:48:51 | 只看该作者
鼓掌
回复

使用道具 举报

32#
发表于 2014-3-20 17:15:04 | 只看该作者
多谢楼主的探索。
有了这个技术,终于可以由XP RAMOS转换到Win8.1 RAMOS了。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2025-5-10 09:01

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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