Windows-8-Logo-Large

Windows 8.1 Update 以 WIMBoot 方式进行安装

        在大家学习了 Windows 8.1 Update 创建 WIMBoot 映像,并将 Windows ADK 的 WinPE 5 升级到 WinPE 5.1,WIMBoot 的安装准备工作就算全部就绪了!接下来我们就需要准备实验环境来进行 WIMBoot 的安装测试,这里强烈推荐大家使用最新的 Hyper-V,其二代虚拟机技术支持 UEFI(实际测试基于BIOS 的 MBR 环境也同样可以实现 WIMBoot)。

        开始前再来回顾一下 WIMBoot 概述,本例将参考官方推荐的方式进行实验。在 Hyper-V 下创建一台基于二代技术的虚拟机,内存分配 2GB,磁盘分配 16GB,将采用 GPT 格式,并创建 ESP、MSR、Windows 和 images 分区卷,具体的操作步骤稍后奉上。

wimboot-review

        现在将准备好的 WinPE 5.1 和支持 WIMBoot 的 Install.wim 打包成一个 ISO 文件,便于虚机载入使用。如果已经参考 gOxiA 之前的文章 WinPE 5 升级到 WinPE 5.1,执行了相关的操作,那么可以直接将 install_wimboot.wim(支持 WIMBoot 的系统映像)和 winre.wim(恢复工具映像)拷贝到“C:\winpe_amd64\media\sources”目录下,并使用下面的命令行生成 ISO。

makewinpemedia /iso c:\winpe_amd64 c:\winpe_amd64\wimboot.iso

        首先,载入 wimboot.iso 启动虚机,使用 diskpart 为磁盘分区,为此执行下面的命令行。

diskpart

sel disk 0

clean

convert gpt

create partition efi size=100

format quick fs=fat32 label=system

create partition msr size=128

create partition primary

shrink minimum=10000

format quick fs=ntfs quick=windows

assign letter=c

create partition primary

format quick fs=ntfs label=images

assign letter=m

set id=”de94bba4-06d1-4d40-a16a-bfd50179d6ac”

gpt attributes=0x8000000000000001

exit

diskpart

        然后,将 install_wimboot.wim 拷贝到 images 分区卷,并执行 WIMBoot 安装,为此执行下列命令行。

md m:\windowsimages

copy d:\sources\install_wimboot.wim m:\windowsimagesinstall.wim

dism /apply-image /imagefile:m:\windowsimages\install.wim /applydir:c: /index:1 /wimboot

apply_wimboot

        WIMBoot 的安装其实很简单,就是在释放映像时多加了一个参数。现在我们需要为系统创建启动数据,为此执行如下命令。

c:\windows\system32\bcdboot c:\windows /l zh-ch

        现在,再将 winre.wim 也拷贝到 images 分区卷,并将这个 winre.wim 注册到当前系统中。这么做的目的显而易见,因为恢复工具存储在一个隐藏的分区卷(OEM)中,得到了有效的保护,为此执行如下命令行。

md m:recoverywindowsre

xcopy d:\sources\winre.wim m:\recovery\windowsre\winre.wim /h[code]

[code]c:\windows\system32\reagentc /setreimage /path m:\recovery\windowsre /target c:\windows

reagentc_winre

        为了进一步的保护系统映像文件,我们可以使用 icacls 命令为所在目录进行安全性配置。

icacls m:\windowsimages /inheritance:r /T

icacls m:\windowsimages /grant:r SYSTEM:(r) /T

icacls m:\windowsimages /grant:r *S-1-5-32-544:(r) /T

        OK,现在我们重启虚机体验一下 WIMBoot,系统初始化结束后进入 OOBE 阶段,与传统过程一致,跟随向导完成操作即可进入系统。打开资源管理显示隐藏和系统文件,再打开系统盘的属性看看,大概占用了不到 3GB 的空间,如果我们关闭虚拟内存还能回收回来更多的空间容量。

wimboot_view

        在用户看来当前系统盘与传统系统盘并无区别,但是系统盘相关的目录和数据都通过指针进行了重定向。来看看这有意思的地方,查看 Windows 目录属性,会发现其目录显示占用近 11GB 的容量。

wimboot_view_2_1

        之后,gOxiA 还做了恢复实验,即执行:恢复电脑而不影响你的文件。恢复后的系统只有 Windows.old 目录实际占用系统卷的空间。

wimboot_view_4

        WIMBoot 也可以使用单卷的方式来安装,即映像和系统都放在一个卷里。虽然在系统运行状态下,映像文件并不能被修改或删除,但这种方式并不推荐,只是为了方便测试,减少操作步骤罢了!

WIMBoot_Demo1

        微软官方虽然要求 WIMBoot 需使用 UEFI 方式启动,并使用 SSD 或 eMMC 存储,但实际测试并非如此。下图就是基于 BIOS 的 MBR 环境运行的 WIMBoot。

wimboot_view_x86

参考文章:

Deploy WIMBoot Images: If you know the size of the images upfront:http://technet.microsoft.com/zh-cn/library/dn605112.aspx

使用部署脚本应用 Windows、系统和恢复分区:http://technet.microsoft.com/zh-cn/library/hh825089.aspx

使用 Windows ADK 进行 Windows 部署:http://technet.microsoft.com/zh-cn/library/hh824947.aspx

Windows Deployment | 评论(2) | 引用(0) | 阅读(20548)
gOxiA Email Homepage
2014/06/13 12:11
to:mike, wimboot支持虚拟机,起码我在Hyper-V上实验时没有问题。如果你当前在vm上执行,并基于mbr磁盘,那么在bcdboot时应当使用“/s ”来指定启动卷。
mike
2014/06/12 10:06
請問,wimboot可以在VM上完成嗎?
我執行到c:\windows\system32\bcdboot c:\windows /l zh-ch發生錯誤,failure when attempting to copy boot files,請問該如何克服??
分页: 1/1 第一页 1 最后页
发表评论
昵称 [注册]
密码 游客无需密码
网址
电邮
打开HTML 打开UBB 打开表情 隐藏 记住我