MDT8456部署Windows系列 : 技巧篇—模拟测试部署系统快速定位错误配置

Posted 微风ATBJ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MDT8456部署Windows系列 : 技巧篇—模拟测试部署系统快速定位错误配置相关的知识,希望对你有一定的参考价值。

前言

通过本文的方法,可以模拟MDT的收集过程,并在几秒钟定位到配置存在问题的地方,节约时间。


过去很长一段时间我都会在 MDT 制作、部署新的系统镜像时浪费大量时间。并不是每次制作都是一次性成功,期间会涉及到通过配置文件、变量、脚本来按不同场景进行系统、应用、驱动的测试及部署,当任意环节出现问题,将不得不再重新修改、重新部署。


前提条件

  • 一台加入域的计算机;
  • MDT 平台已经部署完成

配置方法

  1. 在域客户端中创建MDT文件夹,我的路径为:C:\\MDT
  2. 在域客户端中打开lusrmgr.msc将MDT管理员账户ITPro\\MDT_BA加入到本地管理员组;
  3. 在域计算机中,访问MDT DeploymentShare\\\\ITPRO-MDT01\\MDTBuildLab$ 目录中的Scripts文件夹,将下列文件复制到C:\\MDT\\中:
    ZTIDataAccess.vbs
    ZTIGather.wsf
    ZTIGather.xml
    ZTIUtility.vbs
    ==注意:如果你的环境中还有一些自定义的脚本,也需要将其复制到C:\\MDT目录里==
  4. 将MDT DeploymentShare\\\\ITPRO-MDT01\\MDTBuildLab$\\Control 目录中CustomSettings.ini复制到C:\\MDT目录;
  5. C:\\MDT\\中创建文件夹X64,并将\\\\ITPRO-MDT01\\MDTBuildLab$\\Tools\\X64中的Microsoft.BDD.Utility.dll文件复制到C:\\MDT\\X64中;
  6. CMTrace.exe下载CMTrace下载链接并复制到C:\\MDT\\中;
  7. 创建Powershell 脚本,并将以下脚本粘贴进去保存为Gather.ps1
# Check for elevation
If (-NOT ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole(`
    [Security.Principal.WindowsBuiltInRole] "Administrator"))

    Write-Warning "Oupps, you need to run this script from an elevated PowerShell prompt!`nPlease start the PowerShell prompt as an Administrator and re-run the script."
    Write-Warning "Aborting script..."
    Break


cls
if (Test-Path -Path "C:\\MININT") Write-Host "C:\\MININT exists, deleting...";Remove-Item C:\\MININT -Recurse
cscript.exe ZTIGather.wsf /debug:true

# 通过CMTrace去打开日志
& "C:\\MDT\\CMTrace" C:\\MININT\\SMSOSD\\OSDLOGS\\ZTIGather.log





使用方法

我通过一些需求场景,自定义配置CustomSettings.ini,然后通过该模拟测试平台进行验证,看看最终的效果。

需求场景:

  • 默认计算机名为:DESKTOP-序列号的后 5 位(例如:DESKTOP-123QW),加域并移到OU=Laptops,OU=Computers,OU=ITPro,DC=ITPro,DC=cc OU 里
  • 为了验证效果,我添加一个条件,当部署的客户端为虚拟机时,自动将计算机命名规则设置为VM-序列号的前 7 位(例如:VM-ABCD123),加域并移动到OU=Workstations,OU=Computers,OU=ITPro,DC=ITPro,DC=cc OU
  • 当部署的客户端为虚拟机时,自动部署7zip微信其他机型不做安装;
  • 当部署的客户端为虚拟机时,自动将屏幕分辨率设置为1920*1080。且安装界面Banner 的显示名为ITPro - OSDeployment for Virtual Machine;

按照以上需求,我将CustomSettings.ini配置为以下内容:

[hide]

[Settings]
Priority=Model, Default
Properties=MyCustomProperty

[Virtual Machine]
_SMSTSORGNAME=ITPro.cc
_SMSTSpackageName="ITPro - OSDeployment for Virtual Machine"
BitsPerPel=32
VRefresh=60
XResolution=1920
YResolution=1080
OSDComputerName=VM-#Left("%SerialNumber%",7)#
MandatoryApplications001=7190c4fe-b62e-4d3a-b638-f0e8cc6def11
MandatoryApplications002=1d3b340f-4ff7-47b8-9dfb-5d0b75959a3e
MachineObjectOU=OU=Workstations,OU=Computers,OU=ITPro,DC=ITPro,DC=cc

[Default]

_SMSTSORGNAME=ITPro.cc
_SMSTSpackageName="ITPro - Win10 21H2 Enterprise"

OSInstall=YES
SkipCapture=YES
SkipDeploymentType=YES
DeploymentType=NEWCOMPUTER
OSDComputerName=DESKTOP-#Right("%SerialNumber%",5)#
SkipAdminPassword=YES
Adminpassword=ITPro.cc@1688
SkipAppsOnUpgrade=NO
SkipComputerName=NO
SkipProductKey=YES
;ProductKey=ABCD-XXXX-XXXX-XXXX ;设置指定产品秘钥
SkipDomainMembership=NO
JoinDomain=ITPro.cc
DomainAdmin=ITPRO\\MDT_BA
DomainAdminPassword=P@ssword$$$.com
DomainAdminDomain=ITPro.cc
MachineObjectOU=OU=Laptops,OU=Computers,OU=ITPro,DC=ITPro,DC=cc
;JoinWorkgroup=WORKGROUP
SkipComputerBackup=YES
SkipBitLocker=YES
SKipTaskSequence=NO
SkipFinalSummary=YES
SkipTimeZone=YES
TimeZoneName=China Standard Time
KeyboardLocale=en-us
UserLocale=zh-cn
UILanguage=en-us
SkipLocaleSelection=YES
SkipUserData=YES
SkipSummary=NO
SLShare=\\\\ITPRO-MDT01\\Logs$
;WSUSServer=http:;wsus01.ITPro.cc8530 ;可指定部署过程中通过WSUS服务器更新系统补丁
ApplyGPOPack=NO

[/hide]

执行测试

  1. 以管理员身份执行前面创建的Gather.ps1;
  2. 初次执行会报错,需要执行一条命令:Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope Process -Force
  3. 初次执行完成后,会提示是否以CMTrace作为默认日志阅读工具,点 Yes即可;




检查日志

正常情况下 CMtrace 工具打开后没有红色、橙色信息,以及最后一行显示为 Successfully,说明配置没有问题,可以拿真机部署验证一下。

基于我们上面的需求,可以在模拟的输出日志中来查看是否都是按照预先的需求来正确的配置了

总结

通过以上方式,可以通过模拟测试环境,快速的测试并判断自定义的配置文件的配置正确与否,大大节约了我们前期的部署时间。

==注意: 该测试方式无法针对应用部署、驱动安装类的执行命令做模拟部署。涉及到这些范围,还是需要进行手动安装测试==

以上是关于MDT8456部署Windows系列 : 技巧篇—模拟测试部署系统快速定位错误配置的主要内容,如果未能解决你的问题,请参考以下文章

MDT8456部署Windows系列 : 技巧篇—制作MDT客户端目标OU下拉列表并自定义显示名

MDT8456部署Windows系列 : 基础篇—自定义Office 365客户端并使用 MDT部署

MDT8456部署Windows10 21H2系列 : 基础篇—自动化部署必经之路Rules详解

MDT 2010部署Windows 7之安装与配置WDS

Windows Server 2016部署MDT服务器----测试映像部署

Microsoft 部署工具包 (Microsoft Deployment Toolkit, MDT) 支持多种映像格式,你知道哪些?