适用于: Configuration Manager(current branch)
以下任务序列步骤可以添加到 Configuration Manager 任务序列。 有关详细信息,请参阅 使用任务序列编辑器。
通用设置
以下设置对所有任务序列步骤通用:
所有步骤的属性
名称:任务序列编辑器要求指定一个短名称来描述此步骤。 添加新步骤时,任务序列编辑器默认将名称设置为“类型”。 名称长度不能超过 50 个字符。
说明: (可选)指定有关此步骤的更多详细信息。 说明长度不能超过 256 个字符。
本文其余部分介绍每个任务序列步骤的 属性 选项卡上的其他设置。
适用于所有步骤的选项
禁用此步骤:任务序列在计算机上运行时跳过此步骤。 此步骤的图标在任务序列编辑器中灰显。
发生错误时继续:如果在运行步骤时发生错误,任务序列将继续。 有关详细信息,请参阅 自动执行任务的规划注意事项。
添加条件:任务序列将评估这些条件语句,以确定是否运行步骤。 有关使用任务序列变量作为条件的示例,请参阅 如何使用任务序列变量。 有关条件的详细信息,请参阅 任务序列编辑器 - 条件。
以下特定任务序列步骤的部分介绍了“ 选项 ”选项卡上的其他可能设置。
应用数据图像
使用此步骤将数据映像复制到指定的目标分区。
此步骤仅在 Windows PE 中运行。 它不会在完整的操作系统中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择“ 图像”,然后选择“ 应用数据图像”。
用于应用数据图像的变量
在此步骤中使用以下任务序列变量:
用于应用数据图像的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepApplyDataImage
- New-CMTSStepApplyDataImage
- Remove-CMTSStepApplyDataImage
- Set-CMTSStepApplyDataImage
应用数据图像的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
映像包
选择“ 浏览 ”以指定此任务序列使用的 映像包 。 在“ 选择包 ”对话框中选择要安装的包。 对话框底部显示每个现有映像包的关联属性信息。 使用下拉列表从所选映像包中选择要安装的映像。
注意
此任务序列操作将图像视为数据文件。 此操作不会执行任何设置来将映像作为 OS 启动。
目标
配置以下选项之一:
下一个可用分区:使用此任务序列中的 “应用操作系统 ”或“ 应用数据映像 ”步骤尚未定位的下一个顺序分区。
特定磁盘和分区:选择以 0) 开头的 磁盘 编号 (和以 1) 开头的 分区 号 (。
特定逻辑驱动器号:指定 Windows PE 分配给分区的 驱动器号 。 此驱动器号可以不同于新部署的操作系统分配的驱动器号。
存储在变量中的逻辑驱动器号: 指定任务序列变量,其中包含 Windows PE 分配给分区的驱动器号。 通常在“ 分区属性 ”对话框的“高级”部分中针对“ 格式化和分区磁盘” 任务序列步骤设置此变量。
在应用映像之前删除分区上的所有内容
指定任务序列在安装映像之前删除目标分区上的所有文件。 通过不删除分区的内容,此操作可用于将其他内容应用于先前目标分区。
应用驱动程序包
使用此步骤下载驱动程序包中的所有驱动程序,并将其安装在 Windows 操作系统上。
“ 应用驱动程序包” 任务序列步骤使驱动程序包中的所有设备驱动程序可供 Windows 使用。 在“应用操作系统”和“设置 Windows”以及“ConfigMgr”步骤之间添加此步骤,使包中的驱动程序可用于 Windows。 “ 应用驱动程序包 ”任务序列步骤还适用于独立媒体部署方案。
将类似的设备驱动程序放入驱动程序包中,并将它们分发到相应的分发点。 例如,将一个制造商的所有驱动程序放入驱动程序包中。 然后将程序包分发到相关联的计算机可以访问它们的分发点。
“ 应用驱动程序包 ”步骤适用于独立媒体。 此步骤对于安装一组特定的驱动程序也很有用。 这些类型的驱动程序包括 Windows 即插即用无法检测到的设备,例如网络打印机。
此任务序列步骤仅在 Windows PE 中运行。 它不会在完整的操作系统中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “驱动程序”,然后选择“ 应用驱动程序包”。
提示
有关 Configuration Manager 中驱动程序的概述,请参阅使用任务序列安装驱动程序。
在用户安装任务序列之前,使用内容预缓存下载适用的驱动程序包。 有关详细信息,请参阅 配置预缓存内容。
应用驱动程序包的变量
在此步骤中使用以下任务序列变量:
- OSDApplyDriverBootCriticalContentUniqueID
- OSDApplyDriverBootCriticalHardwareComponent
- OSDApplyDriverBootCriticalID
- OSDApplyDriverBootCriticalINFFile
- OSDInstallDriversAdditionalOptions
用于应用驱动程序包的 Cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepApplyDriverPackage
- New-CMTSStepApplyDriverPackage
- Remove-CMTSStepApplyDriverPackage
- Set-CMTSStepApplyDriverPackage
应用驱动程序包的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
驱动程序包
指定包含所需设备驱动程序的驱动程序包。 选择“ 浏览 ”以启动“ 选择包” 对话框。 选择要应用的现有驱动程序包。 对话框底部显示关联的程序包属性。
通过运行带有递归选项的 DISM 来安装驱动程序包
如果选择此选项,当 Windows 应用驱动程序包时,将参数添加到 /recurse DISM 命令行。
启用此选项时,还可以指定其他 DISM 命令行参数。 使用 OSDInstallDriversAdditionalOptions 任务序列变量包含更多选项。 有关详细信息,请参阅 Windows DISM Command-Line 选项。
在安装低于 Windows Vista 的操作系统之前,在包内选择大容量存储驱动程序
指定安装经典操作系统所需的任何大容量存储驱动程序。
Driver
在设置经典操作系统之前,选择要安装的大容量存储器驱动程序文件。 下拉列表将从指定的包填充。
模型
指定 Windows Vista 之前的操作系统部署所需的启动关键型设备。
在允许这样做的 Windows 版本上无人参与安装未签名的驱动程序
此选项允许 Windows 安装没有数字签名的驱动程序。
应用网络设置
使用此步骤指定目标计算机的网络或工作组配置信息。 任务序列将这些值存储在相应的应答文件中。 Windows 安装程序在安装 Windows 和 ConfigMgr 操作期间使用此应答文件。
此任务序列步骤仅在 Windows PE 中运行。 它不会在完整的操作系统中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “设置”,然后选择“ 应用网络设置”。
注意
如果在任务序列中包含此步骤的多个实例,则条件不适用。 任务序列中此步骤最后一个实例中的设置将应用于设备。 若要解决此行为,请将每个步骤包含在单独的组中,组上有条件。
应用网络设置的变量
在此步骤中使用以下任务序列变量:
- OSDAdapter
- OSDAdapterCount
- OSDDNSDomain
- OSDDNSSuffixSearchOrder
- OSDDomainName
- OSDDomainOUName
- OSDEnableTCPIPFiltering
- OSDJoinAccount
- OSDJoinPassword
- OSDWorkgroupName
用于应用网络设置的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepApplyNetworkSetting
- New-CMTSStepApplyNetworkSetting
- Remove-CMTSStepApplyNetworkSetting
- Set-CMTSStepApplyNetworkSetting
- New-CMTSNetworkAdapterSetting
“应用网络设置”的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
加入工作组
选择此选项可让目标计算机加入指定的工作组。 在 “工作组 ”行中输入工作组的名称。 记录网络设置任务序列步骤捕获的值可以覆盖此值。
加入域
选择此选项可让目标计算机加入指定的域。 指定或浏览到域,如 fabricam.com。 指定或浏览到组织单位的 LDAP) 路径 (轻型目录访问协议。 例如:LDAP//OU=computers, DC=Fabricam.com, C=com。
注意
当已加入 Microsoft Entra 的客户端运行操作系统部署任务序列时,新操作系统中的客户端不会自动加入 Microsoft Entra ID。 即使未加入 Microsoft Entra,客户端仍处于托管状态。
帐户
选择“ 设置 ”以指定一个帐户,该帐户具有将计算机加入域所需的权限。 在“ Windows 用户帐户 ”对话框中,按照以下格式输入用户名: Domain\User. 有关详细信息,请参阅 域加入帐户。
适配器设置
为计算机中的每个网络适配器指定网络配置。 选择 “新建 ”以打开 “网络设置 ”对话框,然后指定网络设置。
- 如果还使用“记录网络设置”步骤,则任务序列会将以前捕获的设置应用于网络适配器。
- 如果任务序列以前未捕获网络设置,它将应用在此步骤中指定的设置。
- 任务序列按 Windows 设备枚举顺序将这些设置应用于网络适配器。
- 任务序列不会立即将在此步骤中指定的设置应用于计算机。
应用操作系统映像
使用此步骤在目标计算机上安装 OS。
运行“ 应用操作系统 ”操作后,它会将 OSDTargetSystemDrive 变量设置为包含操作系统文件的分区的驱动器号。
此任务序列步骤仅在 Windows PE 中运行。 它不会在完整的操作系统中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “映像”,然后选择“ 应用操作系统映像”。
提示
Windows 11 和 Windows 10 媒体包含多个版本。 将任务序列配置为使用 OS 升级包或 OS 映像时,请务必选择 受支持的版本。
在用户安装任务序列之前,使用内容预缓存下载适用的操作系统升级包。 有关详细信息,请参阅 配置预缓存内容。
安装 Windows 和 ConfigMgr 步骤启动 Windows 的安装。
应用 OS 映像的变量
在此步骤中使用以下任务序列变量:
用于应用操作系统映像的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepApplyOperatingSystem
- New-CMTSStepApplyOperatingSystem
- Remove-CMTSStepApplyOperatingSystem
- Set-CMTSStepApplyOperatingSystem
应用 OS 映像的行为
此步骤执行不同的操作,具体取决于它使用的是操作系统映像还是操作系统升级包。
操作系统映像操作
使用操作系统映像时, “应用操作系统映像” 步骤执行以下操作:
删除目标卷上的所有内容,但 _SMSTSUserStatePath 变量指定的文件夹中的文件除外。
将指定 .wim 文件的内容提取到指定的目标分区。
准备答案文件:
为已部署的操作系统 (sysprep.inf 或 unattend.xml) 新建默认 Windows 安装程序应答文件。
合并用户提供的应答文件中的任何值。
将 Windows 引导加载程序复制到活动分区。
设置 boot.ini 或启动配置数据库 (BCD) 以引用新安装的操作系统。
操作系统升级程序包操作
使用操作系统升级包时, “应用操作系统映像” 步骤执行以下操作:
删除目标卷上的所有内容,但 _SMSTSUserStatePath 变量指定的文件夹中的文件除外。
准备答案文件:
使用 Configuration Manager 创建的标准值创建新的答案文件。
合并用户提供的应答文件中的任何值。
应用 OS 映像的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
从捕获的映像应用操作系统
安装捕获的操作系统映像。 选择“ 浏览 ”以打开 “选择包 ”对话框。 然后选择要安装的现有映像包。 如果多个映像与指定的 映像包相关联,请从下拉列表中选择要用于此部署的关联映像。 您可以通过选择每个现有图像来查看有关它的基本信息。
从原始安装源应用操作系统映像
使用操作系统升级包安装操作系统,该程序包也是原始安装源。 选择“ 浏览 ”以打开“ 选择操作系统升级包 ”对话框。 然后选择要使用的现有操作系统升级包。 您可以通过选择每个现有图像源来查看有关它的基本信息。 对话框底部的结果窗格显示关联的图像源属性。 如果有多个版本与指定的软件包关联,请使用下拉列表选择要使用的 版本 。
注意
操作系统升级包 主要用于就地升级,不适用于新安装的 Windows。 部署新的 Windows 安装时,请使用“ 从捕获的映像应用操作系统” 选项,并使用安装源文件中的 install.wim 。
仍支持通过 操作系统升级包 部署 Windows 的新安装,但这取决于驱动程序是否与此方法兼容。 从操作系统升级包安装 Windows 时,驱动程序将在 Windows PE 中安装,而不是在 Windows PE 中只是简单地注入。 某些驱动程序与在 Windows PE 中安装不兼容。
如果驱动程序与在 Windows PE 中安装不兼容,请使用原始安装源文件中的 install.wim 创建操作系统映像。 然后改为 通过“从捕获的映像应用操作系统” 选项进行部署。
对自定义安装使用无人参与或 sysprep 应答文件
使用此选项可提供 Windows 安装程序应答文件 (unattend.xml、 unattend.txt或 sysprep.inf) ,具体取决于操作系统版本和安装方法。 指定的文件可以包含 Windows 应答文件支持的任何标准配置选项。 例如,可以使用它指定默认的 Internet Explorer 主页。 指定包含应答文件的包以及包中文件的关联路径。
注意
你提供的 Windows 安装程序应答文件可以包含以下形式的 %varname%嵌入式任务序列变量,其中 varname 是变量的名称。 “设置 Windows 和 ConfigMgr”步骤将变量字符串替换变量的实际值。 不能在 unattend.xml 答案文件中的纯数值字段中使用这些嵌入的任务序列变量。
如果未提供 Windows 安装程序答案文件,任务序列将自动生成答案文件。
目标
配置以下选项之一:
下一个可用分区:使用此任务序列中的 “应用操作系统 ”或“ 应用数据映像 ”步骤尚未定位的下一个顺序分区。
特定磁盘和分区:选择以 0) 开头的 磁盘 编号 (和以 1) 开头的 分区 号 (。
特定逻辑驱动器号:指定 Windows PE 分配给分区的 驱动器号 。 此驱动器号可以不同于新部署的操作系统分配的驱动器号。
存储在变量中的逻辑驱动器号:指定任务序列变量,其中包含 Windows PE 分配给分区的驱动器号。 通常在“ 分区属性 ”对话框的“高级”部分中针对“ 格式化和分区磁盘” 任务序列步骤设置此变量。
选择分层驱动程序(如果适用)
版本 2107 及更高版本支持分层键盘驱动程序。 这些驱动程序指定日语和韩语中常见的其他类型的键盘。 有关详细信息,请参阅 LayeredDriver Windows 设置。
选择下列选项之一:
- 请勿指定:此选项为默认选项,它不会在 unattend.xml 中配置 LayeredDriver 设置。 此行为与早期版本的 Configuration Manager 一致。
- PC/AT 增强型键盘 (101/102 键)
- 韩语 PC/AT 101 键兼容键盘或 Microsoft Natural 键盘 (类型 1)
- 韩语 PC/AT 101 键兼容键盘或 Microsoft Natural 键盘 (类型 2)
- 韩语 PC/AT 101 键兼容键盘或 Microsoft Natural 键盘 (类型 3)
- 韩语键盘 (103/106 键)
- 日语键盘 (106/109 键)
还可以使用 OsdLayeredDriver 任务序列变量。
应用 OS 映像的选项
除默认选项外,还可以在此任务序列步骤的 “选项” 选项卡上配置以下其他设置:
直接从分发点访问内容
将任务序列配置为直接从分发点访问 OS 映像。 例如,将操作系统部署到存储容量有限的嵌入式设备时,请使用此选项。 选择此选项时,还可在操作系统映像属性的“ 数据访问 ”选项卡上配置包共享设置。
注意
此设置将覆盖在“部署软件向导”的“分发点”页上配置的部署选项。 此替代仅适用于此步骤指定的 OS 映像,而不适用于所有任务序列内容。
重要
为了获得最大的安全性,强烈建议不要选择此选项。 此选项主要设计用于存储容量有限的设备。 此选项并不旨在帮助提高任务序列的速度。 选择此选项时,不会验证操作系统包的包哈希。 因此,无法确保包完整性,因为具有管理权限的用户可能会更改或篡改包内容。
应用 Windows 设置
使用此步骤配置目标计算机的 Windows 设置。 任务序列将这些值存储在相应的应答文件中。 Windows 安装程序在安装 Windows 和 ConfigMgr 步骤中使用此应答文件。
此任务序列步骤仅在 Windows PE 中运行。 它不会在完整的操作系统中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “设置”,然后选择“ 应用 Windows 设置”。
应用 Windows 设置的变量
在此步骤中使用以下任务序列变量:
- OSDComputerName
- OSDLocalAdminPassword
- OSDProductKey
- OSDRandomAdminPassword
- OSDRegisteredOrgName
- OSDRegisteredUserName
- OSDServerLicenseConnectionLimit
- OSDServerLicenseMode
- OSDTimeZone
- OSDWindowsSettingsInputLocale
- OSDWindowsSettingsSystemLocale
- OSDWindowsSettingsUILanguage
- OSDWindowsSettingsUILanguageFallback
- OSDWindowsSettingsUserLocale
用于应用 Windows 设置的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepApplyWindowsSetting
- New-CMTSStepApplyWindowsSetting
- Remove-CMTSStepApplyWindowsSetting
- Set-CMTSStepApplyWindowsSetting
应用 Windows 设置的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
用户名
指定要与目标计算机关联的注册用户名。 记录 Windows 设置任务序列步骤捕获的值可以覆盖此值。
组织名称
指定要与目标计算机关联的已注册组织名称。 记录 Windows 设置任务序列步骤捕获的值可以覆盖此值。
产品密钥
指定要用于目标计算机上的 Windows 安装的产品密钥。
服务器许可
注意
此设置仅适用于不再受支持的旧版 Windows。 从版本 2010 开始,该设置在任务序列编辑器中不再可见。 仍使用此设置的现有任务序列将继续保持正常运行。
最大连接数
注意
此设置仅适用于不再受支持的旧版 Windows。 从版本 2010 开始,该设置在任务序列编辑器中不再可见。 仍使用此设置的现有任务序列将继续保持正常运行。
随机生成本地管理员密码,并在所有支持的平台上禁用该帐户 (建议)
如果选择此选项,会将本地管理员密码设置为随机生成的字符串。 此选项还会在支持此功能的平台上禁用本地管理员帐户。
启用帐户并指定本地管理员密码
如果选择此选项,将使用指定的密码启用本地管理员帐户。 在 密码 行中输入密码,然后在 确认密码 行上确认密码。
时区
指定要在目标计算机上配置的时区。 记录 Windows 设置任务序列步骤捕获的值可以覆盖此值。
语言设置
在操作系统部署期间,使用这些设置控制语言配置。 如果已在应用这些语言设置,此更改可以帮助你简化 OS 部署任务序列。 不要为每种语言使用多个步骤或单独的脚本,而是为此步骤的每种语言使用一个实例,并具有该语言的条件。
配置以下设置:
- 输入区域设置 (默认键盘布局)
- 系统区域设置
- UI 语言
- UI 语言回退
- 用户区域设置
有关这些 Windows 安装程序应答文件值的详细信息,请参阅 Microsoft-Windows-International-Core。
注意
如果创建自定义的 Windows 安装程序应答文件 (unattend.xml) ,此步骤将覆盖所有现有值。 若要自动执行这些设置的动态过程,请使用相关的任务序列变量。 例如, OSDWindowsSettingsInputLocale。
自动应用驱动程序
使用此步骤匹配并安装驱动程序作为 OS 部署的一部分。
重要
独立媒体不能使用 “自动应用驱动程序 ”步骤。 在此方案中,任务序列与 Configuration Manager 站点没有连接。
此任务序列步骤仅在 Windows PE 中运行。 它不会在完整的操作系统中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “驱动程序”,然后选择“ 自动应用驱动程序”。
提示
有关 Configuration Manager 中驱动程序的概述,请参阅使用任务序列安装驱动程序。
自动应用驱动程序的行为
“ 自动应用驱动程序” 任务序列步骤执行以下操作:
扫描硬件并查找系统上存在的所有设备的即插即用 ID。
将设备列表及其即插即用 ID 发送到管理点。 管理点从每个硬件设备的驱动程序目录中返回兼容驱动程序的列表。 该列表包括所有已启用的驱动程序,无论它们位于哪个驱动程序包中,以及标记有指定驱动程序类别的驱动程序。
对于每个硬件设备,任务序列会选取最佳驱动程序。 此驱动程序适用于已部署的操作系统,并且位于可访问的分发点上。
任务序列从分发点下载选定的驱动程序,并在目标操作系统上暂存驱动程序。
使用 OS 映像时,任务序列会将驱动程序放入 OS 驱动程序存储中。
将操作系统升级包用作原始安装源时,任务序列使用驱动程序的位置配置 Windows 安装程序。
在任务序列中的设置 Windows 和 ConfigMgr 步骤中,Windows 安装程序将查找此步骤暂存的驱动程序。
自动应用驱动程序的变量
在此步骤中使用以下任务序列变量:
- OSDAutoApplyDriverBestMatch
- OSDAutoApplyDriverCategoryList
- SMSTSDriverRequestConnectTimeOut
- SMSTSDriverRequestReceiveTimeOut
- SMSTSDriverRequestResolveTimeOut
- SMSTSDriverRequestSendTimeOut
自动应用驱动程序的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepAutoApplyDriver
- New-CMTSStepAutoApplyDriver
- Remove-CMTSStepAutoApplyDriver
- Set-CMTSStepAutoApplyDriver
自动应用驱动程序的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
仅安装最匹配的兼容驱动程序
指定任务序列步骤仅为检测到的每个硬件设备安装最佳匹配的驱动程序。
安装所有兼容的驱动程序
任务序列安装与每个检测到的硬件设备兼容的所有驱动程序。 然后,Windows 安装程序会选择最佳驱动程序。 此选项占用更多网络带宽和磁盘空间。 任务序列下载更多驱动程序,但 Windows 可以选择更好的驱动程序。
考虑所有类别的驱动程序
任务序列搜索所有可用的驱动程序类别以找到相应的设备驱动程序。
将驱动程序匹配限制为仅考虑所选类别中的驱动程序
任务序列在指定的驱动程序类别中搜索相应的设备驱动程序。
如果选择多个类别,它将返回任何类别中存在的所有匹配驱动程序。 这相当于一个 OR 操作。
在允许这样做的 Windows 版本上无人参与安装未签名的驱动程序
此选项允许 Windows 安装没有数字签名的驱动程序。
重要
此选项不适用于无法配置驱动程序签名策略的操作系统。
记录网络设置
使用此步骤从运行任务序列的计算机捕获 Microsoft 网络设置。 任务序列将这些设置保存在任务序列变量中。 这些设置将覆盖在 “应用网络设置 ”步骤中配置的默认设置。
此任务序列步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择“添加”,选择“设置”,然后选择“记录网络设置”。
用于记录网络设置的变量
在此步骤中使用以下任务序列变量:
用于记录网络设置的 Cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepCaptureNetworkSettings
- New-CMTSStepCaptureNetworkSettings
- Remove-CMTSStepCaptureNetworkSettings
- Set-CMTSStepCaptureNetworkSettings
记录网络设置的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
迁移域和工作组成员身份
捕获目标计算机的域和工作组成员身份信息。
迁移网络适配器配置
捕获目标计算机的网络适配器配置。 它捕获以下信息:
- 全局网络设置
- 适配器数
- 与每个适配器关联的以下网络设置:DNS、IP 和端口筛选器
记录操作系统映像
此步骤从引用计算机捕获一个或多个图像。 任务序列在指定的网络共享上创建 Windows 映像 (.wim) 文件。 然后使用“添加操作系统映像包”向导将此映像导入 Configuration Manager,以便进行基于映像的操作系统部署。
Configuration Manager 将每个卷 (驱动器从引用计算机) 捕获到 .wim 文件中的单独映像。 如果引用的计算机有多个卷,则生成的 .wim 文件包含每个卷的单独映像。 此步骤仅捕获格式化为 NTFS 或 FAT32 的卷。 它会跳过其他格式的卷和 USB 卷。
引用计算机上安装的操作系统必须是 Configuration Manager 支持的 Windows 版本。 使用 SysPrep 工具在引用计算机上准备操作系统。 安装的 OS 卷和启动卷必须是同一卷。
指定对所选网络共享具有写入权限的帐户。 有关捕获 OS 映像帐户的详细信息,请参阅 帐户。
此任务序列步骤仅在 Windows PE 中运行。 它不会在完整的操作系统中运行。
若要在任务序列编辑器中添加此步骤,请选择“添加”,选择“映像”,然后选择“记录操作系统映像”。
用于记录操作系统映像的变量
在此步骤中使用以下任务序列变量:
- OSDCaptureAccount
- OSDCaptureAccountPassword
- OSDCaptureDestination
- OSDImageCreator
- OSDImageDescription
- OSDImageVersion
- OSDTargetSystemRoot
用于记录操作系统映像的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepCaptureSystemImage
- New-CMTSStepCaptureSystemImage
- Remove-CMTSStepCaptureSystemImage
- Set-CMTSStepCaptureSystemImage
记录操作系统映像的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
Target
指向 Configuration Manager 在存储捕获的操作系统映像时所使用的位置的文件系统路径。
说明
存储在映像文件中的捕获 OS 映像的用户定义的可选描述。
版本
要分配给捕获的操作系统映像的可选用户定义版本号。 此值可以是字母和数字的任意组合。 它存储在图像文件中。
创建者
创建操作系统映像的用户的可选名称。 它存储在图像文件中。
记录操作系统映像帐户
输入对指定网络共享有权访问的 Windows 帐户。 选择“ 设置 ”以指定 Windows 帐户的名称。
记录用户状态
此步骤使用用户状态迁移工具 (USMT) 从运行任务序列的计算机捕获用户状态和设置。 此任务序列步骤与还 原用户状态 任务序列步骤结合使用。 此步骤始终使用 Configuration Manager 生成和管理的加密密钥对 USMT 状态存储进行加密。
从版本 2103 开始,此步骤和 “还原用户状态” 步骤使用当前支持的最高加密算法 AES 256。
重要
如果有任何活动用户状态迁移,在更新这些设备上的 Configuration Manager 客户端之前,请还原用户状态。 否则,更新的客户端在尝试使用其他加密算法时将无法还原用户状态。 如有必要,可以手动还原用户状态并显式使用 USMT 参数 /decrypt:3DES。
有关在部署操作系统时管理用户状态的详细信息,请参阅 管理用户状态。
如果要从状态迁移点保存和还原用户状态设置,请将此步骤与 请求状态存储 和 释放状态存储 步骤一起使用。
此步骤提供对最常用 USMT 选项的有限子集的控制。 使用 OSDMigrateAdditionalCaptureOptions 任务序列变量指定其他命令行选项。
此任务序列步骤在 Windows PE 或完整操作系统中运行。
若要在任务序列编辑器中添加此步骤,请选择“添加”,选择“用户状态”,然后选择“记录用户状态”。
用于记录用户状态的变量
在此步骤中使用以下任务序列变量:
- _OSDMigrateUsmtPackageID
- OSDMigrateAdditionalCaptureOptions
- OSDMigrateConfigFiles
- OSDMigrateContinueOnLockedFiles
- OSDMigrateEnableVerboseLogging
- OSDMigrateMode
- OSDMigrateSkipEncryptedFiles
- OSDStateStorePath
用于记录用户状态的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepCaptureUserState
- New-CMTSStepCaptureUserState
- Remove-CMTSStepCaptureUserState
- Set-CMTSStepCaptureUserState
用于记录用户状态的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
用户状态迁移工具包
指定包含用户状态迁移工具 (USMT) 的包。 任务序列使用此版本的 USMT 捕获用户状态和设置。 此包不需要程序。 指定包含 32 位或 64 位版本的 USMT 的包。 USMT 的体系结构取决于任务序列从中捕获状态的操作系统的体系结构。
使用标准选项记录所有用户配置文件
迁移所有用户配置文件信息。 此选项为默认选项。
如果选择此选项,但未在“还原用户状态”步骤中选择“还原本地计算机用户配置文件”,则任务序列将失败。 Configuration Manager 无法在未分配密码的情况下迁移新帐户。
使用新任务序列向导的安装现有映像包选项时,生成的任务序列默认使用标准选项记录所有用户配置文件。 此默认任务序列不选择 还原本地计算机用户配置文件或非域用户帐户的选项。
选择 “还原本地计算机用户配置文件” ,并为要迁移的帐户提供密码。 在手动创建的任务序列中,可以在 “还原用户状态 ”步骤下找到此设置。 在 New Task Sequence 向导创建的任务序列中,此设置位于步骤 Restore User Files and Settings 向导页下。
如果没有本地用户帐户,则此设置不适用。
自定义如何捕获用户配置文件
选择此选项可指定用于迁移的自定义配置文件。 选择 Files 以选择 USMT 要用于此步骤的配置文件。 指定一个自定义 .xml 文件,其中包含定义要迁移的用户状态文件的规则。
选择配置文件
选择此选项,然后选择 Files 以选择 USMT 包中要用于捕获用户配置文件的配置文件。 要添加配置文件,请输入 文件名 并选择 “添加”。
启用详细日志记录
启用此选项可生成更详细的日志文件信息。 捕获状态时,任务序列默认在任务序列日志文件夹%WinDir%\ccm\logs中生成ScanState.log。
使用加密文件系统跳过文件
启用此选项可跳过捕获使用 EFS (加密文件系统加密的文件) 。 这些文件包括用户配置文件。 根据操作系统和 USMT 版本,加密文件在还原后可能无法读取。 有关详细信息,请参阅 USMT 文档。
使用文件系统访问权限复制
启用此选项以指定以下任何设置:
如果无法捕获某些文件,请继续:启用此设置以继续迁移过程,即使无法捕获某些文件也是如此。 如果禁用此选项,并且无法捕获文件,则此步骤失败。 此选项在默认情况下处于启用状态。
使用链接而不是复制文件在本地记录:启用此设置以使用 NTFS 硬链接捕获文件。
有关使用硬链接迁移数据的详细信息,请参阅 硬链接迁移存储。
(脱机模式下记录仅 Windows PE) :启用此设置以在 Windows PE 而不是完整操作系统中时捕获用户状态。
(VSS) 使用卷复制影子服务进行记录
此选项允许您捕获文件,即使它们被其他应用程序锁定而无法编辑。
记录 Windows 设置
使用此步骤从运行任务序列的计算机捕获 Windows 设置。 任务序列将这些设置保存在任务序列变量中。 这些捕获的设置将覆盖在 “应用 Windows 设置” 步骤中配置的默认设置。
此任务序列步骤在 Windows PE 或完整操作系统中运行。
若要在任务序列编辑器中添加此步骤,请选择“添加”,选择“设置”,然后选择“记录 Windows 设置”。
用于记录 Windows 设置的变量
在此步骤中使用以下任务序列变量:
- OSDComputerName
- OSDMigrateComputerName
- OSDMigrateRegistrationInfo
- OSDMigrateTimeZone
- OSDRegisteredOrgName
- OSDTimeZone
用于记录 Windows 设置的 Cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepCaptureWindowsSettings
- New-CMTSStepCaptureWindowsSettings
- Remove-CMTSStepCaptureWindowsSettings
- Set-CMTSStepCaptureWindowsSettings
用于记录 Windows 设置的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
迁移计算机名称
记录计算机的 NetBIOS 计算机名称。
迁移注册用户名和组织名称
从计算机记录注册用户和组织名称。
迁移时区
记录计算机上的时区设置。
检查就绪情况
使用此步骤验证目标计算机是否满足指定的部署先决条件。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “常规”,然后选择“ 检查就绪情况”。
默认情况下,在步骤的新实例或现有实例中,未选择以下检查。 有关每次检查的更多信息,请参阅以下具体部分。
- 当前操作系统的体系结构
- 最低操作系统版本
- 最高操作系统版本
- 最低客户端版本
- 当前操作系统的语言
- 插入交流电源
-
已连接网络适配器
- 网络适配器不是无线的
- 计算机处于 UEFI 模式
从版本 2103 开始,任务序列进度显示有关就绪情况检查的详细信息。 如果任务序列由于客户端不满足此步骤的要求而失败,用户可以选择要 检查的选项。 此操作显示设备上失败的检查。 有关详细信息,请参阅 OS 部署的用户体验。
从版本 2111 开始,此步骤包括对 TPM 2.0 的检查。 这些检查可帮助你更好地部署 Windows 11。
重要
若要利用此新的 Configuration Manager 功能,请在更新站点之后,还要将客户端更新到最新版本。 虽然更新站点和控制台时,新功能将显示在 Configuration Manager 控制台中,但在客户端版本也是最新版本之前,完整的方案无法正常工作。
smsts.log包括所有检查的结果。 如果一个检查失败,任务序列引擎将继续评估其他检查。 在完成所有检查之前,此步骤不会失败。 如果至少有一项检查失败,则该步骤将失败,并返回错误代码 4316。 此错误代码转换为“此操作所需的资源不存在”。
用于检查就绪情况的变量
在此步骤中使用以下任务序列变量:
- _TS_CRMEMORY
- _TS_CRSPEED
- _TS_CRDISK
- _TS_CROSTYPE
- _TS_CRARCH
- _TS_CRMINOSVER
- _TS_CRMAXOSVER
- _TS_CRCLIENTMINVER
- _TS_CROSLANGUAGE
- _TS_CRACPOWER
- _TS_CRNETWORK
- _TS_CRUEFI
- _TS_CRWIRED
- 从版本 2111 开始 (_TS_CRTPMACTIVATED)
- _TS_CRTPMENABLED 版本 2111 开始 ()
用于检查就绪情况的 Cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepPrestartCheck
- New-CMTSStepPrestartCheck
- Remove-CMTSStepPrestartCheck
- Set-CMTSStepPrestartCheck
检查就绪情况的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
最小内存 (MB)
验证内存量(以兆字节 (MB) 为单位)是否达到或超过指定的数量。 该步骤默认启用此设置。
最低处理器速度 (MHz)
验证处理器的速度(以兆赫兹 (MHz) 为单位)是否达到或超过指定量。 该步骤默认启用此设置。
最小可用磁盘空间 (MB)
验证可用磁盘空间量(以 MB (MB) 为单位)是否达到或超过指定的数量。
从版本 2103 开始,它还检查没有分区的磁盘上的可用空间。
当前要刷新的操作系统为
验证目标计算机上安装的操作系统是否满足指定要求。 默认情况下,该步骤将此设置设置为 CLIENT 。
当前操作系统的体系结构
验证当前的操作系统是 32 位 还是 64 位。
最低 OS 版本
验证当前操作系统运行的版本是否高于指定版本。 指定包含主要版本、次要版本和内部版本号的版本。 例如,10.0.16299。
最高 OS 版本
验证当前操作系统运行的版本是否低于指定版本。 指定包含主要版本、次要版本和内部版本号的版本。 例如,10.0.18356。
最低客户端版本
验证 Configuration Manager 客户端版本是否至少是指定的版本。 采用以下格式指定客户端版本: 5.00.8913.1005.
当前操作系统的语言
验证当前操作系统语言是否与你指定的语言匹配。 选择语言名称,步骤将比较关联的语言代码。 此检查将您选择的语言与客户端上 Win32_OperatingSystem WMI 类的 OSLanguage 属性进行比较。
插入交流电源
验证设备是否已接通电源,而不是使用电池。
已连接网络适配器
验证设备是否具有连接到网络的网络适配器。 还可以选择从属检查以验证网络适配器是否不是无线的。
计算机处于 UEFI 模式
确定设备是配置为 UEFI 还是 BIOS。
启用 TPM 2.0 或更高版本
从版本 2111 开始,检查运行任务序列的设备是否启用了 TPM 2.0。
TPM 2.0 或更高版本已激活
从版本 2111 开始,如果设备启用了 TPM 2.0,请检查它是否已激活。
检查就绪情况选项
注意
如果在此步骤的“选项”选项卡上启用“出错时继续”设置,则只会记录就绪情况检查结果。 如果检查失败,任务序列不会停止。
连接到网络文件夹
使用此步骤创建与共享网络文件夹的连接。
此任务序列步骤在完整操作系统或 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “常规”,然后选择“ 连接到网络文件夹”。
连接到网络文件夹的变量
在此步骤中使用以下任务序列变量:
- SMSConnectNetworkFolderAccount
- SMSConnectNetworkFolderDriveLetter
- SMSConnectNetworkFolderPassword
- SMSConnectNetworkFolderPath
用于连接到网络文件夹的 Cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepConnectNetworkFolder
- New-CMTSStepConnectNetworkFolder
- Remove-CMTSStepConnectNetworkFolder
- Set-CMTSStepConnectNetworkFolder
“连接到网络”文件夹的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
Path
选择“ 浏览 ”以指定网络文件夹路径。 使用格式 \\server\share.
驱动器
选择要为此连接分配的本地驱动器号。
帐户
选择 “设置 ”以指定有权连接到此网络文件夹的用户帐户。 有关任务序列网络文件夹连接帐户的详细信息,请参阅 帐户。
禁用 BitLocker
使用此步骤可禁用当前操作系统驱动器或特定驱动器上的 BitLocker 加密。 此操作会使密钥保护程序在硬盘上以明文形式显示。 它不会解密驱动器的内容。 此操作几乎立即完成。
注意
BitLocker 驱动器加密为磁盘卷的内容提供低级别加密。
如果你有多个加密驱动器,请在任何数据驱动器上禁用 BitLocker,然后再禁用操作系统驱动器上的 BitLocker。
此步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请依次选择“添加”、“磁盘”、“禁用 BitLocker”。
禁用 BitLocker 的变量
在此步骤中使用以下任务序列变量:
用于禁用 BitLocker 的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepDisableBitLocker
- New-CMTSStepDisableBitLocker
- Remove-CMTSStepDisableBitLocker
- Set-CMTSStepDisableBitLocker
禁用 BitLocker 的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
当前操作系统驱动器
禁用当前操作系统驱动器上的 BitLocker。
特定驱动器
在特定驱动器上禁用 BitLocker。 使用下拉列表指定禁用 BitLocker 的驱动器。
Windows 重新启动指定次数后恢复保护
使用此选项指定重启次数,以使 BitLocker 保持禁用状态。 不要添加此步骤的多个实例,应将值设置为介于 1 (默认) 和 15 之间。
可以使用任务序列变量 OSDBitLockerRebootCount 和 OSDBitLockerRebootCountOverride 设置和修改此行为。
下载程序包内容
使用此步骤下载以下任何程序包类型:
- OS 映像
- 操作系统升级程序包
- 驱动程序包
- 包
- 启动映像 注 1
此步骤在任务序列中适用于在以下情况下升级操作系统:
使用可与 x86 和 x64 平台配合使用的单个升级任务序列。 在“准备升级”组中包括两个下载包内容步骤。 在 选项选项卡上 指定条件以检测客户端体系结构,并仅下载相应的操作系统升级包。 配置每个 下载包内容 步骤以使用相同的变量。 在“ 升级操作系统 ”步骤中使用该变量作为媒体路径。
若要动态下载适用的驱动程序包,请使用两个带有条件的 “下载包内容” 步骤来检测每个驱动程序包的相应硬件类型。 配置每个 下载包内容 步骤以使用相同的变量。 在“升级操作系统”步骤的“驱动程序”部分中使用该变量作为“暂存内容”值。
注意
部署包含此步骤的任务序列时,请勿在启动任务序列之前选择“在本地下载所有内容”,或者在“部署软件向导”的“分发点”页上的“部署”选项中选择“直接从分发点访问内容”。
此步骤在完整操作系统或 Windows PE 中运行。 Windows PE 不支持将包保存在 Configuration Manager 客户端缓存中的选项。
注意
不支持与独立媒体一起使用“ 下载包内容” 任务。 有关详细信息,请参阅 独立媒体不支持的操作。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “软件”,然后选择“ 下载包内容”。
用于下载包内容的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepDownloadPackageContent
- New-CMTSStepDownloadPackageContent
- Remove-CMTSStepDownloadPackageContent
- Set-CMTSStepDownloadPackageContent
下载包内容的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
选择包
选择图标以选择要下载的程序包。 选择一个包后,再次选择图标以选择另一个包。
放置到以下位置
选择将包保存在以下位置之一:
任务序列工作目录:此位置也称为任务序列缓存。
Configuration Manager 客户端缓存:使用此选项将内容存储在客户端缓存中。 默认情况下,此路径为
%WinDir%\ccmcache。自定义路径:任务序列引擎首先将包下载到任务序列工作目录。 然后,这会将内容移动到指定的此路径。 任务序列引擎在路径中追加包 ID。
将路径另存为变量
将包的路径保存到自定义任务序列变量中。 然后在另一个任务序列步骤中使用此变量。
Configuration Manager 向变量名称添加一个数字后缀。 例如,将变量指定 %MyContent% 为自定义变量。 它是任务序列存储此步骤的所有引用内容的根。 此内容可能包含多个包。 引用变量时,请添加数字后缀。 关于第一个包,请参阅 %MyContent01%。 在后续步骤(如 升级操作系统)中引用变量时,请使用 %MyContent02% 或 %MyContent03%,其中数字对应于 “下载包内容” 步骤列出包的顺序。
如果程序包下载失败,请继续下载列表中的其他程序包
如果任务序列无法下载包,则会开始下载列表中的下一个包。 此行为适用于步骤中的所有包。 任务序列将忽略任何引用的包的下载失败。
注 1:在“下载包内容”步骤中使用启动映像
如果将 任务序列属性 配置为 “使用启动映像”,则将启动映像添加到此步骤是多余的。 仅当未在任务序列的属性上指定启动映像时,才将其添加到此步骤中。
示例用例
用于预下载内容的单个任务序列:
- 无关联的启动映像。
- 仅在完整操作系统中运行,可能无需用户交互。
- 使用多个带条件的 下载包内容 步骤。 根据特定的语言和体系结构,它将内容下载到客户端缓存,为操作系统部署任务序列做准备。
- 此任务序列只有一个实例,具有所有可能的内容选项。
多个操作系统部署任务序列:
- 正常的操作系统部署任务序列。
- 具有在其属性中引用的启动映像。
- 此任务序列有多个实例,根据体系结构和语言的需要具有不同的启动映像
启用 BitLocker
BitLocker 驱动器加密为磁盘卷的内容提供低级别加密。 使用此步骤可在硬盘上的至少两个分区上启用 BitLocker 加密。 第一个活动分区包含 Windows 引导代码。 另一个分区包含操作系统。 引导分区必须保持未加密状态。
若要在 Windows PE 中时在驱动器上启用 BitLocker,请使用 预预配 BitLocker 步骤。
此步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择“ 磁盘”,然后选择“ 启用 BitLocker”。
指定“仅 TPM”、“USB 上的 TPM 和启动密钥”或指定 TPM 和 PIN 时,受信任的平台模块 (TPM) 必须处于以下状态,然后才能运行“启用 BitLocker”步骤:
- 已启用
- Activated
- 允许所有权
对于没有 TPM 的计算机或未启用 TPM 时,可以跳过此步骤。 通过此选项可以更轻松地在无法完全支持 BitLocker 的设备上管理任务序列行为。
此步骤完成任何剩余的 TPM 初始化。 其余操作不需要物理显示或重新启动。 如有必要, “启用 BitLocker” 步骤可透明地完成以下剩余的 TPM 初始化操作:
- 创建认可密钥对
- 创建所有者授权值并托管恢复信息
- 掌握所有权
- 创建存储根密钥,如果已存在但不兼容,则进行重置
如果希望任务序列等待“ 启用 BitLocker ”步骤完成驱动器加密过程,请选择“ 等待 ”选项。 如果未选择“ 等待 ”选项,则驱动器加密过程将在后台进行。 任务序列将立即转到下一步。
BitLocker 可用于加密计算机系统上的多个驱动器,包括操作系统驱动器和数据驱动器。 若要加密数据驱动器,请首先加密 OS 驱动器并完成加密过程。 此要求是因为 OS 驱动器存储数据驱动器的密钥保护程序。 如果在同一任务序列中加密 OS 和数据驱动器,请在操作系统驱动器的“启用 BitLocker”步骤中选择“等待”选项。
如果硬盘驱动器已加密,但已禁用 BitLocker,则 “启用 BitLocker” 步骤会重新启用密钥保护程序并快速完成。 在这种情况下,不需要对硬盘驱动器进行重新加密。
启用 BitLocker 的变量
在此步骤中使用以下任务序列变量:
- OSDBitLockerPIN
- OSDBitLockerRecoveryPassword
- OSDBitLockerStartupKey
- OSDRecoveryKeyPollingFrequency (从版本 2203 开始)
- OSDRecoveryKeyPollingTimeout (从版本 2203 开始)
用于启用 BitLocker 的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepEnableBitLocker
- New-CMTSStepEnableBitLocker
- Remove-CMTSStepEnableBitLocker
- Set-CMTSStepEnableBitLocker
启用 BitLocker 的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
选择要加密的驱动器
指定要加密的驱动器。 要加密当前的操作系统驱动器,请选择当前 操作系统驱动器。 然后配置以下密钥管理选项之一:
仅 TPM:选择此选项以仅使用受信任的平台模块 (TPM) 。
仅 USB 上的启动密钥:选择此选项可使用存储在 U 盘上的启动密钥。 选择此选项时,BitLocker 将锁定正常启动过程,直到将包含 BitLocker 启动密钥的 USB 设备连接到计算机。
USB 上的 TPM 和启动密钥:选择此选项可使用 TPM 和存储在 U 盘上的启动密钥。 选择此选项时,BitLocker 将锁定正常启动过程,直到将包含 BitLocker 启动密钥的 USB 设备连接到计算机。
TPM 和 PIN:选择此选项可使用 TPM 和个人标识号 (PIN) 。 选择此选项时,BitLocker 将锁定正常启动过程,直到用户提供 PIN。
要加密特定的非 OS 数据驱动器,请选择 “特定驱动器”。 然后从列表中选择驱动器。
磁盘加密模式
选择以下加密算法之一:
- AES_128
- AES_256
- XTS_AES256
- XTS_AES128
默认情况下,或者如果未指定,此步骤将继续使用 OS 版本的默认加密方法。 如果该步骤在不支持指定算法的 Windows 版本上运行,它将回退到 OS 默认值。 在这种情况下,任务序列引擎将发送状态消息 11911。
使用完整磁盘加密
默认情况下,此步骤仅加密驱动器上的已用空间。 建议使用此默认行为,因为它更快、更高效。 如果你的组织需要在安装过程中加密整个驱动器,则启用此选项。 Windows 安装程序等待整个驱动器进行加密,这需要很长时间,尤其是在大型驱动器上。
提示
还可以使用 Configuration Manager 创建和部署 BitLocker 管理策略。 这些策略使用 完整磁盘 加密。 若要在任务序列部署操作系统后管理设备上的 BitLocker,请启用此选项。 有关详细信息,请参阅 规划 BitLocker 管理。
选择创建恢复密钥的位置
在 Active Directory 中:BitLocker 创建恢复密码并将其托管到 Active Directory 中。 此选项要求你扩展 BitLocker 密钥托管的 Active Directory。 然后,BitLocker 可以将关联的恢复信息保存在 Active Directory 中。
Configuration Manager 数据库: 从版本 2203 开始,将操作系统卷的 BitLocker 恢复信息托管到 Configuration Manager。 如果部署 BitLocker 管理策略,请使用此选项。 使用此选项,而不是使用 Active Directory 或等待 Configuration Manager 客户端在任务序列后接收 BitLocker 管理策略。 通过在任务序列期间将恢复信息托管到 Configuration Manager,可确保设备在任务序列完成时受到 BitLocker 的完全保护。 此行为使你可以立即恢复操作系统卷。
注意
如果配置了以下选项之一,则客户端只会将其密钥托管到 Configuration Manager 站点:
创建并使用证书来加密站点数据库,以便进行 BitLocker 管理。
启用 BitLocker 客户端管理策略选项以 允许以纯文本形式存储恢复信息。
有关详细信息,请参阅加密 数据库中的恢复数据。
若要不创建密码,请选择“ 不创建恢复密钥 ”。 建议选择创建密码。
注意
如果 Configuration Manager 无法托管密钥,则默认情况下此任务序列步骤将失败。
等待 BitLocker 完成所有驱动器上的驱动器加密过程,然后继续执行任务序列
如果选择此选项,则允许在运行任务序列的下一步之前完成 BitLocker 驱动器加密。 如果选择此选项,BitLocker 将在用户登录到计算机之前加密整个磁盘卷。
加密大型硬盘驱动器时,加密过程可能需要数小时才能完成。 如果不选择此选项,则任务序列可立即继续。
对于没有 TPM 的计算机或未启用 TPM 时,跳过此步骤
如果选择此选项,不包含受支持或已启用 TPM 的计算机上的驱动器加密,则会跳过驱动器加密。 例如,在将 OS 部署到虚拟机时使用此选项。 默认情况下, “启用 BitLocker” 步骤禁用此设置。 如果启用此设置,但设备没有正常工作的 TPM,则任务序列引擎会记录错误以smsts.log并发送状态消息 11912。 任务序列将继续超过此步骤。
格式化和分区磁盘
使用此步骤可对目标计算机上的指定磁盘进行格式化和分区。
重要
为此步骤指定的每个设置都适用于单个指定磁盘。 若要在目标计算机上对另一个磁盘进行格式化和分区,请向任务序列添加其他 “格式化和磁盘分区 ”步骤。
此步骤仅在 Windows PE 中运行。 它不会在完整的操作系统中运行。
若要在任务序列编辑器中添加此步骤,请选择“ 添加”,选择“ 磁盘”,然后选择“ 格式化”和“磁盘分区”。
格式和磁盘分区的变量
在此步骤中使用以下任务序列变量:
用于格式化和磁盘分区的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepPartitionDisk
- New-CMTSStepPartitionDisk
- Remove-CMTSStepPartitionDisk
- Set-CMTSStepPartitionDisk
- New-CMTSPartitionSetting
格式和分区磁盘的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
磁盘编号
要格式化的磁盘的物理磁盘编号。 该数字基于 Windows 磁盘枚举顺序。
在版本 2010 及更早版本中,此数字不能大于 99。 在版本 2103 及更高版本中,最大数量为 10,000。 此更改有助于支持存储区域网络 (SAN) 方案。
用于存储磁盘编号的变量名称
使用任务序列变量指定要格式化的目标磁盘。 此变量选项支持具有动态行为的更复杂的任务序列。 例如,自定义脚本可以检测磁盘并根据硬件类型设置变量。 然后,可以使用此步骤的多个实例来配置不同的硬件类型和分区。
如果选择此属性,请输入自定义变量名称。 在任务序列中添加较早的步骤,将此自定义变量的值设置为物理磁盘的整数值。
以下模拟步骤演示一个示例:
运行 PowerShell 脚本:用于收集目标磁盘的自定义脚本
- 设置为
myOSDisk1 - 设置为
myDataDisk2
- 设置为
OS 磁盘的格式和分区 磁盘: 指定
myOSDisk变量- 将磁盘 1 配置为系统磁盘
数据磁盘的格式和分区 磁盘: 指定
myDataDisk变量- 配置磁盘 2 用于原始存储
此示例的变体为不同的硬件类型使用磁盘号和分区计划。
注意
仍可使用现有任务序列变量 OSDDiskIndex。 但是,“ 格式化和分区磁盘” 步骤的每个实例都使用相同的索引值。 如果要以编程方式为此步骤的多个实例设置磁盘编号,请使用此变量属性。
磁盘类型
要格式化的磁盘类型。 从下拉列表中选择两个选项:
- Standard (MBR) :主启动记录
- GPT:GUID 分区表
注意
如果将磁盘类型从 Standard (MBR) 更改为 GPT,并且分区布局包含扩展分区,则任务序列将从布局中删除所有扩展分区和逻辑分区。 在更改磁盘类型之前,任务序列编辑器会提示确认此操作。
卷
有关任务序列创建的分区或卷的特定信息,包括以下属性:
- 名称
- 剩余磁盘空间
若要创建新分区,请选择“ 新建 ”以启动“ 分区属性 ”对话框。 指定分区类型和大小,以及是否为启动分区。 若要修改现有分区,请选择要修改的分区,然后选择“ 属性” 按钮。 有关如何配置硬盘分区的更多信息,请参阅以下文章之一:
若要删除分区,请选择该分区,然后选择 “删除”。
安装应用程序
此步骤安装指定的应用程序或由任务序列变量的动态列表定义的一组应用程序。 当任务序列运行此步骤时,应用程序安装将立即开始,而无需等待策略轮询间隔。
申请必须符合以下条件:
应用程序必须具有 Windows Installer 或 脚本 安装程序的部署类型。 不支持 Windows 应用包 (.appx、.appxbundle、.msix、.msixbundle 文件类型) 部署类型。
它必须在本地系统帐户下运行,而不是在用户帐户下运行。
它不得与桌面交互。 程序必须以静默方式或以无人值守模式运行。
它不能自行启动重启。 应用程序必须使用标准重启代码 3010 请求重启。 此行为可确保此步骤正确处理重启。 如果应用程序返回 3010 退出代码,任务序列引擎将重启计算机。 重启后,任务序列会自动继续。
如果应用程序 检查正在运行的可执行文件,任务序列将无法安装它。 如果未将此步骤配置为在发生错误时继续,则整个任务序列将失败。
当设备还为 Windows Defender 应用程序控制分配了策略时,不支持在操作系统部署任务序列期间安装应用程序。 在这种情况下,任务序列完成后无法使用这些应用程序。 若要解决此计时问题,请在任务序列完成后 部署应用程序 。
注意
从版本 2107 开始,当满足以下条件时,此步骤之前会有 7 分钟的延迟:
- 任务序列正在从独立媒体运行。
- 上一步是 重启计算机。
- 当前的安装应用程序步骤在出错时不会继续。
在版本 2103 及更早版本中,在此情况下该步骤将失败。 任务序列未正确评估应用安装是否成功。
运行此步骤时,应用程序会检查需求规则和检测方法对其部署类型的适用性。 根据此检查的结果,应用程序安装适用的部署类型。 如果部署类型包含依赖项,则依赖部署类型将作为此步骤的一部分进行评估和安装。 独立媒体不支持应用程序依赖项。
注意
若要安装取代另一个应用程序的应用程序,必须提供替代应用程序的内容文件。 否则,此任务序列步骤将失败。 例如,Microsoft Visio 2010 安装在客户端上或安装在捕获的映像中。 当 “安装应用程序” 步骤安装 Microsoft Visio 2013 时,Microsoft Visio 2010 (被取代的应用程序) 的内容文件必须在分发点上可用。 如果客户端或捕获的映像上根本未安装 Microsoft Visio,则任务序列将安装 Microsoft Visio 2013,而不检查 Microsoft Visio 2010 内容文件。
如果停用替代应用,并在任务序列中引用新应用,则任务序列无法启动。 此行为是设计使然:任务序列需要所有应用引用。
此任务序列步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请依次选择“添加”、“软件”、“安装应用程序”。
安装应用程序的变量
在此步骤中使用以下任务序列变量:
注意
如果客户端无法从位置服务检索管理点列表,请使用 SMSTSMPListRequestTimeoutEnabled 和 SMSTSMPListRequestTimeout 任务序列变量。 这些变量指定任务序列在重试安装应用程序之前等待的毫秒数。 有关详细信息,请参阅 任务序列变量。
用于安装应用程序的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepInstallApplication
- New-CMTSStepInstallApplication
- Remove-CMTSStepInstallApplication
- Set-CMTSStepInstallApplication
安装应用程序的属性
在此步骤的 “属性” 选项卡上,配置本节中介绍的设置。
安装以下应用程序
任务序列按指定的顺序安装这些应用程序。
Configuration Manager 筛选出任何已禁用的应用程序,或具有以下设置的任何应用程序:
- 仅当用户登录时
- 使用用户权限运行
这些应用程序不会显示在 “选择要安装的应用程序 ”对话框中。
根据动态变量列表安装应用程序
任务序列使用此基本变量名称安装应用程序。 基本变量名称适用于为集合或计算机定义的一组任务序列变量。 这些变量指定任务序列为该集合或计算机安装的应用程序。 每个变量名称都由其公用基名加上从 01 开始的数字后缀组成。 每个变量的值必须包含应用程序的名称,仅包含其他内容。
若要使任务序列使用动态变量列表安装应用程序,请在应用程序属性的“常规”选项卡上启用以下设置:允许从“安装应用程序”任务序列操作安装此应用程序,而不是手动部署。
注意
不能将动态变量列表用于独立媒体部署来安装应用程序。
例如,若要使用名为 AA01 的任务序列变量安装单个应用程序,请指定以下变量:
| 变量名称 | 变量值 |
|---|---|
| AA01 | Microsoft Office |
要安装两个应用程序,请指定以下变量:
| 变量名称 | 变量值 |
|---|---|
| AA01 | Microsoft Lync |
| AA02 | Microsoft Office |
以下情况会影响任务序列安装的应用程序:
如果变量的值包含应用程序名称以外的任何信息。 任务序列不安装应用程序,任务序列继续。
如果任务序列找不到具有指定基名称和 “01” 后缀的变量,则任务序列不会安装任何应用程序。
重要
这些值区分大小写。 例如,“install”与“install”不同。 如果需要更改值,任务序列编辑器不会检测大小写的更改。 同时进行另一次编辑,例如,修改步骤说明。
如果某个应用程序失败,请继续安装列表中的其他应用程序
此设置指定在单个应用程序安装失败时继续该步骤。 如果指定此设置,则无论安装错误如何,任务序列都将继续。 如果未指定此设置,安装失败,则该步骤将立即结束。
安装后从缓存中清除应用程序内容
运行该步骤后,从客户端缓存中删除应用内容。 此行为对于硬盘较小的设备或连续安装大量大型应用时非常有用。
用于安装应用程序的选项
注意
在此步骤的“选项”选项卡上选择“发生错误时继续”时,当应用程序安装失败时任务序列将继续。 如果未启用此选项,则任务序列将失败,并且不会安装其余应用程序。
除默认选项外,还可以在此任务序列步骤的 “选项” 选项卡上配置以下其他设置:
如果计算机意外重启,请重试此步骤
如果其中一个应用程序安装意外重启计算机,请重试此步骤。 默认情况下,该步骤通过两次重试启用此设置。 可以指定 1 到 5 次重试。
安装包
使用此步骤安装软件包作为任务序列的一部分。 运行此步骤后,安装将立即开始,而无需等待策略轮询间隔。
程序包必须符合以下条件:
它必须在本地系统帐户下运行,而不是在用户帐户下运行。
它不应与桌面交互。 程序必须以静默方式或以无人值守模式运行。
它不能自行启动重启。 软件必须使用标准重启代码 3010 请求重启。 此行为可确保任务序列正确处理重启。 如果软件确实返回 3010 退出代码,任务序列引擎将重启计算机。 重启后,任务序列会自动继续。
部署操作系统时,不支持使用 “先运行其他程序” 选项来安装依赖程序的程序。 如果启用程序包选项 “首先运行另一个程序”,并且依赖程序已在目标计算机上运行,则依赖程序将运行,任务序列将继续。 但是,如果依赖程序尚未在目标计算机上运行,则任务序列步骤将失败。
此任务序列步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “软件”,然后选择“ 安装包”。
安装程序包步骤和在管理中心站点创建的独立媒体的已知问题
如果任务序列包括“ 安装包” 步骤,并且在管理中心站点 (CAS) 创建独立媒体,则可能会发生错误。 CAS 没有必要的客户端配置策略。 在任务序列运行时启用软件分发代理需要这些策略。
CreateTsMedia.log 文件中可能出现以下错误:WMI method SMS_TaskSequencePackage.GetClientConfigPolicies failed (0x80041001)
对于包含 安装包 步骤的独立媒体,在启用了软件分发代理的主站点上创建独立媒体。
或者,使用自定义的 “运行 PowerShell 脚本 ”步骤。 在“设置 Windows 和 ConfigMgr”步骤之后和第一个“安装包”步骤之前添加它。 “ 运行 PowerShell 脚本 ”步骤会运行以下命令,以便在第一个安装包步骤之前启用软件分发代理:
$namespace = "root\ccm\policy\machine\requestedconfig"
$class = "CCM_SoftwareDistributionClientConfig"
$classArgs = @{
ComponentName = 'Enable SWDist'
Enabled = 'true'
LockSettings='TRUE'
PolicySource='local'
PolicyVersion='1.0'
SiteSettingsKey='1'
}
Set-WmiInstance -Namespace $namespace -Class $class -Arguments $classArgs -PutType CreateOnly
安装包的变量
在此步骤中使用以下任务序列变量:
用于安装程序包的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepInstallSoftware
- New-CMTSStepInstallSoftware
- Remove-CMTSStepInstallSoftware
- Set-CMTSStepInstallSoftware
提示
在用户安装任务序列之前,使用内容预缓存下载适用的操作系统升级包。 有关详细信息,请参阅 配置预缓存内容。
安装包的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
安装单个软件包
此设置指定 Configuration Manager 软件包。 该步骤将等到安装完成。
根据动态变量列表安装软件包
任务序列使用此基本变量名称安装包。 基本变量名称适用于为集合或计算机定义的一组任务序列变量。 这些变量指定任务序列为该集合或计算机安装的包。 每个变量名都由其公用基名加上从 001 开始的数字后缀组成。 每个变量的值必须包含包 ID 和软件名称,用冒号分隔。
若要使任务序列使用动态变量列表安装软件,请在程序包属性的高级选项卡上启用以下设置:允许从“安装包”任务序列安装此程序而无需部署。
注意
对于独立媒体部署,您不能使用动态变量列表来安装软件包。
例如,若要使用名为 AA001 的任务序列变量安装单个软件包,请指定以下变量:
| 变量名称 | 变量值 |
|---|---|
| AA001 | CEN00054:安装 |
要安装三个软件包,请指定以下变量:
| 变量名称 | 变量值 |
|---|---|
| AA001 | CEN00054:安装 |
| AA002 | CEN00107:安装无提示 |
| AA003 | CEN00031:安装 |
以下情况会影响任务序列安装的包:
如果未以正确的格式创建变量值,或者变量未指定有效的包 ID 和名称,则软件安装失败。
如果包 ID 包含小写字符,则软件安装失败。
如果任务序列找不到具有指定基名称和 “001” 后缀的变量,则任务序列不会安装任何包。 任务序列继续。
重要
这些值区分大小写。 例如,“install”与“install”不同。 如果需要更改值,任务序列编辑器不会检测大小写的更改。 同时进行另一次编辑,例如,修改步骤说明。
如果软件包安装失败,请继续安装列表中的其他包
此设置指定在单个软件包安装失败的情况下继续执行该步骤。 如果指定此设置,则无论安装错误如何,任务序列都将继续。 如果未指定此设置,安装失败,则该步骤将立即结束。
如果计算机意外重启,请重试此步骤
如果其中一个包安装意外重启计算机,请重试此步骤。 默认情况下,该步骤通过两次重试启用此设置。 可以指定 1 到 5 次重试。
安装软件更新
使用此步骤在目标计算机上安装软件更新。 在此任务序列步骤运行之前,不会评估目标计算机的适用软件更新。 届时,将像任何其他 Configuration Manager 客户端一样评估目标计算机的软件更新。 对于安装软件更新的此步骤,请首先将更新部署到目标计算机属于其成员的集合。
重要
为了获得最佳性能,请安装最新版本的 Windows 更新代理。
此任务序列步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择“添加”,选择“软件”,然后选择“安装软件汇报”。
安装软件汇报的变量
在此步骤中使用以下任务序列变量:
- SMSInstallUpdateTarget
- SMSTSMPListRequestTimeoutEnabled
- SMSTSMPListRequestTimeout
- SMSTSSoftwareUpdateScanTimeout
- SMSTSWaitForSecondReboot
注意
如果客户端无法从位置服务检索管理点列表,请使用 SMSTSMPListRequestTimeoutEnabled 和 SMSTSMPListRequestTimeout 变量。 这些变量指定任务序列在重试安装应用程序或软件更新之前等待的毫秒数。 有关详细信息,请参阅 任务序列变量。
用于安装软件汇报的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepInstallUpdate
- New-CMTSStepInstallUpdate
- Remove-CMTSStepInstallUpdate
- Set-CMTSStepInstallUpdate
有关此步骤的更多建议和技术流程图,请参阅安装软件汇报。
安装软件汇报的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
需要安装 - 仅强制软件更新
选择此选项可安装具有管理员定义的安装截止时间的所有强制性软件更新。
可用于安装 - 所有软件更新
选择此选项可安装所有可用的软件更新。 首先,将这些更新部署到计算机所属的集合中。 任务序列在目标计算机上安装所有可用的软件更新。
根据缓存的扫描结果评估软件更新
默认情况下,此步骤使用 Windows 更新代理缓存的扫描结果。 禁用此选项可指示 Windows 更新代理从软件更新点下载最新目录。 使用任务序列 捕获和生成 OS 映像时,禁用此选项。
许多更新具有依赖项。 例如,在更新 XYZ 显示为适用之前安装更新 ABC。 禁用此设置并将任务序列部署到多个客户端时,它们将同时连接到软件更新点。 此行为可能会导致更新目录的过程和下载期间出现性能问题。 如果一次部署到多个客户端,请使用默认设置以使用缓存的扫描结果。 如果一次部署到少量客户端,请取消选中此选项以确保所有软件更新都安装在客户端上。
SMSTSSoftwareUpdateScanTimeout 变量控制此步骤中的软件更新扫描超时。 默认值为 60 分钟。 有关详细信息,请参阅 任务序列变量。
安装软件汇报的选项
除默认选项外,还可以在此任务序列步骤的 “选项” 选项卡上配置以下其他设置:
如果计算机意外重启,请重试此步骤
如果其中一个更新意外重启计算机,请重试此步骤。 默认情况下,该步骤通过两次重试启用此设置。 可以指定 1 到 5 次重试。
此选项仅适用于独立任务序列。 它不适用于部署 OS 并利用“设置 Windows 和 ConfigMgr 任务的 OSD 任务序列。 对于部署操作系统并利用安装窗口和 ConfigMgr 任务的 OSD 任务序列,请改用 SMSTSWaitForSecondReboot 变量。 有关详细信息,请参阅 任务序列变量:SMSTSWaitForSecondReboot。
加入域或工作组
使用此步骤将目标计算机添加到工作组或域。
注意
当已加入 Microsoft Entra 的客户端运行操作系统部署任务序列时,新操作系统中的客户端不会自动加入 Microsoft Entra ID。 即使未加入 Microsoft Entra,客户端仍处于托管状态。
此任务序列步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择“添加”、“常规”,然后选择“加入域或工作组”。
加入域或工作组的变量
在此步骤中使用以下任务序列变量:
- OSDJoinAccount
- OSDJoinDomainName
- OSDJoinDomainOUName
- OSDJoinPassword
- OSDJoinSkipReboot
- OSDJoinType
- OSDJoinWorkgroupName
用于加入域或工作组的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepJoinDomainWorkgroup
- New-CMTSStepJoinDomainWorkgroup
- Remove-CMTSStepJoinDomainWorkgroup
- Set-CMTSStepJoinDomainWorkgroup
加入域或工作组的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
加入工作组
选择此选项可让目标计算机加入指定的工作组。 如果计算机当前是域的成员,选择此选项会导致计算机重新启动。
加入域
选择此选项可让目标计算机加入指定的域。
(可选)输入或浏览指定域中的组织单位 (OU) ,以便计算机加入。 如果计算机当前是某个其他域或工作组的成员,则此选项会导致计算机重新启动。 如果计算机已是另一个 OU 的成员,由于 Active Directory 域服务不允许通过此方法更改 OU,因此 Windows 安装程序将忽略此设置。
输入有权加入域的帐户
选择“ 设置 ”以输入有权加入域的帐户的用户名和密码。 以以下格式 Domain\account输入帐户: 。 有关加入帐户的任务序列域的详细信息,请参阅 帐户。
准备 ConfigMgr 客户端进行记录
使用此步骤删除或配置引用计算机上的 Configuration Manager 客户端。 作为成像过程的一部分,此操作为计算机的捕获做好准备。
此步骤将完全删除 Configuration Manager 客户端,而不仅仅是删除关键信息。 当任务序列部署捕获的 OS 映像时,它每次都会安装一个新的 Configuration Manager 客户端。
提示
默认情况下,任务序列引擎仅在 生成和捕获引用操作系统映像 任务序列期间删除客户端。 任务序列引擎不会在其他捕获方法(如捕获媒体或自定义任务序列)期间删除客户端。 可为操作系统部署任务序列替代此行为。 在准备 ConfigMgr 客户端进行记录步骤之前,将任务序列变量 SMSTSUninstallCCMClient 设置为 TRUE。 此变量和行为仅适用于操作系统部署任务序列。 它会在下次重启设备后删除客户端。
此任务序列步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择“添加”,选择“图像”,然后选择“准备 ConfigMgr 客户端进行记录”。
用于准备 ConfigMgr 客户端进行记录的变量
在此步骤中使用以下任务序列变量:
- SMSTSUninstallCCMClient
用于准备 ConfigMgr 客户端进行记录的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepPrepareConfigMgrClient
- New-CMTSStepPrepareConfigMgrClient
- Remove-CMTSStepPrepareConfigMgrClient
- Set-CMTSStepPrepareConfigMgrClient
准备 Windows 以进行记录
在引用计算机上捕获操作系统映像时,使用此步骤指定 Sysprep 选项。 此步骤运行 Sysprep,然后将计算机重新启动到为任务序列指定的 Windows PE 启动映像中。 如果引用计算机已加入域,则此操作将失败。
此步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择“添加”,选择“图像”,然后选择“准备 Windows 进行记录”。
用于准备记录窗口的变量
在此步骤中使用以下任务序列变量:
用于准备 Windows 以进行记录的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepPrepareWindows
- New-CMTSStepPrepareWindows
- Remove-CMTSStepPrepareWindows
- Set-CMTSStepPrepareWindows
准备窗口进行记录的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
自动生成大容量存储驱动器列表
选择此选项可让 Sysprep 自动从引用计算机生成大容量存储驱动器列表。 此选项启用引用计算机上 sysprep.inf 文件中的“构建大容量存储驱动器”选项。 有关此设置的详细信息,请参阅 Sysprep 文档。
重要
此选项仅适用于 Windows XP。 它不再适用于当前支持的任何 Windows 版本。
不重置激活标志
选择此选项可阻止 Sysprep 重置产品激活标志。
运行此操作后关闭计算机
此选项指示 Sysprep 关闭计算机而不是其默认的重启行为。
面向现有设备的 Windows Autopilot 任务序列将此步骤与此选项一起使用。
如果希望任务序列刷新设备,然后立即启动 Windows Autopilot 的 OOBE,请将此选项保持关闭状态。
启用此选项以在映像处理后关闭设备。 然后,你可以将设备交付给用户,该用户在首次打开 Windows Autopilot 时使用 Windows Autopilot 启动 OOBE。
重要
请勿将“准备 Windows 以记录”任务与面向现有设备的 Windows Autopilot 任务序列一起使用。
Sysprep.exe在“准备窗口以进行记录”任务期间使用的命令行使用该/Generalize参数。 此 /Generalize 参数将删除 Windows Autopilot 使用的文件 AutopilotConfigurationFile.json ,从而导致 Windows Autopilot 部署在开箱即用的 (OOBE) 体验期间无法运行。 相反,在“准备窗口以进行记录”任务通常运行的位置,请添加运行命令行任务,以改为运行以下Sysprep.exe命令:
C:\Windows\System32\sysprep\sysprep.exe /oobe /reboot
有关详细信息,请参阅修改任务序列以考虑 Sysprep 命令行配置和“面向现有设备的 Windows Autopilot 无法正常工作)。
预预配 BitLocker
在 Windows PE 中时,使用此步骤在驱动器上启用 BitLocker。 默认情况下,仅对已使用的驱动器空间进行加密,因此加密时间要快得多。 可以在安装操作系统后使用 “启用 BitLocker” 步骤来应用密钥管理选项。
重要
预预配 BitLocker 要求计算机具有受支持且已启用的受信任平台模块 (TPM) 。
此步骤仅在 Windows PE 中运行。 它不会在完整的操作系统中运行。
若要在任务序列编辑器中添加此步骤,请依次选择“添加”、“磁盘”、“预预配 BitLocker”。
用于预预配 BitLocker 的 Cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepOfflineEnableBitLocker
- New-CMTSStepOfflineEnableBitLocker
- Remove-CMTSStepOfflineEnableBitLocker
- Set-CMTSStepOfflineEnableBitLocker
预配 BitLocker 的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
将 BitLocker 应用于指定的驱动器
指定要为其启用 BitLocker 的驱动器。 BitLocker 仅对驱动器上的已用空间进行加密。
磁盘加密模式 (预预配 BitLocker)
选择以下加密算法之一:
- AES_128
- AES_256
- XTS_AES256
- XTS_AES128
默认情况下,或者如果未指定,此步骤将继续使用 OS 版本的默认加密方法。 如果该步骤在不支持指定算法的 Windows 版本上运行,它将回退到 OS 默认值。 在这种情况下,任务序列引擎将发送状态消息 11911。
使用完整磁盘加密 (预预配 BitLocker)
默认情况下,此步骤仅加密驱动器上的已用空间。 建议使用此默认行为,因为它更快、更高效。 如果你的组织需要在安装过程中加密整个驱动器,则启用此选项。 Windows 安装程序等待整个驱动器进行加密,这需要很长时间,尤其是在大型驱动器上。
对于没有 TPM 的计算机或未启用 TPM 时,跳过此步骤 (预配 BitLocker)
如果选择此选项,不包含受支持或已启用 TPM 的计算机上的驱动器加密,则会跳过驱动器加密。 例如,在将 OS 部署到虚拟机时使用此选项。 默认情况下,为 预预配 BitLocker 步骤启用此设置。 在没有 TPM 或未初始化的 TPM 的设备上,该步骤失败。 如果设备没有正常工作的 TPM,任务序列引擎会向smsts.log记录警告并发送状态消息 11912。
发布状态存储
使用此步骤通知状态迁移点捕获或还原操作已完成。 将此步骤与请求状态存储、记录用户状态和恢复用户状态步骤结合使用。 可以使用状态迁移点和用户状态迁移工具 (USMT) 来迁移用户状态数据。
有关在部署操作系统时管理用户状态的详细信息,请参阅 管理用户状态。
如果使用 “请求状态存储 ”步骤请求访问状态迁移点以 捕获 用户状态,此步骤将通知状态迁移点捕获过程已完成。 然后,状态迁移点将用户状态数据标记为可用于还原。 状态迁移点设置用户状态数据的访问控制权限,以便只有还原计算机才具有只读访问权限。
如果使用 “请求状态存储 ”步骤请求访问状态迁移点以 还原 用户状态,此步骤将通知状态迁移点还原过程已完成。 然后,状态迁移点将激活其配置的数据保留设置。
重要
为请求状态存储和释放状态存储步骤之间的任何步骤设置“发生错误时继续”选项。 每个 请求状态存储 步骤都必须具有匹配的 “发布状态存储 ”步骤。
此步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择“ 用户状态”,然后选择“ 发布状态存储”。
发布状态存储的变量
在此步骤中使用以下任务序列变量:
发布状态存储的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepReleaseStateStore
- New-CMTSStepReleaseStateStore
- Remove-CMTSStepReleaseStateStore
- Set-CMTSStepReleaseStateStore
发布状态存储的属性
此步骤不需要在 “属性 ”选项卡上进行任何设置。
请求状态存储
捕获或还原状态时,使用此步骤请求访问状态迁移点。
有关在部署操作系统时管理用户状态的详细信息,请参阅 管理用户状态。
将此步骤与“发布状态存储”、“记录用户状态”和“还原用户状态”步骤结合使用。 可以使用这些步骤来使用状态迁移点和用户状态迁移工具 (USMT) 来迁移计算机状态。
注意
创建新的状态迁移点时,用户状态存储在长达一小时内不可用。 若要加快可用性,请调整状态迁移点上的任何属性设置以触发站点控制文件更新。
此步骤在完整操作系统和脱机 USMT 的 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择“ 用户状态”,然后选择“ 请求状态存储”。
请求状态存储的变量
在此步骤中使用以下任务序列变量:
请求状态存储的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepRequestStateStore
- New-CMTSStepRequestStateStore
- Remove-CMTSStepRequestStateStore
- Set-CMTSStepRequestStateStore
请求状态存储的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
从计算机记录状态
查找满足状态迁移点设置中配置的最低要求的状态迁移点。 例如, 最大客户端数 和 最小可用磁盘空间量。 此选项不保证在状态迁移时有足够的可用空间。 此选项请求访问状态迁移点,以便从计算机中捕获用户状态和设置。
如果 Configuration Manager 站点有多个活动状态迁移点,此步骤将查找具有可用磁盘空间的状态迁移点。 任务序列在管理点中查询状态迁移点列表,然后评估每个状态迁移点,直到找到满足最低要求的状态迁移点。
从另一台计算机还原状态
请求访问状态迁移点以将以前捕获的用户状态和设置还原到目标计算机。
如果有多个状态迁移点,则此步骤将查找具有目标计算机状态的状态迁移点。
重试次数
此步骤在失败前尝试查找相应状态迁移点的次数。
重试延迟 (秒)
任务序列步骤在两次重试之间等待的时间量(以秒为单位)。
如果计算机帐户无法连接到状态存储,请使用网络访问帐户
如果任务序列无法使用计算机帐户访问状态迁移点,它将使用网络访问帐户凭据进行连接。 此选项安全性较低,因为其他计算机可能使用网络访问帐户来访问存储的状态。 如果目标计算机未加入域,则可能需要此选项。
重启计算机
使用此步骤重启运行任务序列的计算机。 重启后,计算机会自动继续执行任务序列中的下一步。
此步骤可以在完整操作系统或 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “常规”,然后选择“ 重启计算机”。
重启计算机的变量
在此步骤中使用以下任务序列变量:
用于重启计算机的 Cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
重启计算机的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
分配给此任务序列的启动映像
如果选择此选项,目标计算机可使用分配给任务序列的启动映像。 任务序列使用启动映像在 Windows PE 中运行后续步骤。
当前安装的默认操作系统
如果选择此选项,目标计算机将重新启动到已安装的操作系统。
在重启之前通知用户
如果选择此选项,将在目标计算机重启之前向用户显示通知。 此步骤默认选择此选项。
消息通知
输入要在目标计算机重启之前向用户显示的通知消息。
消息显示超时
指定目标计算机重启前的时间量(以秒为单位)。 默认值为 60 秒。
还原用户状态
使用此步骤启动用户状态迁移工具 (USMT) ,以将用户状态和设置还原到目标计算机。 您将此步骤与“记录用户状态”步骤结合使用。
有关在部署操作系统时管理用户状态的详细信息,请参阅 管理用户状态。
将此步骤与 “请求状态存储” 和“ 释放状态存储 ”步骤配合使用,以使用状态迁移点保存或还原状态设置。 此选项始终使用 Configuration Manager 生成和管理的加密密钥解密 USMT 状态存储。
从版本 2103 开始,此步骤和“记录用户状态)步骤使用当前支持的最高加密算法 AES 256。
重要
如果有任何活动用户状态迁移,在更新这些设备上的 Configuration Manager 客户端之前,请还原用户状态。 否则,更新的客户端在尝试使用其他加密算法时将无法还原用户状态。 如有必要,可以手动还原用户状态并显式使用 USMT 参数 /decrypt:3DES。
“ 还原用户状态 ”步骤提供对最常用 USMT 选项的有限子集的控制。 使用 OSDMigrateAdditionalRestoreOptions 变量指定其他命令行选项。
重要
如果将此步骤用于与操作系统部署方案无关的目的,请立即在“还原用户状态”步骤后添加“重启计算机”步骤。
此步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “用户状态”,然后选择“ 还原用户状态”。
用于还原用户状态的变量
在此步骤中使用以下任务序列变量:
- _OSDMigrateUsmtRestorePackageID
- OSDMigrateAdditionalRestoreOptions
- OSDMigrateContinueOnRestore
- OSDMigrateEnableVerboseLogging
- OSDMigrateLocalAccounts
- OSDMigrateLocalAccountPassword
- OSDStateStorePath
用于恢复用户状态的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepRestoreUserState
- New-CMTSStepRestoreUserState
- Remove-CMTSStepRestoreUserState
- Set-CMTSStepRestoreUserState
用于还原用户状态的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
用户状态迁移工具包
指定包含此步骤要使用的 USMT 版本的程序包。 此包不需要程序。 当步骤运行时,任务序列使用指定包中的 USMT 版本。 指定包含 32 位或 64 位版本的 USMT 的包。 USMT 的体系结构取决于任务序列正在还原到其中状态的操作系统的体系结构。
使用标准选项还原所有捕获的用户配置文件
使用标准选项还原捕获的用户配置文件。 若要自定义 USMT 还原的选项,请选择 “自定义用户配置文件捕获”。
自定义用户配置文件的还原方式
允许您自定义要还原到目标计算机的文件。 选择 Files 以指定要用于还原用户配置文件的 USMT 包中的配置文件。 若要添加配置文件,请在“ 文件名 ”框中输入文件名,然后选择“ 添加”。 “Files”窗格列出了 USMT 使用的配置文件。 指定的 .xml 文件定义 USMT 还原的用户文件。
还原本地计算机用户配置文件
还原本地计算机用户配置文件。 这些配置文件不适用于域用户。 向还原的本地用户帐户分配新密码。 USMT 无法迁移原始密码。 在 密码框中 输入新密码,然后在确认 密码 框中确认密码。
如果某些文件无法还原则继续
即使 USMT 无法还原某些文件,也会继续还原用户状态和设置。 此步骤默认启用此选项。 如果禁用此选项,并且 USMT 在还原文件时遇到错误,则此步骤会立即失败。 USMT 不会还原所有文件。
启用详细日志记录
启用此选项可生成更详细的日志文件信息。 还原状态时,任务序列默认在任务序列日志文件夹%WinDir%\ccm\logs中生成Loadstate.log。
运行命令行
使用此步骤运行指定的命令行。
正在运行的命令必须满足以下条件:
它不应与桌面交互。 命令必须以静默方式或无人参与模式运行。
它不能自行启动重启。 该命令必须使用标准重启代码 3010 请求重启。 此行为可确保任务序列正确处理重启。 如果该命令确实返回了 3010 退出代码,任务序列引擎将重启计算机。 重启后,任务序列会自动继续。
此步骤可以在完整的操作系统或 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请依次选择“添加”、“常规”、“运行命令行”。
运行命令行的变量
在此步骤中使用以下任务序列变量:
- OSDDoNotLogCommand
- SMSTSDisableWow64Redirection
- SMSTSRunCommandLineUserName
- SMSTSRunCommandLineUserPassword
- SMSTSRunCommandLineAsUser
- WorkingDirectory
用于运行命令行的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepRunCommandLine
- New-CMTSStepRunCommandLine
- Remove-CMTSStepRunCommandLine
- Set-CMTSStepRunCommandLine
“运行命令行”的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
命令行
指定任务序列运行的命令行。 此字段属于必填字段。 包括文件扩展名,例如 .vbs 和 .exe。 包括所有必需的设置文件和命令行选项。
如果未指定文件扩展名,Configuration Manager会尝试.com、.exe 和 .bat。 如果文件名的扩展名不是可执行文件类型,则 Configuration Manager 会尝试应用本地关联。 例如,如果命令行 readme.gif,Configuration Manager 启动目标计算机上指定的应用程序以打开 .gif 文件。
示例:
setup.exe /a
cmd.exe /c copy Jan98.dat c:\sales\Jan98.dat
注意
若要成功运行,请在命令行操作之前使用 cmd.exe /c 命令。 这些操作的示例包括输出重定向、管道和复制命令。
输出到任务序列变量
使用此设置将命令输出保存到自定义任务序列变量。
注意
Configuration Manager 将此输出限制为最后 1000 个字符。
禁用 64 位文件系统重定向
默认情况下,64 位操作系统使用 WOW64 文件系统重定向程序来运行命令行。 此行为是为了正确查找 32 位版本的操作系统可执行文件和库。 选择此选项将禁用使用 WOW64 文件系统重定向程序。 Windows 使用操作系统可执行文件和库的本机 64 位版本运行命令。 在 32 位操作系统上运行时,此选项无效。
开始位置
指定程序的可执行文件夹,最多 127 个字符。 此文件夹可以是目标计算机上的绝对路径,也可以是相对于包含包的分发点文件夹的路径。 此字段是可选字段。
示例:
c:\officexp
i386
注意
“ 浏览 ”按钮浏览本地计算机中的文件和文件夹。 你选择的任何内容都必须存在于目标计算机上。 它必须位于同一位置,并且具有相同的文件和文件夹名称。
包
在命令行上指定目标计算机上尚不存在的文件或程序时,请选择此选项以指定包含必要文件的 Configuration Manager 包。 该包不需要程序。 如果指定的文件存在于目标计算机上,则不需要此选项。
超时
指定一个值,该值表示 Configuration Manager 允许命令行运行的时间。 此值可以是 1 分钟到 999 分钟。 默认值为 15 分钟。 默认情况下,此选项处于禁用状态。
重要
如果输入的值没有足够的时间让指定的命令成功完成,则此步骤失败。 整个任务序列可能会失败,具体取决于步骤或组条件。 如果超时过期,Configuration Manager 将终止命令行进程。
以以下帐户身份运行此步骤
指定命令行作为 Windows 用户帐户而不是本地系统帐户运行。
注意
若要在安装操作系统后使用其他帐户运行简单脚本或命令,请先将该帐户添加到计算机。 此外,可能需要还原 Windows 用户配置文件才能运行更复杂的程序,例如 Windows Installer。
帐户
指定此步骤用于运行命令行的 Windows 用户帐户。 命令行以指定帐户的权限运行。 选择 “设置 ”以指定本地用户或域帐户。 有关任务序列运行方式帐户的详细信息,请参阅 帐户。
重要
如果此步骤指定了用户帐户并在 Windows PE 中运行,则操作将失败。 不能将 Windows PE 加入域。 smsts.log文件记录了此失败。
“运行命令行”的选项
除默认选项外,还可以在此任务序列步骤的 “选项” 选项卡上配置以下其他设置:
成功代码
在脚本中包含该步骤应评估为成功的其他退出代码。
运行 PowerShell 脚本
使用此步骤运行指定的 Windows PowerShell 脚本。
脚本必须满足以下条件:
它不应与桌面交互。 脚本必须以静默方式或以无人参与模式运行。
它不能自行启动重启。 脚本必须使用标准重启代码 3010 请求重启。 此行为可确保任务序列正确处理重启。 如果该脚本确实返回了 3010 退出代码,则任务序列引擎将重启计算机。 重启后,任务序列会自动继续。
使用 Unicode 格式的已签名 PowerShell 脚本。 ANSI 格式(默认值)不适用于此步骤。
此步骤可以在完整的操作系统或 Windows PE 中运行。 若要在 Windows PE 中运行此步骤,请在启动映像中启用 PowerShell。 从启动映像属性中的 “可选组件 ”选项卡启用 WinPE-PowerShell 组件。 有关如何修改启动映像的详细信息,请参阅 管理启动映像。
注意
默认情况下,PowerShell 不会在 Windows Embedded 操作系统上启用。
警告
某些反恶意软件可能会无意中触发此任务序列步骤的事件。 若要允许这些脚本在不受干扰的情况下运行,请将反恶意软件配置为排除。%windir%\temp\smstspowershellscripts
若要在任务序列编辑器中添加此步骤,请依次选择“添加”、“常规”、“运行 PowerShell 脚本”。
用于运行 PowerShell 脚本的变量
在此步骤中使用以下任务序列变量:
- OSDLogPowerShellParameters
- SMSTSRunPowerShellAsUser
- SMSTSRunPowerShellUserName
- SMSTSRunPowerShellUserPassword
用于运行 PowerShell 脚本的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepRunPowerShellScript
- New-CMTSStepRunPowerShellScript
- Remove-CMTSStepRunPowerShellScript
- Set-CMTSStepRunPowerShellScript
运行 PowerShell 脚本的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
包
指定包含 PowerShell 脚本的 Configuration Manager 包。 一个包可以包含多个 PowerShell 脚本。
脚本名称
指定要运行的 PowerShell 脚本的名称。 此字段属于必填字段。
输入 PowerShell 脚本
在此步骤中直接输入 Windows PowerShell 代码。 借助此功能,可以在任务序列中运行 PowerShell 命令,而无需先使用脚本创建和分发包。
添加或编辑脚本时,PowerShell 脚本窗口会提供以下操作:
直接编辑脚本
从文件打开现有脚本
在 Configuration Manager 中浏览到现有的已批准脚本
参数
指定传递给 PowerShell 脚本的参数。 这些参数与命令行上的 PowerShell 脚本参数相同。
提供脚本使用的参数,而不是 Windows PowerShell 命令行使用的参数。
以下示例包含有效参数:
-MyParameter1 MyValue1 -MyParameter2 MyValue2
以下示例包含无效参数。 前两项是Windows PowerShell命令行参数 (-NoLogo 和 -ExecutionPolicy 无限制) 。 脚本不使用这些参数。
-NoLogo -ExecutionPolicy Unrestricted -File MyScript.ps1 -MyParameter1 MyValue1 -MyParameter2 MyValue2
如果参数值包含特殊字符或空格,请使用单引号 () ' 括起该值。 使用双引号 (") 可能会导致任务序列步骤错误地处理参数。
例如:-Arg1 '%TSVar1%' -Arg2 '%TSVar2%'
还可以将此属性设置为变量。
例如,如果指定 %MyScriptVariable%,当任务序列运行脚本时,它会将此自定义变量的值添加到 PowerShell 命令行。
PowerShell 执行策略
确定 (允许在计算机上运行的 PowerShell 脚本(如果有) )。 选择以下执行策略之一:
AllSigned:仅运行由受信任的发布者签名的脚本。
未定义:不定义任何执行策略。
绕过:加载所有配置文件并运行所有脚本。 如果从 Internet 下载未签名的脚本,则 Windows PowerShell 不会在运行该脚本之前提示你提供权限。
重要
PowerShell 1.0 不支持未定义和绕过执行策略。
注意
使用 AllSigned 执行策略时,请勿使用“ 输入 PowerShell 脚本 ”选项直接在任务序列步骤中嵌入已签名脚本。 脚本内容并不总是通过任务序列 XML 逐字节保留,因此数字签名可能在客户端上无效。 发生这种情况时,客户端会拒绝脚本并 smsts.log 记录“哈希不匹配”错误。
若要将签名脚本与 AllSigned 配合使用,请将签名.ps1的文件放在 Configuration Manager 包中,并使用上面的包和脚本名称选项引用它。 此方法将保留原始文件字节和签名。
输出到任务序列变量
将脚本输出保存到自定义任务序列变量。
注意
Configuration Manager 将此输出限制为最后 1000 个字符。
有关如何使用此步骤属性的示例,请参阅 如何设置变量。
开始位置
指定脚本的起始文件夹,最多 127 个字符。 此文件夹可以是目标计算机上的绝对路径,也可以是相对于包含包的分发点文件夹的路径。 此字段是可选字段。
注意
“ 浏览 ”按钮浏览本地计算机中的文件和文件夹。 你选择的任何内容都必须存在于目标计算机上。 它必须位于同一位置,并且具有相同的文件和文件夹名称。
超时
指定一个值,表示 Configuration Manager 允许 PowerShell 脚本运行的时间。 此值可以是 1 分钟到 999 分钟。 默认值为 15 分钟。 默认情况下,此选项处于禁用状态。
重要
如果输入的值没有足够的时间让指定的脚本成功完成,则此步骤失败。 整个任务序列可能会失败,具体取决于步骤或组条件。 如果超时过期,Configuration Manager 将终止 PowerShell 进程。
以以下帐户身份运行此步骤
指定 PowerShell 脚本作为 Windows 用户帐户而不是本地系统帐户运行。
注意
若要在安装操作系统后使用其他帐户运行简单脚本或命令,请先将该帐户添加到计算机。 此外,可能需要还原 Windows 用户配置文件才能运行更复杂的操作。
帐户
指定此步骤用于运行 PowerShell 脚本的 Windows 用户帐户。 指定的帐户必须是系统上的本地管理员,并且脚本以此帐户的权限运行。 选择 “设置 ”以指定本地用户或域帐户。 有关任务序列运行方式帐户的详细信息,请参阅 帐户。
重要
如果此步骤指定了用户帐户并在 Windows PE 中运行,则操作将失败。 不能将 Windows PE 加入域。 smsts.log文件记录了此失败。
用于运行 PowerShell 脚本的选项
除默认选项外,还可以在此任务序列步骤的 “选项” 选项卡上配置以下其他设置:
成功代码
在脚本中包含该步骤应评估为成功的其他退出代码。
运行任务序列
此步骤运行另一个任务序列。 它在任务序列之间创建父子关系。 使用子任务序列,可以创建更加模块化、可重用的任务序列。
若要在任务序列编辑器中添加此步骤,请依次选择“添加”、“常规”、“运行任务序列”。
运行任务序列的规范和限制
将子任务序列添加到任务序列时,请考虑以下几点:
父任务序列和子任务序列有效地组合到客户端运行的单个策略中。
环境是全球性的。 如果父任务序列设置了变量,然后子任务序列更改了该变量,则它将保留最新值。 如果子任务序列创建了新变量,则该变量可用于父任务序列的其余部分。
对于单个任务序列操作,将按正常情况发送状态消息。
任务序列将条目写入 smsts.log 文件,并使用新的日志条目明确子任务序列何时启动。
不能选择具有启动映像引用的任务序列。 对于需要启动映像的任何部署,请在父任务序列上指定它。
如果禁用了子任务序列,则部署失败。 不能使用“ 出错时继续 ”选项来解决此限制。
如果子任务序列包含被视为 高影响的步骤,则软件中心不会检测到它并显示高影响通知。 在“用户通知”选项卡上修改父任务序列的属性,以指定 这是一个影响很大的任务序列。
如果子任务序列缺少包引用,则查看父任务序列不会检测到此状态。 如果编辑父任务序列,它会在你对父任务序列进行更改时检测子任务序列中缺少的任何引用。
用于运行任务序列的 Cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepRunTaskSequence
- New-CMTSStepRunTaskSequence
- Remove-CMTSStepRunTaskSequence
- Set-CMTSStepRunTaskSequence
“运行任务序列”的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
选择要运行的任务序列
选择 “浏览 ”以选择子任务序列。 选择任务序列对话框不显示父任务序列。
设置动态变量
使用此步骤执行以下操作:
从计算机及其环境中收集信息。 然后使用该信息设置指定的任务序列变量。
评估定义的规则。 根据计算结果为 true 的规则设置任务序列变量。
此步骤可以在完整操作系统或 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “常规”,然后选择“ 设置动态变量”。
用于设置动态变量的变量
任务序列自动设置以下只读任务序列变量:
- _SMSTSMake
- _SMSTSModel
- _SMSTSMacAddresses
- _SMSTSIPAddresses
- _SMSTSSerialNumber
- _SMSTSAssetTag
- _SMSTSUUID
用于设置动态变量的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepSetDynamicVariable
- New-CMTSStepSetDynamicVariable
- Remove-CMTSStepSetDynamicVariable
- Set-CMTSStepSetDynamicVariable
- New-CMTSRule
设置动态变量的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
动态规则和变量
若要设置要在任务序列中使用的动态变量,请添加规则。 然后为规则中指定的每个变量设置值。 此外,添加一个或多个变量而不添加规则。 添加规则时,请从以下类别中进行选择:
计算机:计算硬件资产标记、UUID、序列号或 MAC 地址的值。 根据需要设置多个值。 如果任一值为 true,则该规则的计算值为 true。 例如,如果设备序列号为 5892087且 MAC 地址为 22-A4-5A-13-78-26,则以下规则的计算值为 true:
IF Serial Number = 5892087 OR MAC address = 26-78-13-5A-A4-22 THEN位置: 评估默认网络网关的值
品牌和型号:评估计算机品牌和型号的值。 make 和 model 都必须计算为 true,规则才能计算为 true。
将星号 (
*) 和问号指定为通配符 ()?。 星号匹配多个字符,问号匹配单个字符。 例如,字符串DELL*900?同时DELL-ABC-9001DELL9009匹配 和 。任务序列变量:添加要评估的 任务序列变量、条件和值。 条件与 步骤条件相同。 当为变量设置的值满足指定条件时,该规则的计算结果为 true。
指定要为计算结果为 true 的规则设置的一个或多个变量,或者在不使用规则的情况下设置变量。 选择现有变量,或创建自定义变量。
现有任务序列变量:从现有任务序列变量列表中选择一个或多个变量。 无法选择数组变量。
自定义任务序列变量:定义自定义任务序列变量。 还可以指定现有任务序列变量。 此设置对于指定现有变量数组(如 OSDAdapter)非常有用,因为变量数组不在现有任务序列变量的列表中。
为规则选择变量后,请为每个变量提供值。 当规则计算结果为 true 时,该变量设置为指定值。 对于每个变量,您可以选择 “不显示此值 ”以隐藏变量的值。 默认情况下,某些现有变量会隐藏值,例如 OSDCaptureAccountPassword 变量。
重要
使用“设置动态变量”步骤导入任务序列时,Configuration Manager 将删除标记为“不显示此值”的任何变量值。 导入任务序列后,重新输入动态变量的值。
使用选项不 显示此值时,变量的值不会显示在任务序列编辑器中。 任务序列日志文件 (smsts.log) 或任务序列调试程序也不会显示变量值。 运行时,任务序列仍可以使用该变量。 如果不想再隐藏这些变量,请先将其删除。 然后重新定义变量,而不选择隐藏变量的选项。
警告
如果在 “运行命令行 ”步骤的命令行中包含变量,则任务序列日志文件将显示包括变量值的完整命令行。 若要防止日志文件中出现潜在的敏感数据,请将任务序列变量 OSDDoNotLogCommand 设置为 TRUE。
设置任务序列变量
使用此步骤可设置用于任务序列的变量的值。
此步骤可以在完整操作系统或 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请选择 “添加”,选择 “常规”,然后选择“ 设置任务序列变量”。
用于设置任务序列变量的变量
任务序列变量由任务序列操作读取,并指定这些操作的行为。 有关特定任务序列变量以及如何使用它们的详细信息,请参阅以下文章:
用于设置任务序列变量的 cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
设置任务序列变量的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
任务序列变量
指定任务序列内置变量或操作变量的名称,或指定你自己的用户定义的变量名称。
不显示此值
启用此选项可屏蔽存储在任务序列变量中的敏感数据。 例如,在指定密码时。
注意
启用此选项,然后设置任务序列变量的值。 否则,变量值不会按预期设置,这可能会导致任务序列运行时出现意外行为。
使用选项不 显示此值时,变量的值不会显示在任务序列编辑器中。 任务序列日志文件 (smsts.log) 或任务序列调试程序也不会显示变量值。 运行时,任务序列仍可以使用该变量。 如果您不想再隐藏此变量,请先将其删除。 然后重新定义变量,而不选择隐藏选项。
警告
如果在 “运行命令行 ”步骤的命令行中包含变量,则任务序列日志文件将显示包括变量值的完整命令行。 若要防止日志文件中出现潜在的敏感数据,请将任务序列变量 OSDDoNotLogCommand 设置为 TRUE。
值
任务序列将变量设置为此值。 使用语法 %varname%将此任务序列变量设置为另一个任务序列变量的值。
安装 Windows 和 ConfigMgr
使用此步骤执行从 Windows PE 到新操作系统的转换。 此任务序列步骤是任何 OS 部署的必需部分。 它将 Configuration Manager 客户端安装到新操作系统中,并准备任务序列继续在新操作系统中执行。
此步骤负责将任务序列从 Windows PE 转换为完整操作系统。 由于此转换,该步骤在 Windows PE 和完整操作系统中同时运行。 但是,由于转换从 Windows PE 开始,因此只能在任务序列的 Windows PE 部分添加。
此步骤将 sysprep.inf 或 unattend.xml 目录变量(如 %WINDIR%%ProgramFiles%and )替换为 Windows PE 安装目录。 X:\Windows 任务序列将忽略使用这些环境变量指定的变量。
若要在任务序列编辑器中添加此步骤,请选择“添加”,选择“图像”,然后选择“设置 Windows 和 ConfigMgr”。
设置 Windows 和 ConfigMgr 的行为
此步骤执行以下操作:
预备:Windows PE
替换 unattend.xml 文件中的任务序列变量。
下载包含 Configuration Manager 客户端的程序包。 将包添加到已部署的映像。
设置 Windows
基于映像的安装
禁用映像中的 Configuration Manager 客户端(如果存在)。 换言之,禁用 Configuration Manager 客户端服务的自动启动。
更新已部署映像中的注册表,以使用与引用计算机相同的驱动器号启动已部署的操作系统。
重启到已部署的操作系统。
Windows 微型安装程序使用以前指定的 sysprep.inf 或 unattend.xml 已禁止所有最终用户交互的应答文件运行。 如果使用 “应用网络设置 ”步骤加入域,则该信息将在应答文件中。 Windows 小型安装程序将计算机加入域。
基于 Setup.exe 的安装。 运行遵循典型 Windows 安装过程的 Setup.exe:
将“ 应用操作系统 ”步骤中指定的操作系统升级程序包复制到硬盘驱动器。
重新启动到新部署的操作系统。
Windows 微型安装程序使用以前指定的 sysprep.inf 或 unattend.xml 已禁止所有用户界面设置的应答文件运行。 如果使用 “应用网络设置 ”步骤加入域,则该信息将在应答文件中。 Windows 小型安装程序将计算机加入域。
设置 Configuration Manager 客户端
Windows 小型安装完成后,任务序列将使用 setupcomplete.cmd 继续。 有关详细信息,请参阅在 设置完成后运行脚本 (SetupComplete.cmd) 。
根据在“ 应用 Windows 设置” 步骤中选择的选项,启用或禁用本地 Administrator 帐户。
使用之前下载的包和在此步骤中指定的安装属性安装 Configuration Manager 客户端。 客户端在“预配模式”中安装。 此模式可阻止客户端处理新的策略请求,直到任务序列完成。 有关详细信息,请参阅 预配模式。
等待客户端完全运行。
步骤完成
任务序列继续运行下一步。
注意
在安装 Windows 和 ConfigMgr 任务期间,任务序列从 Windows PE 转换为新安装的 Windows 操作系统。 新安装的 Windows 首次启动时,Windows 安装程序将运行。 在 Windows 安装程序结束时,Windows 安装程序脚本 SetupComplete.cmd将重新启动任务序列。 这会导致任务序列完全在 Windows 安装程序中运行。 Windows 组策略通常在 Windows 安装程序完成后才会进行处理,因此在任务序列完成之前不会处理组策略。 此行为在 Windows 的不同版本中是一致的。 有关操作顺序的详细信息,请参阅在 设置完成后运行脚本 (SetupComplete.cmd) 。
尽管组策略通常不会运行,直到 Windows 安装程序和任务序列完成,但 Windows 和任务序列引擎不会阻止组策略运行。 某些操作(例如脚本、应用程序安装或任务序列期间运行的某些任务序列步骤)可能会触发组策略评估。 例如,“安装软件汇报”任务可能会在设置 WSUS 服务器时触发组策略评估。 调用 gpupdate 的脚本也可能触发组策略刷新。
用于设置 Windows 和 ConfigMgr 的变量
在此步骤中使用以下任务序列变量:
用于安装 Windows 和 ConfigMgr 的 Cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepSetupWindowsAndConfigMgr
- New-CMTSStepSetupWindowsAndConfigMgr
- Remove-CMTSStepSetupWindowsAndConfigMgr
- Set-CMTSStepSetupWindowsAndConfigMgr
安装窗口和 ConfigMgr 的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
客户端程序包
选择“浏览”,然后选择要用于此步骤的 Configuration Manager 客户端安装包。
使用预生产客户端包(如果可用)
如果存在可用的预生产客户端包,并且计算机是试点集合的成员,则任务序列将使用此包而不是生产客户端包。 预生产客户端是在生产环境中用于测试的较新版本。 选择 “浏览”,然后选择要用于此步骤的预生产客户端安装包。
安装属性
任务序列步骤自动指定站点分配和默认配置。 使用此字段指定在安装客户端时要使用的任何其他安装属性。 若要输入多个安装属性,请用空格分隔它们。
指定要在客户端安装期间使用的命令行选项。 例如,输入 /skipprereq: silverlight.exe 以通知 CCMSetup.exe 不要安装 Microsoft Silverlight 必备组件。 有关 CCMSetup.exe 的可用命令行选项的详细信息,请参阅 关于客户端安装属性。
在基于 Internet 的客户端(加入 Microsoft Entra 或使用基于令牌的身份验证)上运行操作系统部署任务序列时,需要在“设置 Windows 和 ConfigMgr”步骤中指定 CCMHOSTNAME 属性。 例如,CCMHOSTNAME=OTTERFALLS.CLOUDAPP.NET/CCM_Proxy_MutualAuth/12345678907927939。
用于设置 Windows 和 ConfigMgr 的选项
注意
请勿在“选项”选项卡上启用出错时继续。如果在此步骤中出现错误,则无论是否启用此设置,任务序列都将失败。
升级操作系统
使用此步骤将早期版本的 Windows 升级到更高版本的 Windows。
此任务序列步骤仅在完整操作系统中运行。 它不能在 Windows PE 中运行。
若要在任务序列编辑器中添加此步骤,请依次选择“添加”、“映像”、“升级操作系统”。
提示
Windows 11 和 Windows 10 媒体包含多个版本。 将任务序列配置为使用 OS 升级包或 OS 映像时,请务必选择 受支持的版本。
在用户安装任务序列之前,使用内容预缓存下载适用的操作系统升级包。 有关详细信息,请参阅 配置预缓存内容。
用于升级操作系统的变量
在此步骤中使用以下任务序列变量:
用于升级操作系统的 Cmdlet
使用以下 PowerShell cmdlet 管理此步骤:
- Get-CMTSStepUpgradeOperatingSystem
- New-CMTSStepUpgradeOperatingSystem
- Remove-CMTSStepUpgradeOperatingSystem
- Set-CMTSStepUpgradeOperatingSystem
升级操作系统的属性
在此步骤的 “属性” 选项卡上,配置本部分所述的设置。
升级程序包
选择此选项可指定要用于升级的 Windows 操作系统升级程序包。
源路径
指定 Windows 安装程序使用的 Windows 媒体的本地或网络路径。 此设置对应于 Windows 安装程序命令行选项 /InstallFrom。
还可以指定变量,如 %MyContentPath% or %DPC01%。 将变量用于源路径时,请在任务序列中较早地设置其值。 例如,使用 “下载包内容 ”步骤指定操作系统升级包位置的变量。 然后,将该变量用作此步骤的源路径。
Edition
在操作系统媒体中指定要用于升级的版本。
产品密钥
指定要应用于升级过程的产品密钥。
安装以下功能更新
从版本 2103 开始,选择此选项可使用功能更新升级客户端的 Windows OS。 此选项使用通过软件更新点同步的内容。 服务 ESD 文件的大小通常小于操作系统升级程序包和 WIM 映像文件。
选择金色星号) (“新建”按钮,然后添加功能更新。
注意
只能添加功能更新。
如果您的环境支持多种语言或体系结构,请将多个功能更新添加到步骤中。 客户端使用第一个未被任何其他已部署更新取代的适用更新。
任务序列中功能更新的用户体验与操作系统升级包中的体验相同。
在升级过程中向 Windows 安装程序提供以下驱动程序内容
在升级过程中将驱动程序添加到目标计算机。 驱动程序必须与 Windows 10 或更高版本兼容。 此设置对应于 Windows 安装程序命令行选项 /InstallDriver。 有关详细信息,请参阅 Windows 安装程序命令行选项。
指定以下选项之一:
驱动程序包:选择 “浏览 ”,然后从列表中选择现有驱动程序包。
暂存内容:选择此选项可指定驱动程序内容的位置。 可以指定本地文件夹、网络路径或任务序列变量。 将变量用于源路径时,请在任务序列中较早地设置其值。 例如,使用 “下载包内容 ”步骤。
提示
如果想让多种类型的硬件具有动态内容:
使用此步骤的多个实例以及硬件类型的条件和单独的驱动程序内容。
使用 “下载包内容” 步骤的多个实例。 将内容放置在公共位置,然后使用 “暂存内容 ”选项。 此方法的优点是任务序列只有一个 升级操作系统 步骤。
注意
此选项与功能更新不兼容。
超时 (分钟)
指定 Configuration Manager 此步骤失败之前的分钟数。 如果 Windows 安装程序停止处理但未终止,则此选项非常有用。
在不启动升级的情况下执行 Windows 安装程序兼容性扫描
在不启动升级过程的情况下执行 Windows 安装程序兼容性扫描。 此设置对应于 Windows 安装程序命令行选项 /Compat ScanOnly。 使用此选项部署整个操作系统升级程序包。
启用此选项时,此步骤不会将 Configuration Manager 客户端置于预配模式。 Windows 安装程序在后台静默运行,而客户端继续正常运行。 有关详细信息,请参阅 预配模式。
安装程序返回扫描的结果退出代码。 下表提供了一些更常见的退出代码:
| 退出代码 | 详细信息 |
|---|---|
| MOSETUP_E_COMPAT_SCANONLY (0xC1900210) | 没有兼容性问题 (“success”) 。 |
| MOSETUP_E_COMPAT_INSTALLREQ_BLOCK (0xC1900208) | 可操作的兼容性问题。 |
| MOSETUP_E_COMPAT_MIGCHOICE_BLOCK (0xC1900204) | 所选迁移选项不可用。 例如,从企业升级到专业。 |
| MOSETUP_E_COMPAT_SYSREQ_BLOCK (0xC1900200) | 不符合 Windows 10 的条件。 |
| MOSETUP_E_COMPAT_INSTALLDISKSPACE_BLOCK (0xC190020E) | 可用磁盘空间不足。 |
有关此参数的详细信息,请参阅 Windows 安装程序 Command-Line 选项。
忽略任何可消除的兼容性消息
指定安装程序完成安装,忽略任何可消除的兼容性消息。 此设置对应于 Windows 安装程序命令行选项 /Compat IgnoreWarning。
使用 Windows 更新动态更新 Windows 安装程序
启用安装程序以执行动态更新操作,例如搜索、下载和安装更新。 此设置对应于 Windows 安装程序命令行选项 /DynamicUpdate。 此设置与 Configuration Manager 软件更新不兼容。 使用独立Windows Server Update Services (WSUS) 或Windows 更新客户端策略管理更新时,请启用此选项。
替代策略并使用默认的 Microsoft 更新
实时临时替代本地策略以运行动态更新操作。 计算机从 Windows 更新获取更新。