SCCM 2012 SP1-DownloadContentFiles ()가 hr = 0x80041013으로 실패했습니다


15

소프트웨어 업데이트에 대한 자동 배포 규칙이 카탈로그에 올바로 나열되어 있지만 이 달의 패치를 Microsoft 에서 자동으로 다운로드하여 적용하지 못했습니다 .

카탈로그에 나열된 SCCM 소프트웨어 업데이트


자동 배포 규칙에는 마지막 오류 코드 0X87D20417가 마지막 오류 설명과 "자동 배포 규칙 다운로드 실패"가 표시됩니다. 규칙을 다시 실행하면이 오류가 재현됩니다. 자동 배포 규칙을 삭제하고 다시 만들면 동일한 오류가 재현됩니다.

SMS_RULE_ENGINE 로그를 보면 다음 오류가 표시됩니다.

Error   Milestone   004 6/19/2013 3:42:21 PM    SCCM.ad.example.com SMS_RULE_ENGINE 8706     Content download failed.   Message: Failed to download one or more content files.   Source: SMS Rule Engine.   
Error   Milestone   004 6/19/2013 3:42:07 PM    SCCM.ad.example.com SMS_RULE_ENGINE 8706     Content download failed.   Message: Failed to download one or more content files.   Source: SMS Rule Engine.   
Error   Milestone   004 6/19/2013 2:45:44 PM    SCCM.ad.example.com SMS_RULE_ENGINE 8706     Content download failed.   Message: Failed to download one or more content files.   Source: SMS Rule Engine.   
Error   Milestone   004 6/19/2013 2:43:29 PM    SCCM.ad.example.com SMS_RULE_ENGINE 8706     Content download failed.   Message: Failed to download one or more content files.   Source: SMS Rule Engine.   


ruleengine.log (SCCM 내의 상위 수준 SMS_RULE_ENGINE 로그가 생성 된 로그 파일 임)를 살펴보고 자동 배포 규칙이 이러한 업데이트를 I에 배치해야하는 관련 배포 패키지의 패키지 ID를 조정하면 다음을 찾으십시오.

Contents 16821586 is already present in the package "0040000F". Skipping download.  SMS_RULE_ENGINE 6/19/2013 3:41:58 PM    9068 (0x236C)
Downloading contents (count = 10) for UpdateID 16829711 SMS_RULE_ENGINE 6/19/2013 3:41:58 PM    9068 (0x236C)
List of update content(s) which match the content rule criteria = {16821659,16821660,16821661,16821662,16821663,16821664,16821665,16821666,16821667,16821668}   SMS_RULE_ENGINE 6/19/2013 3:41:58 PM    9068 (0x236C)
Downloading content with ID 16821659 in the package SMS_RULE_ENGINE 6/19/2013 3:41:58 PM    9068 (0x236C)
Failed to download the update from internet. Error = 4115   SMS_RULE_ENGINE 6/19/2013 3:41:58 PM    9068 (0x236C)
Failed to download ContentID 16821659 for UpdateID 16829711. Error code = 4115  SMS_RULE_ENGINE 6/19/2013 3:41:58 PM    9068 (0x236C)


이 시점에서 동일한 이벤트에 의해 생성되는 3 가지 오류가 있습니다. 물론, 그들이 여기에 모두 포함되는 이유는 아닙니다. 로그 파일의 시간을 조정했으며 자동 배포 규칙의 문제와 관련이 있다고 확신합니다.

  • 0X87D20417 -SCCM 콘솔의 자동 배포 규칙에서
  • 8706 -SCCM 콘솔의 모니터링 SMS_RULE_ENGINE 로그에서
  • Error code = 4115 -SCCM 사이트 서버 로그의 [SCCMInstallationPath] \ Logs \ ruleengine.log


해당 업데이트를 다운로드 할 수없는 것 같습니다. 분명히 이런 종류의 문제를 해결하는 곳은 PatchDownloader.log 입니다. 그리고 '보라가 아직 거기에 기록 된 또 다른 오류가 :

Trying to connect to the \\SCCM.ad.example.com\root\sms\site_REV namespace on the SCCM.ad.example.com machine.  Software Updates Patch Downloader   6/19/2013 3:42:21 PM    9068 (0x236C)
Connected to \\SCCM.ad.example.com\root\sms\site_REV    Software Updates Patch Downloader   6/19/2013 3:42:21 PM    9068 (0x236C)
GetContentFileInfoForDownload() failed for ContentID 16821994. hRes = 0x80041013 .  Software Updates Patch Downloader   6/19/2013 3:42:21 PM    9068 (0x236C)
ERROR: DownloadContentFiles() failed with hr=0x80041013 Software Updates Patch Downloader   6/19/2013 3:42:21 PM    9068 (0x236C)


PatchDownloader.log의 콘텐츠 ID를 Error: 4115ruleengine.log에 기록 된 항목으로 다시 조정할 수 있으므로 앞에서 언급했듯이 이러한 모든 다른 오류를 생성하는 동일한 이벤트를보고 있다고 확신하지만 누군가 더 잘 알고 있다면 정정 해줘.

CMTrace의 Error Lookup 도구를 사용하면 hr =에 대해 다음을 알려줍니다 0x80041013.

Provider load failure

Source: Windows Management (WMI)
-----

그리고 Software Updates Patch Downloader가 연결하는 WMI 네임 스페이스를 보면 충분하지 않습니다.

\ SCCM.ad.example.com \ root \ sms \ site_REV

사이트 코드는 실제로 004조직의 첫 세 글자로 REV로 시작하는 것으로 충분합니다. 당신이 나에게 요청하면 큰 우연의 일치. 또한 여기에 존재하는 첫 번째 SCCM 설치가 아니며 기존 SCCM 2007에서 기존 경계, 컬렉션 및 패키지가 새 설치로 마이그레이션 된 것으로 나타났습니다. 연기가 나는 총? 좀 빠지는. 다른 사이트 코드도 사용했습니다. 아마도 SCCM 2012의 임시 테스트 설치에 REV 사이트 코드가 사용 되었습니까? 아마 아닐거야. 기관 지식에는 REV그 정보와 내가 고용되기 전에 수행 한 이주에 대한 기록이 없습니다 .

그러나 SCCM 2007 인스턴스의 이전 PatchDownloader.log는 site_$SITECODEWMI 네임 스페이스에 연결하는 소프트웨어 업데이트 패치 다운로더를 보여줍니다 . 불행히도, 올바른 WMI 네임 스페이스가 참조되고 있는지 확인할 수있는 5 월의 현재 2012 설치 로그는 없습니다.

Trying to connect to the root\SMS namespace on the SCCM07.ad.example.com machine.   Software Updates Patch Downloader   8/3/2011 3:18:37 PM 25128 (0x6228)
Connected to \\SCCM07.ad.example.com\root\SMS   Software Updates Patch Downloader   8/3/2011 3:18:37 PM 25128 (0x6228)
Trying to connect to the \\SCCM07.ad.example.com\root\sms\site_DOR namespace on the  machine.   Software Updates Patch Downloader   8/3/2011 3:18:37 PM 25128 (0x6228)
Connected to \\SCCM07.ad.example.com\root\sms\site_DOR  Software Updates Patch Downloader   8/3/2011 3:18:37 PM 25128 (0x6228)
Download destination = \\SCCM07.ad.example.com\WSUSContent\be128fa4-0c6b-418a-893d-3450e38c658d.1\windows-kb890830-v3.21.exe .  Software Updates Patch Downloader   8/3/2011 3:18:37 PM 25128 (0x6228)
Contentsource = http://download.windowsupdate.com/msdownload/update/software/uprl/2011/07/windows-kb890830-v3.21_2aba440b72071ff17cad1ca2a39f0e40aa85c76e.exe . Software Updates Patch Downloader   8/3/2011 3:18:37 PM 25128 (0x6228)
Downloading content for ContentID = 31068,  FileName = windows-kb890830-v3.21.exe.  Software Updates Patch Downloader   8/3/2011 3:18:37 PM 25128 (0x6228)


확인. 실제로 WMI 네임 스페이스의 문제처럼 보입니다. SCCM의 어딘가에서 소프트웨어 업데이트 패치 다운로더가 \\SCCM.ad.example.com\root\sms\site_REV대신에 연결하도록 지시하고 있습니다 \\SCCM.ad.example.com\root\sms\site_004.

WAG에서 SQL 데이터베이스의 가능한 테이블을 확인 REV하여 사용할 수 없음을 확인했습니다.

SELECT * FROM SysResList WHERE SiteCode = 'REV';
SELECT * FROM SiteControl WHERE SiteCode = 'REV';
SELECT * FROM SiteControlNotification WHERE SiteCode = 'REV';
SELECT * FROM Sites WHERE SiteCode = 'REV';
SELECT * FROM Sites_DATA WHERE SiteCode = 'REV';
SELECT * FROM SiteWork WHERE SiteCode = 'REV';
SELECT * FROM PkgServers WHERE sitecode = 'REV';
SELECT * FROM PkgStatus WHERE sitecode = 'REV';


문제를 더 복잡하게하기 위해 0x80041013오류에 대한 여러 설명이 표시됩니다.

WMI 문제 해결 팁에 따르면 WMI 공급자를로드하지 못했습니다.

WBEM_E_PROVIDER_LOAD_FAILURE-0x80041013

공급자 이벤트 문제 해결 클래스는 훌륭한 리소스이지만 다소 압도적 일 수 있습니다. MSFT_WmiProvider_LoadOperationFailureEvent 클래스는 매우 유용하다는 것을 알았습니다. 내가 경험 한 대부분의 공급자로드 오류는 레지스트리 또는 WMI에서 구성 요소 등록이 잘못되었거나 권한과 관련된 결과입니다.

반면 MSDN에서 WMI 오류 상수 가 권한 문제라고 말한다 :

WBEM_E_ACCESS_DENIED 2147749891 (0x80041003) 현재 사용자에게 작업을 수행 할 권한이 없습니다.

내가 0x80041013오류에서 찾을 수있는 유일한 다른 정보 는 TechNet에 게시 한 동료였습니다 .WMI 네임 스페이스가 잘못 참조 된 SCCM을 이전에 설치 한 문제까지도 나와 같은 문제가있는 것으로 보입니다 ( 예) site_REV대신 site_004). 그는 SMS_ProviderLocation의 일부뿐만 아니라 전체 WMI 네임 스페이스를 제거했습니다. 확실하지 않습니다.


지금은 긴 하루였습니다. 우리는이 서버들을 패치해야하고 머리가 아파요. 어떤 충고?


1
업데이트를 수동으로 다운로드 / 배포하려고 시도 했습니까 (ADR 건너 뛰기)? 그리고 ... 아마도 ADR을 삭제하고 다시 만들 수 있습니까?
Jason Sypkens 2013 년

@JasonSypkens-ADR을 삭제하고 다시 작성하면 오류가 재현되며 업데이트를 수동으로 다운로드하는 대신 SCCM의 근본적인 문제를 해결하려고합니다. 아직 절망적이지는 않습니다.

기본 사이트 서버에 WMI 네임 스페이스 root \ sms \ site_REV가 있습니까? root \ sms \ site_004가 있습니까? 또한 약간 과감하지만 SUP 역할을 제거했다가 다시 추가하거나 WSUS를 다시 설치해 보셨습니까? 관리 콘솔을 살펴본 결과 SUP가 잘못된 사이트 코드로 구성 될 수있는 명확한 지점이 보이지 않습니다.
Jason Sypkens 2016 년

답변:


5

아마도 REV사이트 코드가 SCCM 2012의 임시 테스트 설치에 사용 되었습니까? 아마 아닐거야. 기관 지식에는 REV그 정보와 내가 고용되기 전에 수행 한 이주에 대한 기록이 없습니다 .

이 직감이 맞았습니다. 전임자를 붙잡고 SCCM 2007에서 SCCM 2010으로 마이그레이션하려는 첫 번째 시도와 실패한 시도가 REV사이트 코드를 사용했습니다 . 지금까지 WMI에서 휴면 상태를 유지 한 방법과 "활성화"된 이유는 나에게 완전한 미스터리입니다.

TechNet 게시물 에서 솔루션을 매우 신중하게 다시 읽었 으며 이전 네임 스페이스 삭제를 권고하고 시도하기로 결정했습니다. 이 문제를 해결 한 경우에도 이것을 답변으로 표시하는 것을 망설이고 있습니다. 특히 Microsoft의 "공식적인"사람이 안전한 접근인지 여부를 확인할 수 없기 때문에 암시 적으로 승인했음을 나타냅니다. 또는 그 결과가 무엇을했는지. 즉, 진행하기 전에 SCCM 서버의 전체 백업 또는 최소한 WMI에 대한 훨씬 더 친숙한 지식이 있는지 확인하십시오. 이 작업을 수행하는 모든 작업을 매우 쉽게 중단 할 수 있습니다. 특히 나와 같은 경우 WMI에 익숙하지 않으며 SCCM이이를 얼마나 깊이 활용하는지에 대해서는 잘 모르고 있습니다.


root\smsSCCM 서버 의 네임 스페이스에 연결하기 위해 wbemtest를 사용했습니다 . 거기서 [Enum_Instances ...] 버튼을 __NAMESPACE사용하여 수퍼 클래스로 검색했습니다 . REV사이트 코드에 대한 항목을 삭제했습니다 . 그런 다음 SMS_ProviderLocation슈퍼 클래스와 동일한 Enum_Instances를 수행하고 해당 네임 스페이스에서 이전 사이트 코드를 삭제했습니다. 자동 배포 규칙을 다시 실행하고 검토 한 PatchDownloader.log결과 각 Windows Update가 성공적으로 다운로드 된 것으로 나타났습니다.

WBEMTEST __NAMESPACE

WBEMTEST SMS_ProviderLocation

SCCM에서 이러한 네임 스페이스를 사용하는 방법과 더 자세한 정보가있는 사람이이 문제를 어떻게 해결했는지에 대해 더 많은 정보를 얻을 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.