无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 23941|回复: 18
打印 上一主题 下一主题

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

  [复制链接]
跳转到指定楼层
1#
发表于 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)很像,但是操作上有很大的不同(包的名称和位置都不同。)

好了让我开始


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

一、安装Windows Embedded Standard Quebec
插入Quebec CTP WES Toolkit的安装盘,执行光盘根目录的setup.exe
这里只是简要说明一下安装过程。
选择自定义安装。
选择不安装DistributionShares下的所有组件。
如下图:

注意:
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”。


现在开始导入 PMQ文件
选择菜单“File”->“Import”->“Import PMQ”
耐心等一下。
log 部分带有警告标志的信息,表明该驱动没有在开发工具的包中,需要自己提取驱动然后集成。

小建议:
删除不用的驱动,可以减少镜像的体积,例如:如果不用声卡,删除声卡驱动的同时,同时删除支持声卡工作的系统组件。

三、开始集成驱动

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



“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部署系统镜像,请选择第三项!


如何提取驱动的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”(进行关联性检查)。你会看到一条错误信息:

双击这个错误信息。出现下面这个窗口:
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,就是大家平常看到的桌面)

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




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

进行关联性检查有可能还会出现下图的情况,all代表必须都选择,下面的Optional dependencies,表示可选的组件。

另外还有一类错误信息:


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

下面介绍一下ICE的界面。

①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 编辑 ]
2#
 楼主| 发表于 2009-9-7 20:25:48 | 只看该作者
原帖由 gongxp123456 于 2009-9-7 16:56 发表
楼主辛苦了。
请教:集成驱动您用的是什么工具。

补上了
回复

使用道具 举报

3#
发表于 2009-9-21 10:24:33 | 只看该作者
可惜CTP1不能下载了。
回复

使用道具 举报

4#
发表于 2009-10-29 17:48:56 | 只看该作者
很好很强大,支持一下!
回复

使用道具 举报

5#
发表于 2009-11-1 16:08:20 | 只看该作者
可是偶英文不好,也想学习一下,吃力呀。。。。。。。。。。顶。。。。。。。
回复

使用道具 举报

6#
发表于 2009-11-14 17:22:16 | 只看该作者
虽然都看不懂,但我很努力的想学啊
回复

使用道具 举报

7#
发表于 2009-12-3 00:28:59 | 只看该作者
一下子没看完,明天再看。学习中,多谢楼主分享。
回复

使用道具 举报

8#
发表于 2009-12-7 15:17:38 | 只看该作者
学习了,不过英文不好
回复

使用道具 举报

9#
发表于 2009-12-11 19:48:23 | 只看该作者
版主在上一个教程中说

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

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

使用道具 举报

10#
 楼主| 发表于 2010-2-26 10:24:30 | 只看该作者
原帖由 cnn_5454 于 2009-12-11 19:48 发表
版主在上一个教程中说

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

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


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

使用道具 举报

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

使用道具 举报

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


RC的

fbwf.zip

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

回复

使用道具 举报

13#
发表于 2010-4-6 13:07:22 | 只看该作者
有谁能讲解一下这种系统有什么好处啊?
回复

使用道具 举报

14#
发表于 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的目的呢?
回复

使用道具 举报

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

使用道具 举报

16#
发表于 2010-5-1 19:54:05 | 只看该作者
很有意义的一篇文章.
回复

使用道具 举报

17#
发表于 2012-11-17 10:09:18 | 只看该作者
很好的帖子,收藏了,慢慢消化它。谢谢
回复

使用道具 举报

18#
发表于 2012-11-23 21:54:14 | 只看该作者
很好,能掌握wes7了。
回复

使用道具 举报

19#
发表于 2013-1-15 10:15:41 | 只看该作者
学习了。看来还得恶补英语。呵呵,多谢提供教程
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-20 02:44

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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