无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: happymy

轻松部署(无人值守安装+ICE入门)Windows Embedded Standard 2011 镜像

  [复制链接]
发表于 2009-9-5 16:33:12 | 显示全部楼层 |阅读模式

本文适合的软件版本:CTP1

大家看过:
轻松构建你的第一个 Windows Embedded Standard 2011 镜像。
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=148678
应该对Windows Embedded Standard 2011有个初步的了解。

如果我要给1000台设备安装WES 2011 可就不能那篇文章进行安装了,因为你不想重复1000次同样的操作吧。
通过这篇文章,大家能掌握ICE的使用(不是冰块……)和使用ICE编写一个无人应答文件来进行无人值守安装、集成驱动、定制一个WES 2011镜像。
ICE的全称是Image Configuration Editor一个类似AIK的工具。
ICE的界面和AIK的Windows System Image Manager(SIM)很像,但是操作上有很大的不同(包的名称和位置都不同。)
Windows 7 32 chs-2009-09-05-17-35-11.jpg
好了让我开始


先准备一下:
Quebec CTP WES Toolkit和Quebec CTP 32Bit或者64Bit 的Runtime。
准备好要集成的驱动程序(INF文件)
使用tap.exe生成pmq文件。

一、安装Windows Embedded Standard Quebec
插入Quebec CTP WES Toolkit的安装盘,执行光盘根目录的setup.exe
这里只是简要说明一下安装过程。
选择自定义安装。
选择不安装DistributionShares下的所有组件。
如下图:
2.JPG
注意:
1 建议在vista和win7中安装
2 不会和AIK发生冲突。
3 可以不安装DistributionShares这样可以节省磁盘空间,但是您必须要有runtime的光盘。
如果安装“AMDX64 Distribution Shares” 请准备好X64的runtime光盘,安装过程中会要求您插入X64的runtime光盘!


等安装完成之后。将Quebec CTP WES Toolkit和Quebec CTP 32Bit或者64Bit 的Runtime光盘中的"DS”文件夹拷贝本地的硬盘上。
如果你已经安装了Distribution Share,请跳过这一步。

二、初始化ICE


然后从“开始”菜单->“所有程序”->“Windows Embedded Standard Quebec”->“Image Configuration Editor”启动ICE
选择"File"->"select Distribution Share..."
选择刚才拷贝过去的"DS”文件夹。
如果你已经安装了Distribution Share,您可以在“Windows Embedded Standard Quebec”的安装目录中找到DS文件夹。默认是“C:\Program Files\Windows Embedded Standard Quebec\DS”。X64的Distribution Share的文件夹名称是“DS64”。
Windows 7 32 chs-2009-09-05-19-53-44.jpg

现在开始导入 PMQ文件
选择菜单“File”->“Import”->“Import PMQ”
耐心等一下。
log 部分带有警告标志的信息,表明该驱动没有在开发工具的包中,需要自己提取驱动然后集成。
Windows 7 32 chs-2009-09-05-21-33-15.jpg
小建议:
删除不用的驱动,可以减少镜像的体积,例如:如果不用声卡,删除声卡驱动的同时,同时删除支持声卡工作的系统组件。

三、开始集成驱动

注意:
您可以仅仅集成需要的驱动,但是如果系统的包中没有一个或多个系统启动需要的驱动,那么您必须集成这些驱动,否则系统启动时蓝屏(大多数停机码是0X7B)。
如果集成一个错误的驱动,则有可能造成一个硬件加载了错误的驱动,严重的话会造成系统蓝屏(大多数是停机码是0X7E)
如下图:

5.JPG

“MyDriver”是我存放要集成驱动的文件夹(已经将驱动文件提取出来)。里面有很多子文件夹,每个子文件夹都存在一个INF文件(一个设备的驱动)。
注意:这里介绍集成驱动的方法,只适合这种INF文件形式的驱动(必须存在INF文件),如果您的驱动程序是exe程序来进行安装(一个安装程序)。
请不要用这种方法集成驱动!

选则菜单Tool->Explore Distribution Share,会打开一个文件夹。将“MyDriver”文件夹复制到“Out-of-Box Drivers”内。关闭刚才打开的文件夹。

选择“MyDriver”右键选择菜单的第一项(其他子项目不用再选)。
提示:
第一项:安装程序在“WinPE”阶段(第一次启动的时候,加载setup的软件界面之前)”加载集成的驱动。
第二项:“在offiine serviceing”(已经加载了setup的软件界面,并且进行第一次重启后)阶段加载集成的驱动。
第三项:在“audit system”(使用sysprep封装镜像)阶段加载集成的驱动。

注意:
如果您的驱动包括系统必须加载能完成安装的驱动,则在该驱动的项目上必须选择第一项!
(例如:硬盘控制器的驱动,必须选择“WinPE阶段”加载驱动,否则会因为找不到硬盘导致安装失败。)
如果你不确定集成的驱动是否有系统必须加载能完成安装的驱动,则选择第一项。
如果您的使用sysprep部署系统镜像,请选择第三项!

6.jpg
如何提取驱动的INF文件和相关的文件?
如果你的驱动是exe或者msi这类的安装程序,你就需要提取驱动文件。(当然你也可以部署系统镜像时执行这些驱动的安装程序进行安装。)
在这里简单写一下:
一共有2类方法。
1 在嵌入式设备上安装一个Windows7或者Vista(当然你也可以安装一个WES 2010,不过你要确保已经存在系统启动必须的驱动),之后使用驱动精灵一类的程序进行备份驱动。这样可以达到提取驱动文件的目的。
2 把驱动的安装程序解包(exe、msi等)
使用Universal Extractor 这类的软件对驱动的安装程序进行解包,得到驱动文件。
注意:我推荐使用第一种方法,虽然他比较“麻烦”,但是不容易出错。适合没有经验的人使用。
无论你是用哪种方法,一定要确认提取的INF文件是可以使用的,相关的文件都提取全了(尤其是第二种方法),您可能要修改INF文件才能使驱动正常安装。(例如:一个驱动的INF文件省略了Install节的copyfile,它使用安装程序来完成拷贝文件的操作,对于这样的INF,您就需要手动修改inf文件。)



四、添加系统组件
还记得Target Designer么?
Target Designer在WES 2011中已经消失了,哈哈。
ICE可以被看成Target Designer。
现在我们要开始构建一个系统镜像了。
选择菜单“Validate”->“Validate Only”(进行关联性检查)。你会看到一条错误信息:
Windows 7 32 chs-2009-09-07-21-12-50.jpg
双击这个错误信息。出现下面这个窗口:
exactly表示只能选择一个,least one表示至少选一个(可选多个)。
上面粗体的内容表示那个组件提出的请求。
粗体显示的组件表明,该组件已经被添加。
按照图进行选择。
正确完成后错误信息会出现一条删除线,表示错误已经解决了。

这里解释一下:
Windows Boot Environment(标准的bootmgr)
Embedded Windows Boot Environment(一个embedded特制的bootmgr?)

Unbaranded Startup Screens(选择后系统的登录界面没有Windows Embedded Standard的标志)
Windows Embedded  Startup Screens(选择后系统的登录界面Windows Embedded Standard的标志)

Command Prompt Shell with Custom Shell Support(登录后CMD作为shell启动,CMD的界面关闭后系统不会关机!)
Windows Explorer Shell(登陆后启动标准的shell,就是大家平常看到的桌面)

剩下的是语言包,这里我们使用简体中文。


8.JPG

选择菜单“Validate”->“Add Required Packages”(自动添加需要的组件,这样可以获得最小的镜像)
如果选择菜单“Validate”->“Add Required And Optional Packages”会添加一些额外的组件,会提高软件兼容性,但是会增大体积。
建议用“Add Required Packages”然后根据自己需要添加组件。

进行关联性检查有可能还会出现下图的情况,all代表必须都选择,下面的Optional dependencies,表示可选的组件。
11.JPG
另外还有一类错误信息:

15.jpg
这类错误信息是要求你修改包(组建的)属性。
双击,错误信息会自动定位到要修改的属性上,如果您发现无法修改,请修改“Fliter view ”选择适合的阶段(与Pass对应。)

下面介绍一下ICE的界面。
Windows 7 32 chs-2009-09-07-23-40-20.jpg
①DS目录
  $OEM$ Folder :OEM 文件夹,该文件夹的内容会被拷贝到系统system32中(具体参见帮助文档)。
  Out-of Box Drivers:用户集成驱动的文件夹
  Packages\Drives:系统自带的驱动
  Packages\FeaturesPack: 系统组件包
  Packages\languagePack: 语言包
②配置windows 安装部分的应答设置(可以进行一些自定义的配置,如:OEM信息、运行程序(能实现安装驱动))

③应答文件的信息(里面的组件名同①、②,自己添加的驱动不会增加组件,只会自动设置好驱动文件的位置。)
④属性的设置窗口
一共分两页:settings和properties。
Settings是一个包的私有属性。
Properties是一个包的共有属性。例如:是否启动或禁用这个包。

注意画红框的部分,windows的安装有7个阶段,一个包(组件)的属性可能在不同阶段分别有设置,pass:P1代表第一阶段……一直到pass:P7(这些阶段随着部署的方式不同不会都被执行!)。
Fliter view 设置成by setting 可以显示(只能看,不能改。如果修改请设置Fliter view 到对应的阶段)这个包(组件)的全部设置。
但是如果其中一个属性在不同阶段都有,只显示一个!设置后会变成粗体,另外PASS后面会有*号标明。
您可以显示一组包(组件)的全部属性,这样方便查找。


⑤日志信息(如果存在错误信息保存应答文件的时候会提示警告)

下面讲一下基础操作:
1 添加一个或一组包(组件)
选中要添加的包(组件),鼠标右键“Add to Answer File”。
2 删除一个或一组包(组件)
选中要删除的包(组件),鼠标右键“Delete”键,之后确认删除。
3 禁用和启用一个包(组件)
将Properties页中的setting项中的Disabled设置成Ture(禁用)或Fales(启用)
禁用后包(组件)的图标会变成灰色。



五、配置无人值守安装
如果您要部署大量的镜像,您不想每次都选择接受许可协议、选择安装到那个分区中……
好了,开始配置无人值守安装。

1 设置接受许可协议
将“Pruduct\Opearating System\Foundation Core\EmbeddedEdition\Setup_X86”中的“UserData”展开,把“AceptEULA”设置成ture。(P1)

2 默认语言设置(简体中文)
将“Pruduct\Opearating System\Foundation Core\EmbeddedEdition\International-Core_X86”展开,把“UILanguage”设置成zh-CN。(P4、P7)
将“Pruduct\Opearating System\Foundation Core\EmbeddedEdition\International-Core-WinPE_X86”展开,把“UILanguage”设置成zh-CN。(P1)
注意:语言的设置要和使用的语言包相符!值与LanguagePackage分支下的语言包缩写名称相符,注意大小写!

3 设置产品密钥
将“Pruduct\Opearating System\Foundation Core\EmbeddedEdition\Setup_X86”中的“UserData\ProductKEY”展开,把“Key”设置成您购买的产品密钥。(P1)


注意:CTP版本已经内置了产品密钥,本项设置请跳过!
4 安装分区设置
4.1配置自动对磁盘进行分区

4.1.1
将“Pruduct\Opearating System\Foundation Core\EmbeddedEdition\Setup_X86\DiskConfiguration”设置WillShowUI为OnError (表示如果出错则显示UI界面,进行手动分区)
将“Pruduct\Opearating System\Foundation Core\EmbeddedEdition\Setup_X86”展开,选中“DiskConfiguration”,按鼠标右键弹出的菜单选“Insert New Disk”
展开新建的“Disk”,设置Disk ID为0 (表示第一个硬盘)


设置WillWipeDisk为true (表示删除该硬盘的所有分区)

4.2.2
选中“CreatePartitions”,按鼠标右键弹出的菜单选“Insert New Partition”。
展开新建的“CreatePartition”,将“Order”设置成1(表示第一个分区)。
将“Trpe”设置成Primary(表示主分区) 。
将“Size”空着。
将“Extend”设置成Ture(表示用所有空间)。
如果要建立多个分区请重复操作4.2.2
如果指定分区容量请设置“Size”单位是MB,并将“Extend”设置成False

4.2设置将镜像安装到那个分区
将“Pruduct\Opearating System\Foundation Core\EmbeddedEdition\Setup_X86”中的“ImageInstall”展开,把“InstallToAvailablePartition”设置成False。(P1)


(如果设置成True表示安装到第一个可用的分区!,请跳过下面InstallTo的设置!)
将InstallTo展开。将Partition设置成1,DiskID设置成0(表示安装到第一个硬盘的第一个分区。)

5 设置跳过OOBE中的相关设置(欢迎、建立账户……)和进行自动登录。
将“Pruduct\Opearating System\Foundation Core\EmbeddedEdition\Shell-Setup_X86”中的“OOBE”展开,把“NetworkLocation”设置成Home。(P7)
把“SkipUserOOBE”设置成True。(P7)
把“SkipMachineOOBE”设置成True。(P7)
把“HideWirelessSetupInOOBE”设置成True。(P7)
把“ProtectYourPC”设置成1。(P7)
把“HideEULAPage”设置成True。(P7)
将“Pruduct\Opearating System\Foundation Core\EmbeddedEdition\Shell-Setup_X86”中的“AutoLogin”展开,把“Username”设置成Administrator。(P4、P5、P7)

说明一下:
如果您没有建立用户账户,那么必须设置AutoLogin,这样会启用Administrator账户。(默认该账户是禁用的,密码是空。)
要建立账户可以在“Pruduct\Opearating System\Foundation Core\EmbeddedEdition\Shell-Setup_X86”中的“UserAccounts”中设置。


六、生成IBW Disk
先保存一下应答文件!

选择菜单“Tools”->“Media Creation”-> “Create IBW Disk From Answerfile”
弹出的窗口中,“Choose Answerfile”会自动选择当前的应答文件。
“Select the target folder for the image”选择一个空的文件夹。
点OK开始生成。

注意:这个生成镜像和WES 2009用目标设计器 build出来的镜像有很大差别!
IBW相当于一个Windows的安装源!没有FBA的过程。
不能像原来那样部署。
你可以通过光盘、U盘、PXE部署这个镜像,但是请记住这是个“windows”的安装源!
简单写一下这个镜像的部署方式
A 光盘部署
将runtime的镜像备份,删除ISO文件里面的所有文件,再将镜像拷贝进去,保存ISO。从光盘启动即可。
B  USB磁盘部署(移动硬盘、U盘)
格式化USB磁盘,拷贝生成的镜像的所有文件到USB磁盘中,使用UltraISO写入MBR和Vista的引导记录。之后从USB磁盘启动
C 网络部署
这里就不写了,建议参考AIK的帮助文档的PE、PXE、网络部署等部分。

建议:启动生成镜像后完成安装操作(第一次重启前!,也就是从硬盘启动之前(也就是安装程序完成了拷贝和释放文件的操作))使用imageX抓硬盘的镜像。之后克隆到其他机器上。这样可以节省大量时间。

再多写两句,CTP1现在还很“原始”,ICE中的问题不少。另外现在CTP1的帮助文档残缺不全,建议大家参考AIK、OPK的文档。

happymy 版权所有,欢迎转帖。请注明转帖出处。
文档版本:1.01
文章于2009-09-14 补充硬盘分区部分内容和最后镜像应用。

[ 本帖最后由 happymy 于 2009-9-14 22:30 编辑 ]
 楼主| 发表于 2009-9-7 20:25:48 | 显示全部楼层
原帖由 gongxp123456 于 2009-9-7 16:56 发表
楼主辛苦了。
请教:集成驱动您用的是什么工具。

补上了
回复

使用道具 举报

发表于 2009-9-21 10:24:33 | 显示全部楼层
可惜CTP1不能下载了。
回复

使用道具 举报

发表于 2009-10-29 17:48:56 | 显示全部楼层
很好很强大,支持一下!
回复

使用道具 举报

发表于 2009-11-1 16:08:20 | 显示全部楼层
可是偶英文不好,也想学习一下,吃力呀。。。。。。。。。。顶。。。。。。。
回复

使用道具 举报

发表于 2009-11-14 17:22:16 | 显示全部楼层
虽然都看不懂,但我很努力的想学啊
回复

使用道具 举报

发表于 2009-12-3 00:28:59 | 显示全部楼层
一下子没看完,明天再看。学习中,多谢楼主分享。
回复

使用道具 举报

发表于 2009-12-7 15:17:38 | 显示全部楼层
学习了,不过英文不好
回复

使用道具 举报

发表于 2009-12-11 19:48:23 | 显示全部楼层
版主在上一个教程中说

2010/08/16 评估将结束
是不是说无论什么时候部署
2010/08/16都不能再使用了?

我觉得版主之前的在U盘跑WIN7
时候已经可以解决问题了。这个与那个是不是有些重复了呢?
回复

使用道具 举报

 楼主| 发表于 2010-2-26 10:24:30 | 显示全部楼层
原帖由 cnn_5454 于 2009-12-11 19:48 发表
版主在上一个教程中说

2010/08/16 评估将结束
是不是说无论什么时候部署
2010/08/16都不能再使用了?

我觉得版主之前的在U盘跑WIN7
时候已经可以解决问题了。这个与那个是不是有些重复了呢?


等啊,等CTP2 或者RC(都出了,无最终时间限制)
回复

使用道具 举报

发表于 2010-2-26 14:11:52 | 显示全部楼层
楼主 你可以把wes2011中的fbfw.sys发上来吗?我做pe需要这个文件测试下,谢谢
回复

使用道具 举报

 楼主| 发表于 2010-2-26 20:45:47 | 显示全部楼层
原帖由 wjgyz740526 于 2010-2-26 14:11 发表
楼主 你可以把wes2011中的fbfw.sys发上来吗?我做pe需要这个文件测试下,谢谢


RC的

fbwf.zip

56.86 KB, 下载次数: 145, 下载积分: 无忧币 -2

回复

使用道具 举报

发表于 2010-4-6 13:07:22 | 显示全部楼层
有谁能讲解一下这种系统有什么好处啊?
回复

使用道具 举报

发表于 2010-4-11 14:55:16 | 显示全部楼层
请教楼主,看到你qq不在线,正好今天又是周末,还是在你这个帖子里跟帖吧
我用ice定制完应答文件后,选择tools/create ibw image from answer file........之后,我没有把保存在目录下的文件做成iso,直接把sources下的install.wim用dism释放到硬盘后,然后用dism /add-package命令把AutoUnattend_Files目录下的包全部离线安装了,然后用bcdboot创建启动文件后,可以成功引导这个系统
我想这些包的版本号和windows7的组件版本号都是一致的,反过来,我们将一个正常的windows7的install.wim离线部署到硬盘后,可以不可以使用dism /remove-package命令指向这些包来卸载某些组件,达到精简windows7的目的呢?
回复

使用道具 举报

发表于 2010-4-14 06:42:39 | 显示全部楼层
为什么我们从packages/driver/scsiadapter添加的ahci驱动在生成ibw disk的目录时,在目录中显示为offlineServicing阶段,但是在引导的时候也不会蓝屏?这种驱动不是应该在pe阶段加载的么?
回复

使用道具 举报

发表于 2010-5-1 19:54:05 | 显示全部楼层
很有意义的一篇文章.
回复

使用道具 举报

发表于 2012-11-17 10:09:18 | 显示全部楼层
很好的帖子,收藏了,慢慢消化它。谢谢
回复

使用道具 举报

发表于 2012-11-23 21:54:14 | 显示全部楼层
很好,能掌握wes7了。
回复

使用道具 举报

发表于 2013-1-15 10:15:41 | 显示全部楼层
学习了。看来还得恶补英语。呵呵,多谢提供教程
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-28 17:34

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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