Zusammenfassung
In diesem Artikel werden die Windows PowerShell Probleme beschrieben, die im kumulativen Update 1 (CU1) für Microsoft System Center 2012 R2 Configuration Manager behoben wurden. Weitere CU1-Korrekturen werden im folgenden Microsoft Knowledge Base-Artikel beschrieben:
2938441 Beschreibung des kumulativen Updates 1 für System Center 2012 R2 Configuration Manager
Weitere Informationen
Behobene Probleme
-
Objekte, die als -InputObject-Parameter (oder gleichwertig) an ein Cmdlet übergeben werden, werden anschließend zu "null".
-
Cmdlets, die ohne Fehler warnen oder bei treffern Fehlerbedingungen im Hintergrund fehlschlagen, beenden die Pipeline nicht wie erwartet.
-
Cmdlets, die Aktionen für Websiteobjekte ausführen, schlagen im Hintergrund fehl, wenn das Websiteobjekt nicht vorhanden ist. Dieses Problem führt dazu, dass Skripts und Automatisierung in einen nicht definierten Zustand eintreten. Beachten Sie, dass sich dieses Problem nicht auf Get-Cmdlets auswirkt. Sie schlagen nicht fehl, wenn keine Objekte gefunden werden, die den Suchkriterien entsprechen.
-
Add-CMDeploymentType -DeepLinkInstaller fügt den Bereitstellungstyp nicht hinzu.
-
Start-CMSoftwareUpdateDeployment legt nicht die richtigen Bereitstellungsoptionen fest, wenn der Parameter "-DisableOperationsManagerAlert" oder "-GenerateOperationsManagerAlert" verwendet wird.
-
Das cmdlet Save-CMSoftwareUpdate schlägt mit Fehlern wie den folgenden fehl:
Save-CMSoftwareUpdate: Der angegebene Schlüssel war im Wörterbuch nicht vorhanden.
Bei Zeile:1 Zeichen:1 + Save-CMSoftwareUpdate -DeploymentPackageName "Contoso-Package" -SoftwareupdateNa ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [Save-CMSoftwareUpdate], KeyNotFoundException + FullyQualifiedErrorId : System.Collections.Generic.KeyNotFoundException,Microsoft.ConfigurationManagement.Cmdlet s.Sum.Commands.SaveSoftwareUpdateCommand -
New-CMProgram akzeptiert "-PackageID" nicht als Eingabeparameter.
-
Remove-CMUser -InputObject-Parameter akzeptiert die Objektausgabe von Get-CMUser nicht.
-
New-CMDeviceCollectionVariable erfordert, dass der ausführende Benutzer über Leseberechtigungen für die Sammlung "Alle Systeme" verfügt.
-
New-CMSoftwareMeteringRule und Set-CMSoftwareMeteringRule benötigen Zugriff auf die getaktete Datei, um eine Messregel erstellen zu können.
-
Die Administratorkonsole muss mindestens einmal auf einem bestimmten Computer gestartet werden, bevor das SMS PowerShell-Laufwerk des Anbieters erstellt werden kann.
-
Die Option "Inhalt verteilen" ist in der Administratorkonsole für Objekte deaktiviert, die mithilfe von New-CMOperatingSystemInstaller oder New-CMOperatingSystemImage erstellt werden.
-
Set-Cmdlets, die Standortserverrollen ändern, erfordern sowohl -SiteCode als auch -SiteSystemServerName anstelle von "-SiteSystemServerName" wie erwartet.
-
New-CMMigrationJob schlägt mit der Fehlermeldung "Ungültige Abfrage" fehl, die wie folgt aussieht:
Throw exception:
New-CMMigrationJob : ConfigMgr Error Object: instance of __ExtendedStatus { Operation = "ExecQuery"; ParameterInfo = "SELECT * WHERE DependencyType = 1"; ProviderName = "WinMgmt"; }; Fehlercode: InvalidQuery At line:1 char:1
Weitere Änderungen
-
Der Schalter "-Verbose" für die meisten Cmdlets gibt jetzt Informationen zu der ausgeführten Abfrage aus.
Hinweis Wenn ein Cmdlet nicht wie erwartet funktioniert, liefert der Schalter "-Verbose" ungewöhnlichErweise Informationen zur tatsächlichen WMI-Abfrage, die für das SMS Provider-Back-End ausgeführt wird. Diese Informationen sind sehr hilfreich für die Problembehandlung und sollten bereitgestellt werden, wenn dies möglich ist, wenn Sie Verbinden Feedbackelemente ablegen. -
Wenn Sie die Ausgabe eines Configuration Manager Cmdlets in Select-Object (Auswahl) übertragen, ist für die Auswahlargumente keine korrekte Groß-/Kleinschreibung mehr erforderlich.
-
Platzhalterzeichen werden in Abfragen nicht unterstützt.
-
Die folgende Liste stellt Cmdlets mit zusätzlichen gezielten Korrekturen dar. Aufgrund zusätzlicher Änderungen am zugrunde liegenden Windows PowerShell Frameworkcode, der von diesen Cmdlets verwendet wird, haben die nicht aufgeführten möglicherweise auch das Verhalten geändert. Stellen Sie sicher, dass Ihre Skripts und die Automatisierung weiterhin wie erwartet funktionieren.
-
Add-CMBoundaryToGroup
-
Add-CMDeploymentType
-
Add-CMStateMigrationPoint
-
Get-CMApplicationCatalogWebServicePoint
-
Get-CMApplicationCatalogWebsitePoint
-
Get-CMEndpointProtectionPoint
-
Get-CMEnrollmentPoint
-
Get-CMEnrollmentProxyPoint
-
Get-CMFallbackStatusPoint
-
Get-CMOutOfBandServicePoint
-
Get-CMReportingServicePoint
-
Get-CMSiteStatusMessage
-
Get-CMSoftwareDistributionComponent
-
Get-CMSoftwareUpdatePoint
-
Get-CMStateMigrationPoint
-
Get-CMSystemHealthValidatorComponent
-
Import-CMComputerInformation
-
New-CMActiveDirectoryForest
-
New-CMDeviceCollectionVariable
-
New-CMMigrationJob
-
New-CMOperatingSystemInstaller
-
New-CMProgram
-
New-CMSoftwareMeteringRule
-
Remove-CMBoundaryFromGroup
-
Remove-CMDeploymentType
-
Remove-CMUser
-
Restore-CMApplicationRevisionHistory
-
Save-CMSoftwareUpdate
-
Set-CMADForest
-
Set-CMBootImage
-
Set-CMDeploymentType
-
Set-CMDiscoveryMethod
-
Set-CMExchangeServer
-
Set-CMGlobalCondition
-
Set-CMHierarchySetting
-
Set-CMManagementPoint
-
Set-CMMigrationExclusionList
-
Set-CMPackageDepoyment
-
Set-CMSiteMaintenanceTask
-
Set-CMSoftwareDistributionComponent
-
Set-CMSoftwareMeteringRule
-
Set-CMTaskSequenceDeployment
-
Start-CMContentDistribution
-
Start-CMDistributionPointUpgrade
-
Start-CMSoftwareUpdateDeployment
-
Update-CMDistributionPoint
-
In einigen begrenzten Fällen wurden bei Cmdlets möglicherweise Parameter entfernt oder geändert. Dies stellt eine grundlegende Änderung an vorhandenen Skripts oder der Automatisierung dar. Wenn ein Cmdlet aufgrund eines Parameterbindungsfehlers nicht mehr funktioniert, stellen Sie sicher, dass der von Ihnen verwendete Parameter nicht umbenannt oder entfernt wurde.
Bekannte Probleme
Die folgenden Symptome können auch nach der Installation des kumulativen Updates 1 auftreten. Alternative Lösungen werden dort aufgeführt, wo sie verfügbar sind. Diese Probleme können in zukünftigen Versionen von Configuration Manager behoben werden.
-
Install-CMClient zielt nicht auf alle Computer in einer Auflistung ab, wenn der Parameter "-CollectionID" verwendet wird.
Um dieses Problem zu umgehen, rufen Sie eine Gruppe von Geräten mithilfe von Get-CMDevice -CollectionID ab, und übergeben Sie jede Instanz an Install -CMDevice -Device. Führen Sie beispielsweise den folgenden Befehl aus:Get-CMDevice -CollectionName MyCollection | foreach { Install-CMClient -Device $_ -IncludeDomainController $false -AlwaysInstallClient $false -ForceReinstall $false -SiteCode PSS }
-
Start-CMDistributionPointUpgrade funktioniert nicht mit sekundären Websites.
Um dieses Problem zu umgehen, führen Sie die Aufgabe mithilfe der Administratorkonsole aus. -
Save-CMSoftwareUpdate Cmdlet funktioniert in einer 64-Bit-Windows PowerShell-Umgebung nicht.
Um dieses Problem zu umgehen, verwenden Sie eine 32-Bit-Version von Windows PowerShell oder ISE. -
New-CMVirtualEnvironmentGroup Ergebnis wird in der Administratorkonsole nicht angezeigt.
Um dieses Problem zu umgehen, führen Sie die Aufgabe mithilfe der Administratorkonsole aus. -
Set-CMSite -Comment-Parameter führt dazu, dass Cmdlets fehlschlagen.
Um dieses Problem zu umgehen, führen Sie die Aufgabe mithilfe der Administratorkonsole aus. -
Remove-CMDeploymentType schlägt nicht fehl, wenn Sie versuchen, einen nicht vorhandenen Bereitstellungstyp zu entfernen.
Um dieses Problem zu umgehen, verwenden Sie Get-CMDeploymentType, um zu überprüfen, ob der Bereitstellungstyp vorhanden ist, bevor Sie versuchen, ihn zu entfernen. -
New-CMSecondarySite erstellt einen Verteilungspunkt, der nicht über die Administratorkonsole konfiguriert werden kann, wenn Sie ein selbstsigniertes Zertifikat verwenden.
Um dieses Problem zu umgehen, verwenden Sie eines der folgenden Verfahren anstelle des cmdlets New-CMSecondarySite:-
Konfigurieren Sie den sekundären Standort mithilfe eines von der Zertifizierungsstelle ausgestellten Zertifikats.
-
Verwenden Sie Set-CMDistributionPoint, um den Verteilungspunkt nach der Installation des sekundären Standorts zu konfigurieren.
-
Entfernen Sie den Verteilungspunkt des sekundären Standorts, und fügen Sie einen neuen hinzu, nachdem der sekundäre Standort installiert wurde.
-
-
Einige Cmdlets funktionieren möglicherweise nicht mehr, nachdem Sie das cmdlet New-CMTaskSequence verwendet haben.
Um dieses Problem zu umgehen, starten Sie Windows PowerShell neu. -
Start-CMApplicationDeployment schlägt fehl, wenn es mit Windows Store-Anwendungen verwendet wird, da erwartet wird, dass der Inhalt an einem Verteilungspunkt vorhanden ist.
Um dieses Problem zu umgehen, führen Sie die Aufgabe mithilfe der Administratorkonsole aus.