SCCM包处于待定状态将不会被处理
在分发包时,我注意到SCCM包处于挂起状态,不会被处理。此消息已记录在distmgr.log文件中,让我们看看如何修复此问题。
一位IT工程师报告了一个操作系统部署问题。错误截图基本上意味着应用程序缺少一个分发点。
应用程序的名称没有显示在屏幕截图上,而是scopeid。此任务序列无法运行,因为ScopeId_ID/Application_ID的程序文件无法位于分布点上。欲了解更多信息,请与系统管理员或帮助台操作员联系。
要找到与scopeid关联的应用程序,请转到任务序列。在底部选择参考文献.这将显示分配给任务序列的所有应用程序及其Object id。将此与从SMSTS.log中发现的错误进行匹配。
通常通过将缺少的应用程序分发到DP来修复上述错误。然而,这次情况并非如此。我们的包处于挂起状态。现在您已经找到了应用程序名称,让我们看看修复SCCM包处于未决状态问题的步骤。
目录
如何修复SCCM包处于挂起状态且不会被处理
为什么SCCM包会卡在挂起状态?可能在分发包时,它被标记为分发,但作业从未完成。因此,它仍然停留在挂起状态,永远不会被分发到分配点.
包P010048F处于待定状态,将不会被处理…SMS_DISTRIBUTION_MANAGER退出包P010048F的包处理线程。SMS_DISTRIBUTION_MANAGER P010048F包处于Pending状态,将不会被处理…SMS_DISTRIBUTION_MANAGER
为了修复SCCM包卡在Pending State中的问题,您需要执行或尝试几个步骤。
步骤1 -重新分发包到分发点
在上面的步骤中,您找到了与scopeid关联的应用程序。由于应用程序缺失导致任务序列失败,请将应用程序重新分发到分发点。
您也可以转到监视工作区>内容状态。在同一窗口中搜索包并重新分发失败的应用程序。
您也可以右键单击分发点服务器,然后单击属性.点击内容TAB并找到您的应用程序。选择应用程序并单击重新分配.
同样,使用distmgr.log文件来监视错误。如果SCCM包在distmgr.log中再次显示为挂起状态,则继续执行步骤2。
步骤2 -从DP中删除包并分发内容
重新分发包的简单方法是从DP中删除包或内容,然后再分发回去。
右键单击分发点服务器,然后单击属性.点击内容TAB并找到您的应用程序。选择应用程序并单击删除.
如果成功地从DP中删除内容,则将内容分发回该分发点。如果这对你不起作用,请转到步骤3。
步骤3 -重新创建包
您可以假设旧的包有问题,并可以从头创建一个新包。这是你在进入第4步之前想要尝试的最终解决方案。一旦您分发了新的包,您就可以删除旧的包。
步骤4 -清除未决包PKGFlags通过SCCM数据库
这是您可以尝试修改的最后一步配置管理数据库清除挂起标志。但是,不推荐使用这种方法,因为它涉及修改Configuration Manager数据库。您可以对数据库运行查询以清除挂起标志。
所以我的终极联系人提醒你一句微软支持并在执行此步骤之前记录票据。MS支持将帮助您解决这个问题。
如果你想靠自己解决问题,备份配置管理器数据库试试下面的步骤。启动SQL Server Management Studio.右键单击CM_DB并运行下面的查询。替换包ID您的包ID。
SELECT * FROM SMSPackages WHERE PkgID= ' packageID ' and PkgFlags | 0x00020000 = PkgFlags
执行上述查询时,确保输出中只有记录。
接下来,运行下面的查询以清除包
UPDATE SMSPackages SET PkgFlags = PkgFlags ^ 0x00020000 WHERE PkgID='
在执行此查询时,您将注意到输出中受影响的行很少。关闭查询窗口和SSMS。
最后,您需要做的最后一步是将应用程序重新分发到分发点。这一次,SCCM包应该分发得很好,没有任何问题。
如果你还有任何问题,请在评论区告诉我。