DPM 安装失败,并生成错误 4323:无法添加成员

本文可帮助你修复安装 System Center Data Protection Manager 时 DPM 安装程序无法将用户添加到本地组 错误消息的问题。

原始产品版本: System Center Data Protection Manager
原始 KB 编号: 2930276

症状

首次或升级时尝试安装 System Center Data Protection Manager 时,安装失败,并收到以下错误消息:

错误:DPM 安装程序无法将用户添加到本地组。 查看错误详细信息,采取适当的操作,然后再次运行 DPM 安装程序。
ID:4323。 详细信息:无法在本地组添加或删除成员,因为该成员不存在

还可以在 Setup.log 文件中看到类似于以下内容的条目:

[2013/10/23 上午 11:07:42]信息:启动配置。
[2013/10/23 上午 11:07:42]信息:在 machine:DPMServerName 标志 restart:False 上启动 Service:MSSQL$MSDPM<版本>
[2013/10/23 上午 11:07:42]信息:在 machine:DPMServerName 标志 restart:False 上启动 Service:SQLAgent$MSDPM<版本>
[2013/10/23 上午 11:07:42]信息:在 machine:DPMServerName 标志 restart:False 上启动 Service:ReportServer$MSDPM<版本>
[2013/10/23 上午 11:07:42]信息:创建包含 sql 代理帐户信息的注册表
[2013/10/23 上午 11:07:42]信息:查询 WMI 命名空间:\\DPMServerName\root\cimv2 以获取查询: SELECT * FROM Win32_Service WHERE Name='SQLAgent$MSDPM<version>'
[2013/10/23 上午 11:07:42]信息:Sql 代理帐户名称 = contoso-old\DPMServerName$
[2013/10/23 上午 11:07:42]信息:创建包含触发器作业路径信息的注册表
[2013/10/23 上午 11:07:42]数据:TriggerJobPath = D:\Microsoft System Center <version>\DPM\DPM\bin\
[2013/10/23 上午 11:07:42]信息:将用户:contoso-old\DPMServerName$ 添加到本地组:服务器上的分布式 COM 用户:DPMServerName
[2013/10/23 11:07:42 AM] * 异常:=> DPM 安装程序无法将用户添加到本地组。查看错误详细信息,采取适当的操作,然后再次运行 DPM 安装程序。Microsoft.Internal.EnterpriseStorage.Dls.Setup.Exceptions.BackEndErrorException:引发了类型为“Microsoft.Internal.EnterpriseStorage.Dls.Setup.Exceptions.BackEndErrorException”的异常。
at Microsoft.Internal.EnterpriseStorage.Dls.Setup.NativeConfigHelper.AddAccountToLocalGroup (String accountName、String localGroupName、String machineName)
at Microsoft.Internal.EnterpriseStorage.Dls.Setup.Wizard.RemoteDatabaseConfiguration.AddSqlAgentAccountToLocalGroups (String sqlAgentAccountName)
at Microsoft.Internal.EnterpriseStorage.Dls.Setup.Wizard.BackEnd.MachineSpecificConfiguration (Boolean existingDB、Boolean upgrade、Boolean isRemoteDb、String sqlServerMachineName、String sqlInstanceName、Boolean isRemoteReporting、String reportingMachineName、String reportingInstanceName)
at Microsoft.Internal.EnterpriseStorage.Dls.Setup.Wizard.BackEnd.Configure (Boolean existingDB、Boolean upgrade、String databaseLocation、String sqlServerMachineName、String sqlInstanceName、String reportingMachineName、String reportingInstanceName、Boolean oemSetup)
at Microsoft.Internal.EnterpriseStorage.Dls.Setup.Wizard.DpmInstaller.ConfigurePostMsiUpgrade () microsoft.Internal.EnterpriseStorage.Dls.Setup.Wizard.ProgressPage.UpgradeDpm ()
at Microsoft.Internal.EnterpriseStorage.Dls.Setup.Wizard.ProgressPage.InstallerThreadEntry () *** Mojito 错误为:AddUserToLocalGroupFailed;1387;WindowsAPI
[2013/10/23 11:07:44 AM] *** 错误:DPM 安装程序无法将用户添加到本地组。 查看错误详细信息,采取适当的操作,然后再次运行 DPM 安装程序。
ID:4323。 详细信息:无法在本地组添加或删除成员,因为该成员不存在
[2013/10/23 上午 11:07:44]信息:DPM 升级失败。
有关更多详细信息,请单击“错误”选项卡。
若要排查此问题,请参阅 http://go.microsoft.com/fwlink/?LinkID=164487

原因

如果环境具有不连续的命名空间, (即域) 具有不同的 NetBIOS 和 DNS 名称,则可能会出现此问题。 例如,假设域的 NetBIOS 名称 为 contoso.com,DNS 名称 为 contoso-old.com。 在 Windows UI 中添加用户时,它们以 contoso\ComputerName 的格式显示。 但是,在错误日志中,你注意到有人尝试添加采用 contoso-old\ComputerName 格式的计算机帐户。

解决方法:升级

  1. 创建名为 MICROSOFT$DPM$Acct 的新域用户帐户。 如果无法创建新的域帐户,可以使用标准用户帐户。

  2. 找到 DPMDB 数据库文件,并确保在步骤 1 中标识或创建的新帐户对该目录具有完全权限。

  3. 更改 MSSQL$MSDPM<版本>SQLAgent$MSDPM<版本> 服务,以便在它们启动时使用步骤 1 中的新域用户帐户。

注意

建议使用 Microsoft SQL Server 配置管理器,因为它提供了进行此更改的最简单方法。

升级安装现在应该会成功完成。

升级完成后,还原步骤 3 中提到的两个服务,以便它们开始使用本地帐户指定 (MICROSOFT$DPM$Acct) 。

解决方法:全新安装

  1. 创建名为 MICROSOFT$DPM$Acct 的新域用户帐户。

  2. 在具有相同名称 MICROSOFT$DPM$Acct 的 DPM 服务器上创建新的本地用户帐户。 密码不必在帐户之间匹配。

  3. 更改 MSSQL$MSDPM<版本>SQLAgent$MSDPM<版本> 服务,以便在它们启动时使用步骤 1 中的新域用户帐户。

安装现在应成功完成。 对于全新安装,无需还原升级部分中提到的这两个服务,因为注册表已具有服务的正确信息。

升级后验证功能

注意

仅当已完成升级时,才执行这些步骤。 全新安装不需要这样做。

若要确保作业继续按计划运行,请在 DPM 服务器上执行以下步骤:

  1. 在“注册表编辑器”中,找到以下注册表子项:

    HKLM\Software\Microsoft\Microsoft Data Protection Manager\Setup

  2. 请确保以下值反映 %MachineName%\Microosft$DPM$Acct 本地帐户:

    • SqlAgentAccountName
    • SchedulerJobOwnerName

    注意

    如果 DPM 服务器和运行 Microsoft SQL Server的服务器上,此帐户还应对 DPM\Bin 文件夹具有完全权限(如果SQL Server是远程托管的)。

  3. 启动 DCOMCNFG.exe,然后找到以下文件夹:

    Component Services\Computers\My Computer\DCOM Config\Microsoft System Center Data Protection Manager <version> Service

  4. 右键单击服务名称,然后选择“ 属性”。

  5. 单击“安全性”选项卡。

  6. “启动和激活权限” 区域中,选择“ 编辑”,然后验证帐户是否存在并已分配所有权限。

  7. 启动 DPM 实例的SQL Server Management Studio,然后验证帐户是否具有 Sysadmin 角色。

升级安装失败时的其他步骤

如果升级安装失败,并且程序未回滚,则必须还原 DPM 的工作版本,然后才能再次尝试安装升级。 为此,请按照下列步骤操作:

  1. 找到在开始升级过程之前创建的 DPMDB 文件的备份副本。

  2. 如果已安装 DPM,请卸载它。

    重要

    请确保维护数据。 为此,请在“卸载选项”页上选择“保留基于磁盘的恢复点”。

  3. 安装 DPM。 如果已安装任何更新,请按照之前安装的相同顺序重新安装它们。

    注意

    建议从步骤 1 装载数据库,然后在管理员模式下对 DPM 数据库运行以下查询,以查找最初应用更新的顺序:

    Select distinct MajorVersionNumber,MinorVersionNumber ,BuildNumber, FileName FROM [DPMDB].[dbo].[tbl_AM_AgentPatch] where MajorVersionNumber = 4 and MinorVersionNumber =1 order by BuildNumber desc
    
  4. 若要还原备份数据库副本,请在提升的命令提示符下运行以下命令:

    dpmsync -restoredb (with appropriate switches)
    
  5. 若要同步数据库,请在 DPM 命令行管理程序中运行以下命令:

    dpmsync -sync
    
  6. 启动 DPM 管理员控制台,然后确保所有代理的版本号与 DPM 服务器相同。

执行这些步骤后,DPM 安装的状态应还原为其原始状态。 现在,请再次尝试执行 解决方法步骤 和升级安装。