XP升级到Windows7,以照传统的方法,需要我们的IT管理人员拿着光盘到客户端那里进行自定义安装,或者是用Ghost镜像进行安装,不管用哪种方法,在安装Win7之前,都需要先将C盘中的一些重要的Word文档、Excel文档等等进行备份,而且这些文档往往是分散在C盘下面很多不同的文件夹之中,另外还有诸如IE收藏夹、Outlook邮件数据等等,仅仅是一两台还好,如果公司有50台甚至上百台XP需要升级,那么对于我们的IT管理人员来说这个工作量也就太大了,但是这么繁琐的事情,对于MDT2012来说,只需要简单的点几下鼠标就即可以轻松的搞定
MDT2012通过调用USMT5(用户状态迁移工具)中的Scanstate程序读取客户端上的用户状态(用户状态包含了文档、应用程序配置、收藏夹数据、Outlook数据等等),并将其备份,待Win7成功部署至客户端后,再将这些用户状态还原到客户端上,整个过程都是自动进行,大大减轻了IT管理人员的工作量,下面我们就一起来体验这个升级过程
以下是一台已经加入到域中的XP客户端,为了验证升级结果,在升级前,我以rb用户登录系统,首先在C盘各个地方放置一些文档,下图是我在桌面上放置的两个Word文档,01和02
然后在我的文档文件夹中放置了两个Excel文档,03和04
接下来是做一些个性化设置,这里我将IE首页设置为http://hao.qq.com
在IE收藏夹中添加两个网址,分别是网易和51CTO
配置好Outlook 2003的电子邮箱账户
向这个邮箱发送两封测试用的邮件
以上的文档和个性化设置在升级后会不会被成功迁移,有待最后的验证。在升级前还要对MDT服务器稍做设置
一、创建存放用户状态的共享文件夹
在服务器cqdep的D盘上新建一个文件夹UserData,并将它共享,共享后的网络访问路径是\\cqdep\\UserData,USMT从客户端捕获到的用户状态,就会通过网络存储到此文件夹中
赋予Everyone组完全控制权限
二、修改部署参数
打开【MDT Deployment Share】节点的属性
切换到【Rules】选项卡,升级部署需要对一些参数进行修改
将 DeploymentType=NewComputer 修改为 DeploymentType=Refresh ,这表示此次部署类型为更新,这里简单的说一下为什么是Refresh而不是Upgrade,因为XP不能直接升级到Win7,只有Vista才可以,在XP上插入Win7光盘后只能选择自定义安装,这种方式其实就相当于重新安装,本次升级过程是按【备份用户状态-重新安装Win7-还原用户状态】,所以这里是用Refresh
将 UserDataLocation=NONE 修改为 UserDataLocation=NETWORK ,表示用户状态数据将保存到一个网络位置
然后将以下内容附加到最后
;用户状态迁移
SkipComputerBackup=YES//跳过计算机用户状态备份向导页
ScanStateArgs=/v:5 /o /c//读取用户状态
LoadStateArgs=/v:5 /c /lac /lae//恢复用户状态
UDShare=\\cqdep\UserData//用户状态保存路径
UDDir=%OSDComputerName%//用户状态保存目录,这个目录以当前计算机的名称命名
参数解释
/v:5 | 指定日志的详细程度,值可以是0-15 |
/o | 覆盖任何现有数据 |
/c | 遇到错误也继续运行 |
/lac | 迁移的目标客户机上没有源客户机上的用户时,它会自动在目标客户机上创建用户,但这个用户是禁用的 |
/lae | 启用已使用 /lac 创建的帐户 |
更新部署参数
三、客户端执行升级安装
从rb这台XP客户端上访问\\cqdep\d$\DeploymentShare\Scripts,执行脚本LiteTouch.vbs
在弹出的向导中选择第三项,重新安装Windows 7
这里我保持原有的计算机名称
选择应用程序,就是我们的激活程序
单击Next后,就可以看到脚本会去执行捕获用户状态、应用PE等操作
来到服务器cqdep上,发现用户状态已经被捕获到UserData目录中了
重启之后会自动加载PE安装Windows 7(升级安装不用重启后人工按F12加载WDS启动镜像)
第一次进入系统时会自动恢复用户状态,恢复后根据我们在Rules中设置的规则,会进行重启
四、验证升级后的用户状态
通过用户rb登录,首先验证桌面
验证我的文档文件夹
验证IE主页和收藏夹
验证Outlook配置参数,当前的Outlook版本为2010
验证Outlook中的邮件
可以看到升级到Windows 7后,所有的文档、个性化设置、应用程序设置等都成功的进行了迁移,非常强大
五、从迁移中排除部分文档或应用程序设置
现再可能有朋友会说,你这样升级后是将所有的数据都迁移了,可是我并不想迁移桌面上的文档和Outlook数据,能做到吗?这个是当然可以的,通过USMT中的Scanstate工具生成Config.xml文件,不需要迁移的文档或者应用程序设置都可以在Config.xml文件中进行排除
将cqdep上的用户状态迁移工具(USMT5)复制到一台XP客户端上,USMT5分为x86和x64两个平台,XP通常为32位的操作系统,那么这里就复制x86\USMT5到XP客户端上的D盘
从命令行切换到D:\USMT5,执行下面的命令生成Config.xml
Scanstate.exe /i:migapp.xml /i:miguser.xml /genconfig:config.xml /v:13
将生成的Config.xml复制到服务器cqdep上的USMT5目录中,注意这次是x64\USMT5
编辑Config.xml文件,可以看到每一个组件后面都跟有migrate=yes,将它改为migrate=no,即表示不迁移这个组件,从下图中大家能看出我排除的是哪两个组件吧
在Rules设置中,将用户状态迁移下面的内容修改为如下内容
;用户状态迁移
SkipComputerBackup=YES
LoadStateArgs=/v:5 /c /lac /lae
UDShare=\\cqdep\UserData
UDDir=%OSDComputerName%
USMTMigFiles1=Migapp.xml
USMTMigFiles2=Miguser.xml
USMTConfigFile=Config.xml
与之前不同的是去掉了ScanStateArgs=/v:5 /o /c,取而代之的是通过USMT中的两个规则模板Miguser.xml与Migapp.xml,来决定迁移哪些文档和应用程序设置,而Config.xml则指定要从迁移中排除的文档或应用程序设置
修改后确定,然后更新部署共享参数,按照前面的升级方法,从XP上运行LiteTouch.vbs,升级成功后再进行验证,你会发现此次升级后,桌面上的两个Word文档01和02将不会出现,还有Outlook也会是未设置状态