Set-CMBootImage

修改 OS 启动映像。

语法

Set-CMBootImage
   [-AddOptionalComponent <IResultObject[]>]
   [-BackgroundBitmapPath <String>]
   [-CopyToPackageShareOnDistributionPoint <Boolean>]
   [-CustomPackageShareName <String>]
   [-DeployFromPxeDistributionPoint <Boolean>]
   [-Description <String>]
   [-DisconnectUserFromDistributionPoint <Boolean>]
   [-DisconnectUserFromDistributionPointMins <UInt32>]
   [-DisconnectUserFromDistributionPointRetryCount <UInt32>]
   [-DistributionPointUpdateSchedule <IResultObject>]
   [-EnableBinaryDeltaReplication <Boolean>]
   [-EnableCommandSupport <Boolean>]
   [-EnablePrestartCommand <Boolean>]
   [-Force]
   [-IncludeFilesForPrestart <Boolean>]
   [-InputLocale <String>]
   -InputObject <IResultObject>
   [-NewName <String>]
   [-PassThru]
   [-Path <String>]
   [-PersistContentInCache <Boolean>]
   [-PrestageBehavior <PrestageBehavior>]
   [-PrestartCommandLine <String>]
   [-PrestartIncludeFilesDirectory <String>]
   [-Priority <Priority>]
   [-Reload]
   [-RemoveOptionalComponent <IResultObject[]>]
   [-ScratchSpace <UInt32>]
   [-SendToPreferredDistributionPoint <Boolean>]
   [-Version <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-CMBootImage
   [-AddOptionalComponent <IResultObject[]>]
   [-BackgroundBitmapPath <String>]
   [-CopyToPackageShareOnDistributionPoint <Boolean>]
   [-CustomPackageShareName <String>]
   [-DeployFromPxeDistributionPoint <Boolean>]
   [-Description <String>]
   [-DisconnectUserFromDistributionPoint <Boolean>]
   [-DisconnectUserFromDistributionPointMins <UInt32>]
   [-DisconnectUserFromDistributionPointRetryCount <UInt32>]
   [-DistributionPointUpdateSchedule <IResultObject>]
   [-EnableBinaryDeltaReplication <Boolean>]
   [-EnableCommandSupport <Boolean>]
   [-EnablePrestartCommand <Boolean>]
   [-Force]
   -Id <String>
   [-IncludeFilesForPrestart <Boolean>]
   [-InputLocale <String>]
   [-NewName <String>]
   [-PassThru]
   [-Path <String>]
   [-PersistContentInCache <Boolean>]
   [-PrestageBehavior <PrestageBehavior>]
   [-PrestartCommandLine <String>]
   [-PrestartIncludeFilesDirectory <String>]
   [-Priority <Priority>]
   [-Reload]
   [-RemoveOptionalComponent <IResultObject[]>]
   [-ScratchSpace <UInt32>]
   [-SendToPreferredDistributionPoint <Boolean>]
   [-Version <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-CMBootImage
   [-AddOptionalComponent <IResultObject[]>]
   [-BackgroundBitmapPath <String>]
   [-CopyToPackageShareOnDistributionPoint <Boolean>]
   [-CustomPackageShareName <String>]
   [-DeployFromPxeDistributionPoint <Boolean>]
   [-Description <String>]
   [-DisconnectUserFromDistributionPoint <Boolean>]
   [-DisconnectUserFromDistributionPointMins <UInt32>]
   [-DisconnectUserFromDistributionPointRetryCount <UInt32>]
   [-DistributionPointUpdateSchedule <IResultObject>]
   [-EnableBinaryDeltaReplication <Boolean>]
   [-EnableCommandSupport <Boolean>]
   [-EnablePrestartCommand <Boolean>]
   [-Force]
   [-IncludeFilesForPrestart <Boolean>]
   [-InputLocale <String>]
   -Name <String>
   [-NewName <String>]
   [-PassThru]
   [-Path <String>]
   [-PersistContentInCache <Boolean>]
   [-PrestageBehavior <PrestageBehavior>]
   [-PrestartCommandLine <String>]
   [-PrestartIncludeFilesDirectory <String>]
   [-Priority <Priority>]
   [-Reload]
   [-RemoveOptionalComponent <IResultObject[]>]
   [-ScratchSpace <UInt32>]
   [-SendToPreferredDistributionPoint <Boolean>]
   [-Version <String>]
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

使用此 cmdlet 修改 OS 启动映像。 启动映像是 Windows 预安装环境 (Windows PE) 映像,可在其中启动客户端计算机,然后再安装 OS。

可以将设备驱动程序添加到启动映像或更改其属性。 必须先将驱动程序导入 Configuration Manager 驱动程序目录并启用它,然后才能添加新的设备驱动程序。

每个版本的 Configuration Manager 都支持特定版本的 Windows 评估和部署工具包 (Windows ADK) 。 当映像基于受支持的 Windows ADK 版本中的 Windows PE 版本时,可以对其进行服务或自定义。

有关详细信息,请参阅 使用 Configuration Manager 管理启动映像

注意

从 Configuration Manager 站点驱动器运行 Configuration Manager cmdlet,例如 PS XYZ:\>。 有关详细信息,请参阅 入门

示例

示例 1:重命名启动映像

此命令按程序包 ID 获取启动映像,然后将其重命名。

Set-CMBootimage -Id "CM100004" -NewName "Custom boot image"

示例 2:设置描述性属性

此命令按名称获取启动映像,然后向其添加版本和说明。

Set-CMBootImage -Name "Custom boot image (x64)" -Version "Contoso v2.1" -Description "Managed by jqpublic"

示例 3:设置键盘布局

以下示例将启动映像的默认键盘布局设置为 俄语 (俄罗斯) 语言。 它通过其 ID 标识启动映像。

Set-CMBootimage -Id "CM100004" -InputLocale "ru-ru"

示例 4:添加可选组件

此示例获取 .NET 和 PowerShell 可选组件,然后将其添加到启动映像。

$netfxOC = Get-CMWinPEOptionalComponentInfo -Architecture 'x64' -Name 'WinPE-NetFX' -LanguageId 1033
$pwshOC = Get-CMWinPEOptionalComponentInfo -Architecture 'x64' -Name 'WinPE-PowerShell' -LanguageId 1033
$OCs = @($netfxOC, $pwshOC)

Set-CMBootImage -Id 'XYZ00556' -AddOptionalComponent $OCs

参数

-AddOptionalComponent

指定要添加到启动映像的可选组件对象的数组。 若要获取此对象,请使用 Get-CMWinPEOptionalComponentInfo cmdlet。

通常使用以下组件:

  • Microsoft .NET (WinPE-NetFX) :此组件是 PowerShell 的先决条件。 它是较大的可选组件之一。
  • Windows PowerShell (WinPE-PowerShell) :此组件需要 .NET,并添加了有限的 PowerShell 支持。 如果在任务序列的 WinPE 阶段运行自定义 PowerShell 脚本,请添加此组件。 其他 PowerShell cmdlet 可能需要其他组件。
  • HTML (WinPE-HTA) :如果在任务序列的 WinPE 阶段运行自定义 HTML 应用程序,请添加此组件。

有关详细信息,请参阅 管理启动映像 - 可选组件

类型:IResultObject[]
别名:AddOptionalComponents
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-BackgroundBitmapPath

指定要在 Windows PE 中使用的自定义背景图像文件的网络文件路径。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

类型:SwitchParameter
别名:cf
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

-CopyToPackageShareOnDistributionPoint

客户端始终可以从分发点下载启动映像。 如果将此参数设置为 $true,则站点会通过分发点上的命名网络共享来提供该参数。 使用 CustomPackageShareName 指定自定义共享名称。

启用此选项后,分发点上需要更多空间。 它适用于将此启动映像分发到的所有分发点。

类型:Boolean
别名:CopyToPackageShareOnDistributionPoints
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-CustomPackageShareName

如果启用 CopyToPackageShareOnDistributionPoint,则可以使用此参数自定义共享名称。 最大长度为 127 个字符,不能包括以下任何字符: " / [ ] : | < > + = ; , ? *。 可以指定共享名称和文件夹名称,但每个名称的最大数目为 80 个字符。 例如,ShareName\FolderName

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DeployFromPxeDistributionPoint

将此参数设置为 $true ,使此启动映像可从已启用 PXE 的分发点中使用。 有关详细信息,请参阅 使用 PXE 通过网络部署 Windows

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Description

指定启动映像的可选说明,以帮助你识别它。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DisableWildcardHandling

此参数将通配符视为文本字符值。 不能将其与 ForceWildcardHandling 组合使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DisconnectUserFromDistributionPoint

此选项已弃用。 它设置启动映像的 ForcedDisconnectEnabled 属性。

类型:Boolean
别名:DisconnectUsersFromDistributionPoints
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DisconnectUserFromDistributionPointMins

此选项已弃用。 它设置启动映像的 ForcedDisconnectDelay 属性。

类型:UInt32
别名:DisconnectUsersFromDistributionPointsMinutes
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DisconnectUserFromDistributionPointRetryCount

此选项已弃用。 它设置启动映像的 ForcedDisconnectNumRetries 属性。

类型:UInt32
别名:DisconnectUsersFromDistributionPointsRetries
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-DistributionPointUpdateSchedule

使用此参数按计划更新分发点。 若要获取计划对象,请使用 New-CMSchedule cmdlet。

类型:IResultObject
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-EnableBinaryDeltaReplication

将此参数设置为 $true 以启用 BDR) (二进制差异复制。 有关详细信息,请参阅 Configuration Manager 中内容管理的基本概念

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-EnableCommandSupport

仅在非生产测试环境中,可以将此参数设置为 $true 以启用命令支持。 当设备启动到此映像时,可以按 F8 打开管理命令提示符。 此选项可用于在测试部署时进行故障排除。 出于安全考虑,不建议在生产部署中使用此设置。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-EnablePrestartCommand

将此参数设置为 $true 以启用预启动命令。 此命令行在任务序列启动之前运行。

此外配置以下参数: IncludeFilesForPrestartPrestartCommandLinePrestartIncludeFilesDirectory

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Force

运行命令而不要求确认。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ForceWildcardHandling

此参数处理通配符,并可能导致意外行为, (不建议) 。 不能将其与 DisableWildcardHandling 组合使用。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Id

指定要配置的启动映像 ID。 此值是标准包 ID,例如: XYZ00002

类型:String
别名:PackageId
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-IncludeFilesForPrestart

如果启用 EnablePrestartCommand,则如果 prestart 命令需要运行其他文件,请使用此参数。 然后使用 PrestartIncludeFilesDirectory 参数指定要包含的文件的位置。

例如,如果要运行批处理脚本,请使用此选项来包含脚本文件。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-InputLocale

使用此参数为启动映像配置默认键盘布局。 指定 语言标记。 例如,若要将输入区域设置设置为俄语 (俄罗斯) ,请指定字符串 ru-ru。 有关详细信息,请参阅 [MS-LCID]:Windows 语言代码标识符 (LCID) 参考

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-InputObject

指定要配置的启动映像对象。 若要获取此对象,请使用 Get-CMBootImage cmdlet。

类型:IResultObject
Position:Named
默认值:None
必需:True
接受管道输入:True
接受通配符:False

-Name

指定要配置的启动映像的名称。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-NewName

为启动映像指定新名称。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-PassThru

添加此参数可返回一个对象,该对象表示正在使用的项。 默认情况下,此 cmdlet 可能不会生成任何输出。

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Path

指定此启动映像使用的 Windows PE 映像的网络路径。 无法更改默认启动映像的路径。

类型:String
别名:ImagePath
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-PersistContentInCache

如果不希望此包的内容在客户端缓存之外过期,以便为其他内容腾出空间,请将此参数设置为 $true 以将其保留在客户端缓存中。

类型:Boolean
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-PrestageBehavior

为预留内容启用分发点时指定行为:

  • ManualCopy:手动将此包中的内容复制到分发点
  • DownloadDelta:仅将内容更改下载到分发点
  • OnDemand:将包分配到分发点时自动下载内容

有关详细信息,请参阅 使用预留内容

类型:PrestageBehavior
接受的值:ManualCopy, DownloadDelta, OnDemand
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-PrestartCommandLine

如果启用 EnablePrestartCommand,请使用此参数指定要运行的命令行。 最大长度为 4096 个字符。

如果命令行需要不在 Windows PE 中的文件,请使用 IncludeFilesForPrestartPrestartIncludeFilesDirectory 参数。

类型:String
别名:CommandLine
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-PrestartIncludeFilesDirectory

如果启用 EnablePrestartCommandIncludeFilesForPrestart,请使用此参数指定要包含在启动映像中的文件的网络路径。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Priority

指定站点将内容发送到其他站点和此站点中的分发点的顺序。

网站在优先级为中等或低优先级的包之前发送高优先级内容。 优先级相等的包按创建顺序发送。

类型:Priority
接受的值:High, Medium, Low
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Reload

适用于版本 2006 及更高版本。 如果启动映像中的 Windows ADK 组件版本已过期,请添加此参数以使用 Windows ADK 中的当前 Windows PE 版本重新加载启动映像。 有关详细信息,请参阅 使用启动映像更新分发点

类型:SwitchParameter
别名:ReloadImage
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-RemoveOptionalComponent

指定要从启动映像中删除的可选组件对象的数组。 若要获取此对象,请使用 Get-CMWinPEOptionalComponentInfo cmdlet。

请勿删除 Configuration Manager 所需的以下组件:

  • 编写脚本 (WinPE-Scripting)
  • 启动 (WinPE-SecureStartup)
  • 网络 (WinPE-WDS-Tools)
  • 编写 (WinPE-WMI) 的脚本
类型:IResultObject[]
别名:RemoveOptionalComponents
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ScratchSpace

配置 Windows PE 暂存空间,这是 WinPE 使用的临时存储 (RAM 驱动器) 。 例如,当应用程序在 WinPE 中运行并且需要写入临时文件时,WinPE 会将文件重定向到内存中的暂存空间,以模拟存在硬盘。 默认情况下,对于 RAM 超过 1 GB 的设备,此量为 512 MB,否则默认值为 32 MB。

类型:UInt32
接受的值:32, 64, 128, 256, 512
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-SendToPreferredDistributionPoint

如果要启用首选分发点的按需内容分发,请将此参数设置为 $true。 启用此设置时,如果客户端请求包的内容,并且内容在任何分发点上都不可用,则管理点将分发内容。 有关详细信息,请参阅 按需内容分发

类型:Boolean
别名:SendToPreferredDistributionPoints
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Version

指定启动映像的版本。 此值不是 OS 版本,而是你管理的字符串。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-WhatIf

显示在 cmdlet 运行时发生的情况。 cmdlet 不会运行。

类型:SwitchParameter
别名:wi
Position:Named
默认值:False
必需:False
接受管道输入:False
接受通配符:False

输入

Microsoft.ConfigurationManagement.ManagementProvider.IResultObject

输出

System.Object