适用于现有设备的 Windows Autopilot 部署

适用于:

  • Windows 11
  • Windows 10

使用 Windows Autopilot 的新式桌面部署可帮助你轻松地将最新版本的 Windows 部署到现有设备。 可以自动安装工作所需的应用。 如果使用 OneDrive for Business 管理 Windows 用户数据,则数据会同步,以便用户可以立即恢复工作。

面向现有设备的 Windows Autopilot允许使用单个本机Configuration Manager任务序列为 Autopilot 用户驱动模式重置映像和预配 Windows 设备。 现有设备可以加入本地域。 最终结果是将Windows 10或Windows 11设备联接到 Azure Active Directory (Azure AD) 或 Active Directory (混合 Azure AD 联接) 。

注意

面向现有设备的 Windows Autopilot 的 JSON 文件仅支持用户驱动的 Azure AD 和用户驱动的混合 Azure AD Autopilot 配置文件。 JSON 文件不支持自部署和预预配 Autopilot 配置文件,因为这些方案需要 TPM 证明。

但是,在面向现有设备的 Windows Autopilot部署期间,如果满足以下条件:

  • 在部署开始之前,设备已是 Windows Autopilot 设备
  • 设备分配有 Autopilot 配置文件

则分配的 Autopilot 配置文件优先于任务序列安装的 JSON 文件。 在此方案中,如果分配的 Autopilot 配置文件是自部署或预预配 Autopilot 配置文件,则支持自部署和预预配方案。

提示

对现有设备使用 Autopilot 可用作将现有混合 Azure AD 设备转换为 Azure AD 设备的方法。 使用 Autopilot 配置文件中的所有 目标设备转换为 Autopilot 设置不会自动将分配组 () 的现有混合 Azure AD 设备转换为 Azure AD 设备。 此设置仅注册 Autopilot 服务的已分配组中的设备 () 。

先决条件

  • 当前支持的 Microsoft Configuration Manager current branch 版本。
  • 已分配Microsoft Intune许可证。
  • Azure AD Premium。
  • 支持的 Windows 10 版本或Windows 11作为 OS 映像导入到 Configuration Manager。

注意

通常,目标设备不会注册到 Windows Autopilot 服务。 如果设备已注册,则分配的配置文件优先。 仅当联机配置文件超时时,现有设备的 Autopilot 配置文件才适用。

配置“注册状态”页 (可选)

如果需要,可以使用 Intune 为 Autopilot 设置注册状态页 (ESP) 。

  1. 打开Microsoft Intune管理中心

  2. 转到 “设备 > 注册设备” > “Windows 注册 > 状态”页“设置注册状态”页

    Intune中的注册状态页策略页。

  3. 转到 Azure Active Directory > 移动性 (MDM 和 MAM) > Microsoft Intune启用 Windows 自动注册。 为部分或所有用户配置 MDM 用户范围。

    在 Azure 中配置 MDM 注册。

安装所需的模块

提示

若要在运行 Windows Server 2012/2012 R2 的计算机上运行以下命令,请先下载并安装Windows Management Framework

  1. 在连接 Internet 的 Windows 电脑或服务器上,打开提升的Windows PowerShell命令窗口。

  2. 输入以下命令以安装和导入所需的模块:

    Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
    Install-Module AzureAD -Force
    Install-Module Microsoft.Graph.Intune -Force
    Install-Module WindowsAutopilotIntune -Force
    
    Import-Module AzureAD
    Import-Module Microsoft.Graph.Intune
    Import-Module WindowsAutopilotIntune
    
  3. 输入以下命令并提供Intune管理凭据:

    确保指定的用户帐户具有足够的管理权限。

    Connect-MSGraph
    

    Windows 使用标准 Azure AD 表单请求帐户的用户和密码。 键入用户名和密码,然后选择“登录”。

    用于登录 Azure AD 帐户的 Windows 窗体。

    第一次在设备上使用Intune Graph API 时,系统会提示启用Microsoft Intune PowerShell 读取和写入权限。 若要启用这些权限,请选择“ 代表或组织同意” ,然后选择“ 接受”。

获取现有设备的 Autopilot 配置文件

获取 Intune 租户中可用的所有 Autopilot 配置文件,并将它们以 JSON 格式显示:

Get-AutopilotProfile | ConvertTo-AutopilotConfigurationJSON

请参阅以下示例输出:

PS C:\> Get-AutopilotProfile | ConvertTo-AutopilotConfigurationJSON
{
    "CloudAssignedTenantId": "1537de22-988c-4e93-b8a5-83890f34a69b",
    "CloudAssignedForcedEnrollment": 1,
    "Version": 2049,
    "Comment_File": "Profile Autopilot Profile",
    "CloudAssignedAadServerData": "{\"ZeroTouchConfig\":{\"CloudAssignedTenantUpn\":\"\",\"ForcedEnrollment\":1,\"CloudAssignedTenantDomain\":\"M365x373186.onmicrosoft.com\"}}",
    "CloudAssignedTenantDomain": "M365x373186.onmicrosoft.com",
    "CloudAssignedDomainJoinMethod": 0,
    "CloudAssignedOobeConfig": 28,
    "ZtdCorrelationId": "7F9E6025-1E13-45F3-BF82-A3E8C5B59EAC"
}

每个配置文件封装在大括号 ({ }) 内。 上一个示例显示单个配置文件。

JSON 文件属性

版本

(数字,可选)

标识 JSON 文件格式的版本号。

CloudAssignedTenantId

(GUID,必需)

应使用的 Azure AD 租户 ID。 此属性是租户的 GUID,可在租户的属性中找到。 该值不应包含大括号。

CloudAssignedTenantDomain

(字符串,必需)

应使用的 Azure AD 租户名称。 例如:tenant.onmicrosoft.com

CloudAssignedOobeConfig

(编号,必需)

此属性是一个位图,显示配置了哪些 Autopilot 设置。

  • 1:SkipCortanaOptIn
  • 2:OobeUserNotLocalAdmin
  • 4:SkipExpressSettings
  • 8:SkipOemRegistration
  • 16:SkipEula

CloudAssignedDomainJoinMethod

(编号,必需)

此属性指定设备是否应加入 Azure AD 或 Active Directory (混合 Azure AD 联接) 。

  • 0:已加入 Azure AD
  • 1:已加入混合 Azure AD

CloudAssignedForcedEnrollment

(编号,必需)

指定设备应需要 Azure AD 联接和 MDM 注册。

  • 0:不需要
  • 1:必需

ZtdCorrelationId

(GUID,必需)

在注册过程中提供给Intune的唯一 GUID (没有大括号) 。 此 ID 作为 包含在注册消息中 OfflineAutopilotEnrollmentCorrelator。 仅当通过脱机注册使用零接触预配注册的设备上进行注册时,此属性才存在。

CloudAssignedAadServerData

(编码的 JSON 字符串,需要)

用于品牌打造的嵌入式 JSON 字符串。 它要求启用 Azure AD 组织品牌打造。

例如:

"CloudAssignedAadServerData": "{\"ZeroTouchConfig\":{\"CloudAssignedTenantUpn\":\"\",\"CloudAssignedTenantDomain\":\"tenant.onmicrosoft.com\"}}

CloudAssignedDeviceName

(字符串,可选)

自动分配给计算机的名称。 此名称遵循Intune Autopilot 配置文件中配置的命名模式约定。 还可以指定要使用的显式名称。

创建 JSON 文件

将 Autopilot 配置文件保存为 ASCII 或 ANSI 格式的 JSON 文件。 Windows PowerShell默认为 Unicode 格式。 因此,如果将命令的输出重定向到文件,还要指定文件格式。 以下 PowerShell 示例以 ASCII 格式保存文件,并为当前用户桌面上的每个配置文件创建一个目录:

Connect-MSGraph
$AutopilotProfile = Get-AutopilotProfile
$AutopilotProfile | ForEach-Object {
  New-Item -ItemType Directory -Path "~\Desktop\$($_.displayName)"
  $_ | ConvertTo-AutopilotConfigurationJSON | Set-Content -Encoding Ascii "~\Desktop\$($_.displayName)\AutopilotConfigurationFile.json"
}

提示

如果使用 PowerShell cmdlet Out-File 将 JSON 输出重定向到文件,则默认使用 Unicode 编码。 此 cmdlet 还可能会截断长行。 将 Set-Content cmdlet 与 参数一起使用 -Encoding ASCII 可设置正确的文本编码。

重要

文件名必须 AutopilotConfigurationFile.json 编码为 ASCII 或 ANSI。

还可以将配置文件保存到文本文件并在记事本中编辑。 在记事本中,选择“ 另存为”时,选择“保存类型: 所有文件”,然后选择 “ANSI ”作为 “编码”。

在记事本中另存为 ANSI 编码。

保存文件后,将其移动到 Microsoft Configuration Manager 包源的位置。

重要

配置文件只能包含一个配置文件。 可以使用多个 JSON 配置文件,但每个配置文件都必须命名为 AutopilotConfigurationFile.json。 此要求是 OOBE 遵循 Autopilot 体验。 若要使用多个 Autopilot 配置文件,请创建单独的Configuration Manager包。

如果使用 Unicode 或 UTF-8 编码保存文件,或者使用其他文件名保存该文件,则 Windows OOBE 不会遵循 Autopilot 体验。

创建包含 JSON 文件的包

  1. 在Configuration Manager控制台中,转到“软件库”工作区,展开“应用程序管理”,然后选择“包”节点。

  2. 在功能区上,选择“ 创建包”。

  3. 在“创建包和程序向导”中,输入包的以下详细信息:

    • 名称现有设备的 Autopilot 配置
    • 选择“此包包含源文件
    • 源文件夹:指定包含文件的 AutopilotConfigurationFile.json UNC 网络路径

    有关详细信息,请参阅 Configuration Manager 中的包和程序

  4. 对于程序,请选择“程序类型不创建程序

  5. 完成该向导。

注意

如果以后在 Intune 中更改用户驱动的 Autopilot 配置文件设置,请确保更新 JSON 文件。 然后重新分发关联的Configuration Manager包。

创建目标集合

注意

还可以选择重用现有集合。

  1. 在Configuration Manager控制台中,转到“资产和符合性”工作区,然后选择“设备集合”节点。

  2. 在功能区上,选择“ 创建”,然后选择“ 创建设备集合”。

  3. 在“创建设备集合向导”中,输入以下 常规 详细信息:

    • 名称现有设备集合的 Autopilot

    • 注释:添加可选注释以进一步描述集合

    • 限制集合所有系统

      注意

      可以选择对限制集合使用备用集合。 要升级的设备必须运行所选集合中的 Configuration Manager 客户端。

  4. “成员身份规则 ”页上,选择“ 添加规则”。 指定直接或基于查询的集合规则,将目标 Windows 设备添加到新集合。

    例如,如果要擦除和重新加载的计算机的主机名是 PC-01 并且你想要使用 Name 作为 属性:

    1. 选择 “添加规则”,选择“ 直接规则 ”以打开“创建直接成员身份规则向导”,然后在“欢迎”页上选择“ 下一步 ”。

    2. “搜索资源 ”页上,输入 “PC-01 ”作为 “值”。

      输入 PC-01 作为要查找集合直接成员身份规则的名称。

    3. 选择“下一步”,然后在“资源”中选择“PC-01”。

      选择“PC-01”作为要添加到集合的资源。

  5. 使用默认设置完成向导。

有关详细信息,请参阅如何在 Configuration Manager 中创建集合

创建任务序列

  1. 在Configuration Manager控制台中,转到“软件库”工作区,展开“操作系统”,然后选择“任务序列”节点。

  2. “主页 ”功能区上,选择“ 创建任务序列”。

  3. “创建新任务序列”页上,选择“部署面向现有设备的 Windows Autopilot” 选项。

  4. “任务序列信息 ”页上,指定以下信息:

    • 任务序列的名称。 例如, 现有设备的 Autopilot
    • (可选)添加说明以更好地描述任务序列。
    • 选择启动映像。 有关支持的启动映像版本的详细信息,请参阅支持 Configuration Manager 中的 Windows ADK
  5. “安装 Windows ”页上,选择“Windows 映像”包。 然后配置以下设置:

    • 图像索引:根据组织的要求,选择“企业”、“教育”或“专业”。

    • 安装操作系统之前,启用“分区和格式化目标计算机”选项。

    • 配置用于 Bitlocker 的任务序列:如果启用此选项,任务序列将包括启用 BitLocker 所需的步骤。

    • 产品密钥:如果需要为 Windows 激活指定产品密钥,请在此处输入它。

    • 选择以下选项之一,在 Windows 中配置本地管理员帐户:

      • 随机生成本地管理员密码,并在所有支持平台上禁用帐户, (建议)
      • 启用帐户并指定本地管理员密码
  6. “配置网络 ”页上,选择 “加入工作组”选项。

    重要

    现有设备的 Autopilot 任务序列运行 准备 Windows 以便捕获 步骤,该步骤使用 Windows 系统准备工具 (Sysprep) 。 如果设备已加入域,此操作将失败。

    Sysprep 使用 /Generalize 参数运行,该参数在 Windows 10 版本 1909 上会删除 Autopilot 配置文件。 然后,设备启动到 OOBE 阶段,而不是 Autopilot。 若要解决此问题,请参阅 Windows Autopilot - 已知问题:面向现有设备的 Windows Autopilot不适用于Windows 10版本 1903 或 1909

  7. “安装配置管理器 ”页上,为环境添加任何必要的安装属性。

    提示

    如果 Sysprep 运行之前在任务序列期间需要Configuration Manager客户端组件,则任务序列才需要此信息。 例如,安装软件更新或应用程序。 如果不执行这些操作,则不需要客户端。 在任务序列运行 Sysprep 之前卸载它。

  8. 包括更新 ”页默认选择“ 不安装任何软件更新”选项。

    提示

    使用脱机映像服务使映像与最新的 Windows 累积更新保持最新。 有关详细信息,请参阅 将软件更新应用于映像

  9. “安装应用程序 ”页上,可以选择在任务序列期间安装的应用程序。 但是,Microsoft 建议在此方案中镜像签名映像方法。 使用 Autopilot 预配设备后,应用Microsoft Intune或Configuration Manager共同管理的所有应用程序和配置。 此过程在接收新设备的用户与使用面向现有设备的 Windows Autopilot的用户之间提供一致的体验。

  10. 在“ 系统准备 ”页上,选择包含 Autopilot 配置文件的包。 默认情况下,任务序列在运行 Windows Sysprep 后重启计算机。 还可以选择 “在此任务序列完成后关闭计算机”选项。 此选项允许你准备设备,然后将其交付给用户,以实现一致的 Autopilot 体验。

  11. 完成该向导。

面向现有设备的 Windows Autopilot任务序列会导致设备加入 Azure AD。

有关创建任务序列的详细信息(包括有关其他向导选项的信息),请参阅 创建任务序列以安装 OS

如果编辑任务序列,则与应用现有 OS 映像的默认任务序列类似。 此任务序列包括以下额外步骤:

  • 应用 Windows Autopilot 配置:此步骤应用指定包中的 Autopilot 配置文件。 这不是一种新的步骤类型,它是 复制文件的“运行命令行 ”步骤。

  • 准备用于捕获的 Windows:此步骤运行 Windows Sysprep,并具有 在运行此操作后关闭计算机的设置。 有关详细信息,请参阅 准备用于捕获的 Windows

有关编辑任务序列的详细信息,请参阅 使用任务序列编辑器任务序列步骤

注意

“准备 Windows 进行捕获”步骤会AutopilotConfigurationFile.json删除文件。 有关详细信息和解决方法,请参阅 Windows Autopilot - 已知问题:面向现有设备的 Windows Autopilot不适用于Windows 10版本 1903 或 1909

若要确保在升级Windows 10之前备份用户的数据,请使用OneDrive for Business已知文件夹移动

将内容分发到分发点

接下来,将任务序列所需的所有内容分发到分发点。

  1. 选择 “现有设备的 Autopilot ”任务序列,并在功能区中选择“ 分发内容”。

  2. “指定内容目标 ”页上,选择“ 添加 ”以指定 分发点分发点组

  3. 指定允许设备获取内容的内容目标。

  4. 完成指定内容分发后,请完成向导。

有关详细信息,请参阅 管理任务序列以自动执行任务

部署 Autopilot 任务序列

  1. 选择 “现有设备的 Autopilot ”任务序列,并在功能区中选择“ 部署”。

  2. 在“部署软件向导”中,指定以下详细信息:

    • 常规

      • 任务序列现有设备的 Autopilot

      • 集合现有设备的 Autopilot 集合

    • 部署设置

      • 操作安装

      • 目的可用。 可以选择选择 “必需 ”而不是“ 可用”。 在测试期间,不建议使用必需的用途。

      • 对以下项可用仅Configuration Manager客户端

        注意

        在此处选择与测试上下文相关的选项。 如果目标客户端未安装 Configuration Manager 代理或 Windows,则必须选择包含 PXE 或启动媒体的选项。

    • 计划

      • 设置此部署可用的时间
    • 用户体验

      • 选择“显示任务序列进度
    • 分发点

      • 部署选项运行中的任务序列需要时在本地下载内容
  3. 完成该向导。

完成部署过程

  1. 在目标 Windows 设备上,转到“ 开始 ”菜单,键入 Software Center并打开它。

  2. 在“软件库”的“ 操作系统”下, 为现有设备选择“Autopilot”,然后选择“ 安装”。 例如:

    软件中心中现有设备的 Autopilot 任务序列。

    软件中心通知以确认要升级此计算机上的 OS。

任务序列运行并执行以下操作:

  1. 下载内容

  2. 重启设备

  3. 格式化驱动器

  4. 从指定的 OS 映像安装 Windows

    应用映像的任务序列安装进度。

  5. 准备 Autopilot

    运行 sysprep 的任务序列安装进度。

  6. 任务序列完成后,设备启动到 OOBE,以获取 Autopilot 体验:

    Autopilot 体验提示用户帐户。

注意

如果需要将设备加入 Active Directory 以用于混合 Azure AD 加入方案,请创建 域加入 设备配置文件。 将配置文件定位到 “所有设备”,因为计算机没有 Azure AD 设备对象可以执行基于组的目标。 有关详细信息,请参阅 混合 Azure Active Directory 加入的用户驱动模式

为 Windows Autopilot 注册设备

使用 Autopilot 预配的设备仅在首次启动时接收引导式 OOBE Autopilot 体验。

在现有设备上更新 Windows 后,请确保注册设备,以便在电脑重置时具有 Autopilot 体验。 可以使用 Autopilot 配置文件中分配给设备所属组的 Autopilot 配置文件中的“ 将所有目标设备转换为 Autopilot ”设置,为设备启用自动注册。 有关详细信息,请参阅创建 Autopilot 部署配置文件

另请参阅 将设备添加到 Windows Autopilot

如何加快部署过程

若要从部署过程中删除大约 20 分钟,请参阅 Michael Niehaus 的博客,其中包含有关加速面向现有设备的 Windows Autopilot的说明。