Yazılım güncelleştirmeleri birden çok yeniden başlatma gerektiriyorsa görev dizisi Configuration Manager başarısız oluyor

Bu makalede, Configuration Manager görev dizisi kullanılırken Görev Dizisi ortamı bulunamadı hatasının oluşması sorununu çözmeye yönelik bilgiler sağlanır.

Orijinal ürün sürümü: Microsoft System Center 2012 Configuration Manager, Microsoft System Center 2012 R2 Configuration Manager, Configuration Manager (geçerli dal)
Özgün KB numarası: 2894518

Özet

Bu sorun, System Center 2012 Configuration Manager Service Pack 2 ve System Center 2012 R2 Configuration Manager Service Pack 1 için Toplu Güncelleştirme 3'te ve geçerli dal sürümü 1602'de Configuration Manager düzeltildi.

Bir yazılım güncelleştirme yüklemesi iki yeniden başlatma gerektirdiğinde istemci davranışını daha iyi denetlemek için yeni bir isteğe bağlı görev dizisi değişkeni SMSTSWaitForSecondRebootkullanılabilir.

Daha fazla bilgi için Configuration Manager için Toplu Güncelleştirme 3'ün açıklaması bölümündeki Yazılım güncelleştirmeleri yönetimi/işletim sistemi dağıtımı bölümüne bakın.

Geçerli dal Configuration Manager için bkz. Görev dizisi değişkenleri.

Belirtiler

Yazılım Yükle Güncelleştirmeler adımını kullanan bir Configuration Manager görev dizisinin, görev dizisi Yazılım Yükleme Güncelleştirmeler görevini başarıyla çalıştırdıktan sonra birden çok yeniden başlatmayı tetikleyen bir yazılım güncelleştirmesi yüklediğini varsayalım. Bu durumda, görev dizisi başarısız olabilir ve aşağıdaki hata iletisini oluşturabilir:

Görev Dizisi ortamı bulunamadı

Not

Yazılım yükleme Güncelleştirmeler görev dizisi adımındaki yeni Yeniden Dene seçeneğini kullanarak Configuration Manager bu sorunu önleyebilirsiniz.

Neden

Yazılım güncelleştirmesi tarafından başlatılan ilk yeniden başlatma, görev dizisi tarafından denetlenir. Ancak ikinci yeniden başlatma isteği bir Windows bileşeni (genellikle Component-Based Servicing) tarafından başlatılır ve görev dizisi tarafından denetlenmiyor. Bu nedenle, ikinci yeniden başlatma görev dizisi tarafından denetlenmediğinden, görev dizisi yürütme durumu yeniden başlatmadan önce kaydedilmez. İkinci yeniden başlatmadan sonra görev dizisi devam ettiğinde, başarıyla devam etmek için kullanılabilir durum yoktur.

Çözüm

Bu sorunu çözmek için, görev dizilerini kullanmak yerine her zamanki yazılım güncelleştirmeleri özelliğini kullanarak Configuration Manager çift yeniden başlatma gerektiren güncelleştirmeleri uygulamanızı öneririz. Aşağıdaki yazılım güncelleştirmelerinin birden çok yeniden başlatma gerektirdiği bildirildi.

Daha fazla bilgi

Bu ikinci yeniden başlatma görev dizisi tarafından denetlenmediğinden, yeniden başlatmadan önce hiçbir yürütme durumu kaydedilmez. Görev dizisi yeniden başlatmadan sonra devam ettiğinde, başarıyla devam etmek için kullanılabilir durum yoktur. Ayrıca, bu sorunla karşılaştığınızda aşağıdaki ileti Smsts.log dosyasına kaydedilebilir:

!sVolumeID.empty(), HRESULT=80004005
!sTSMDataPath.empty(), HRESULT=80070002
TS::Utility::GetTSMDataPath( sDataDir ), HRESULT=80070002
Günlük dizini ayarlanamadı. Bazı yürütme geçmişi kaybolabilir.
Sistem belirtilen dosyayı bulamıyor. (Hata: 80070002; Kaynak: Windows)
Görev dizisi yürütülüyor
!sVolumeID.empty(), HRESULT=80004005
!sTSMDataPath.empty(), HRESULT=80070002
Görev Dizisi ortamı bulunamadı

Ayrıca, Microsoft System Center 2012 Configuration Manager Service Pack 1'den önceki sürüm sürümlerini çalıştıran istemciler aşağıdaki günlük girdisini içerebilir:

Görev dizisi Windows PE'de tamamlandı.

İstemci bilgisayar, görev dizisi başarısız olduktan sonra sağlama modunda da takılmış olabilir. Bilgisayarın sağlama modunda olup olmadığını belirlemek için kayıt defteri alt anahtarını denetleyin HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\CCM\CcmExec .

ProvisioningModefalse olarak ayarlanmalıdır. True olarak ayarlanırsa, istemciyi sağlama modundan çıkarmak için aşağıdaki yöntemlerden birini kullanın:

  • İstemciyi sağlama modundan doğru şekilde çıkarmak için Windows Yönetim Araçları (WMI) yöntemini SetClientProvisioningMode kullanın. Bunu yapmanın en kolay yolu aşağıdaki Windows PowerShell komutunu çalıştırmaktır:

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

    Veya yükseltilmiş bir komut isteminde aşağıdaki komutu çalıştırın:

    powershell Invoke-WmiMethod -Namespace root\CCM -Class SMS_Client -Name SetClientProvisioningMode -ArgumentList $false
    
  • İstemciyi yeniden yükleyin.

Önemli

değerini false olarak değiştirerek istemciyi düzeltmeye çalışmayınProvisioningMode. Bu eylem istemciyi sağlama modundan tamamen çıkarmaz.