Takenreeks mislukt in Configuration Manager als software-updates meerdere herstarts vereisen

Dit artikel bevat de informatie voor het oplossen van het probleem dat de taakreeksomgeving niet gevonden fout optreedt bij het gebruik van een Configuration Manager takenreeks.

Oorspronkelijke productversie: Microsoft System Center 2012 Configuration Manager, Microsoft System Center 2012 R2 Configuration Manager, Configuration Manager (current branch)
Origineel KB-nummer: 2894518

Samenvatting

Het probleem is opgelost in cumulatieve update 3 voor System Center 2012 Configuration Manager Service Pack 2 en System Center 2012 R2 Configuration Manager Service Pack 1 en in Configuration Manager huidige vertakkingsversie 1602.

Een nieuwe optionele takenreeksvariabele, SMSTSWaitForSecondReboot, is beschikbaar om het gedrag van de client beter te beheren wanneer een software-update-installatie twee herstarts vereist.

Zie de sectie Software-updatesbeheer/besturingssysteemimplementatie in Beschrijving van cumulatieve update 3 voor Configuration Manager voor meer informatie.

Zie Takenreeksvariabelen voor Configuration Manager huidige vertakking.

Symptomen

Stel dat een Configuration Manager takenreeks die gebruikmaakt van de stap Software installeren Updates een software-update installeert die meerdere herstarts activeert nadat de takenreeks de taak Software installeren Updates heeft uitgevoerd. In deze situatie kan de takenreeks mislukken en het volgende foutbericht genereren:

Takenreeksomgeving niet gevonden

Opmerking

U kunt dit probleem in Configuration Manager voorkomen met behulp van de nieuwe optie Opnieuw proberen in de takenreeksstap Software installeren Updates.

Oorzaak

De eerste herstart die door de software-update wordt gestart, wordt bepaald door de takenreeks. De tweede aanvraag voor opnieuw opstarten wordt echter gestart door een Windows-onderdeel (meestal Component-Based Servicing) en wordt niet beheerd door de takenreeks. Daarom wordt de uitvoeringsstatus van de takenreeks niet opgeslagen vóór het opnieuw opstarten, omdat de tweede herstart niet wordt bepaald door de takenreeks. Wanneer de takenreeks wordt hervat na de tweede herstart, is er geen status beschikbaar om door te gaan.

Oplossing

Om dit probleem op te lossen, raden we u aan om updates waarvoor dubbel opnieuw opstarten is vereist, toe te passen met behulp van de gebruikelijke software-updatesfunctie van Configuration Manager in plaats van takenreeksen te gebruiken. Van de volgende software-updates is gemeld dat ze meerdere herstarts vereisen.

Meer informatie

Omdat deze tweede herstart niet wordt bepaald door de takenreeks, wordt er geen uitvoeringsstatus opgeslagen vóór het opnieuw opstarten. Wanneer de takenreeks wordt hervat na het opnieuw opstarten, is er geen status beschikbaar om door te gaan. Bovendien kan het volgende bericht worden vastgelegd in het Smsts.log-bestand wanneer u dit probleem ondervindt:

!sVolumeID.empty(), HRESULT=80004005
!sTSMDataPath.empty(), HRESULT=80070002
TS::Utility::GetTSMDataPath( sDataDir ), HRESULT=80070002
Kan de logboekmap niet instellen. Sommige uitvoeringsgeschiedenis kan verloren gaan.
Het systeem kan het opgegeven bestand niet vinden. (Fout: 80070002; Bron: Windows)
Takenreeks uitvoeren
!sVolumeID.empty(), HRESULT=80004005
!sTSMDataPath.empty(), HRESULT=80070002
Takenreeksomgeving niet gevonden

Bovendien kunnen clients waarop releaseversies worden uitgevoerd die ouder zijn dan Microsoft System Center 2012 Configuration Manager Service Pack 1, de volgende logboekvermelding bevatten:

Takenreeks voltooid in Windows PE.

De clientcomputer kan ook vastlopen in de inrichtingsmodus nadat de takenreeks is mislukt. Controleer de registersubsleutel om te bepalen of de computer zich in de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\CCM\CcmExec inrichtingsmodus bevindt.

ProvisioningMode moet worden ingesteld op onwaar. Als deze is ingesteld op true, gebruikt u een van de volgende methoden om de client uit de inrichtingsmodus te halen:

  • Gebruik de WMI-methode SetClientProvisioningMode (Windows Management Instrumentation) om de client correct uit de inrichtingsmodus te halen. De eenvoudigste manier om dit te doen, is door de volgende Windows PowerShell opdracht uit te voeren:

    Invoke-WmiMethod -Namespace root\CCM -Class SMS_Client -Name SetClientProvisioningMode -ArgumentList $false
    

    Of voer de volgende opdracht uit bij een opdrachtprompt met verhoogde bevoegdheid:

    powershell Invoke-WmiMethod -Namespace root\CCM -Class SMS_Client -Name SetClientProvisioningMode -ArgumentList $false
    
  • Installeer de client opnieuw.

Belangrijk

Probeer de client niet te herstellen door de waarde van ProvisioningMode te wijzigen in onwaar. Met deze actie wordt de inrichtingsmodus van de client niet volledig uitgeschakeld.