버전 1810에 대한 cmdlet 라이브러리 변경 Configuration Manager

적용 대상: Configuration Manager(현재 분기)

참고

Configuration Manager 현재 분기 버전 1806은 이러한 변경의 기준입니다. 자세한 내용은 버전 1806에 대한 Configuration Manager Cmdlet 라이브러리 변경 내용을 참조하세요.

중요한 변경 내용

새로운 cmdlet

배포 유형 및 전역 조건에 대한 요구 사항 규칙을 만들기 위해 다음 cmdlet이 추가됩니다.

  • New-CMGlobalConditionExpression
  • New-CMRegistryAccessControlEntry
  • New-CMRequirementRuleActiveDirectorySiteValue
  • New-CMRequirementRuleBooleanValue
  • New-CMRequirementRuleCMSiteValue
  • New-CMRequirementRuleCommonValue
  • New-CMRequirementRuleDeviceOwnershipValue
  • New-CMRequirementRuleExistential
  • New-CMRequirementruleExpression
  • New-CMRequirementRuleFileAttributeValue
  • New-CMRequirementRuleFilePermissionValue
  • New-CMRequirementRuleFreeDiskSpaceValue
  • New-CMRequirementRuleInputTypeValue
  • New-CMRequirementRuleOperatingSystemLanguageValue
  • New-CMRequirementRuleOperatingSystemValue
  • New-CMRequirementRuleOUValue
  • New-CMRequirementRuleScreenResolutionValue

Add 및 Set-CM*DeploymentType에 지원되는 cmdlet에는 GroupDetectionClausesDetectionClauseConnector에 대한 매개 변수가 추가되었습니다.

예제

규칙을 사용하여 간단한 식 만들기
$rule1 = Get-CMGlobalCondition -Name "Total physical memory" | New-CMRequirementRuleCommonValue -Value1 2048 -RuleOperator GreaterEquals
$myRuleExpression = New-CMRequirementRuleExpression -AddRequirementRule $rule1
$myGC = New-CMGlobalConditionExpression -Name "GCExp" -DeviceType Windows -RootExpression $myRuleExpression
복합 전역 조건 식 추가
$ruleProc = Get-CMGlobalCondition -Name "Number of processors" | New-CMRequirementRuleCommonValue -Value1 2 -RuleOperator GreaterEquals
$ruleMem1 = Get-CMGlobalCondition -Name "Total physical memory" | New-CMRequirementRuleCommonValue -Value1 2048 -RuleOperator GreaterThan
$ruleMem2 = Get-CMGlobalCondition -Name "Total physical memory" | New-CMRequirementRuleCommonValue -Value1 4096 -RuleOperator LessEquals
$ruleCPUSpeed1 = Get-CMGlobalCondition -Name "CPU Speed" | New-CMRequirementRuleCommonValue -Value1 5120 -RuleOperator LessEquals
$ruleCPUSpeed2 = Get-CMGlobalCondition -Name "CPU Speed" | New-CMRequirementRuleCommonValue -Value1 1024 -RuleOperator GreaterThan
$expressionProc = New-CMRequirementRuleExpression -AddRequirementRule $ruleProc
$expressionMem = New-CMRequirementRuleExpression -AddRequirementRule $ruleMem1, $ruleMem2 -ClauseOperator And
$expressionCPU = New-CMRequirementRuleExpression -AddRequirementRule $ruleCPUSpeed1, $ruleCPUSpeed2 -ClauseOperator And
$myRuleExpression = New-CMRequirementRuleExpression -RootExpression $expressionProc -AddExpression $expressionMem,$expressionCPU -ClauseOperator And -AddAsGroup -GroupOperator Or
$myGC = New-CMGlobalConditionExpression -Name "GCExp" -DeviceType Windows -RootExpression $myRuleExpression
언어 규칙 추가
$myGC = Get-CMGlobalCondition -Name "Operating System Language" | Where-Object PlatformType -eq 1
$cultureA = [System.Globalization.CultureInfo]::GetCultures([System.Globalization.CultureTypes]::AllCultures) | Where-Object Name -eq "zh"
$cultureB = [System.Globalization.CultureInfo]::GetCultures([System.Globalization.CultureTypes]::AllCultures) | Where-Object Name -eq "zh-CN"
$myRule = $myGC | New-CMRequirementRuleOperatingSystemLanguageValue -RuleOperator NoneOf -Culture $cultureA,$cultureB -IsMobile $False
Set-CMScriptDeploymentType -ApplicationName "myApp" -DeploymentTypeName "myDT" -AddRequirement $myRule
규칙을 사용하여 간단한 식을 만듭니다.
$clauseFile1 = New-CMDetectionClauseFile -FileName "abc" -Path "c:\abc" -PropertyType Size -ExpectedValue 1024 -ExpressionOperator IsEquals -Value
$clauseFile2 = New-CMDetectionClauseFile -FileName "abc" -Path "c:\abc" -PropertyType Size -ExpectedValue 2048 -ExpressionOperator IsEquals -Value
$clauseFile3 = New-CMDetectionClauseFile -FileName "abc" -Path "c:\abc" -PropertyType Size -ExpectedValue 4096 -ExpressionOperator IsEquals -Value

Set-CMScriptDeploymentType -ApplicationName "testApp1" -DeploymentTypeName "abc" -AddDetectionClause $clauseFile1,$clauseFile2,$clauseFile3 -DetectionClauseConnector @{"LogicalName"=$clauseFile3.Setting.LogicalName;"Connector"="OR"} -GroupDetectionClauses $clauseFile2.Setting.LogicalName, $clauseFile3.Setting.LogicalName

제거된 cmdlet

없음

사용되지 않는 cmdlet

없음

알려진 문제

다음 항목은 이 버전에서 확인되지 않는 Cmdlet 라이브러리의 알려진 문제입니다.

Get-CMAadConditionalAccessPolicy 및 Set-CMAadConditionalAccessPolicy

이러한 cmdlet에는 64비트 PowerShell 환경이 필요합니다.

해결 방법

  • 없음

Import-CMSecurityRole

파일을 찾는 동안 DirectoryNotFoundException 오류로 Cmdlet이 실패할 SecuredRoles.xsd수 있습니다.

해결 방법

  • 논리적 경로 또는 모듈 이름이 아닌 파일에 대해 ConfigurationManager.psd1 호출 Import-Module 합니다.

Set-CMSoftwareUpdatePoint

기본 SMS 공급자 개체가 변경된 경우에도 Configuration Manager 콘솔에 일정 변경 내용이 표시되지 않을 수 있습니다.

해결 방법

  • Configuration Manager 콘솔을 종료하고 다시 시작합니다.

리소스 추적 및 복구(베타)

이 버전은 PowerShell 런타임에서 사용하는 SMS 공급자 개체 추적을 지원하고 더 이상 필요하지 않은 경우 이러한 리소스를 정리하기 위해 새 cmdlet을 추가합니다.

  • Disconnect-CMTrackedObject
  • Start-CMObjectTracking
  • Stop-CMObjectTracking

실행할 Start-CMObjectTracking때 PowerShell 런타임은 Cmdlet 라이브러리 cmdlet에서 만든 개체를 추적 IResultObject 합니다. 수동으로 정리 .Dispose()되지 않은 cmdlet의 경우 개별 개체에 대해 사용하여 Disconnect-CMTrackedObject 회수합니다.

예시

# Reclaim a single tracked object
$o | Disconnect-CMTrackedObject

# Reclaim all tracked objects
Disconnect-CMTrackedObject -All

개체가 회수되면 개체 파이프라인을 통해 더 이상 다시 사용하거나 다른 cmdlet에 전달할 수 없습니다.

Stop-CMObjectTracking 개체 추적을 해제하는 데 사용할 수 있습니다. 이전에 할당된 개체는 활성 상태로 유지됩니다.

클레임되지 않은 리소스로 인해 SMS 공급자가 할당량 위반 오류를 발생시킬 수 있습니다. 이러한 할당량 문제는 일반적으로 대규모 SMS 공급자 개체 집합 또는 장기 실행 환경에서 작업할 때 발생합니다.

참고

이 기능은 실험적이며 향후 릴리스에서 변경 또는 제거될 수 있습니다. 옵트인이며 기본적으로 사용하도록 설정되지 않습니다.

Cmdlet 변경 내용

이 버전의 기존 cmdlet에는 다음과 같은 변경 내용이 적용되었습니다. 변경 내용은 새 기능, 버그 수정 또는 사용 중단일 수 있습니다. 일부 변경 내용이 손상될 수 있습니다. 이 섹션에 나열된 cmdlet 또는 기능 영역 중 하나를 사용하는 경우 변경 내용을 주의 깊게 검토하여 사용에 미치는 영향을 이해합니다.

Add-CMDistributionPoint

호환성이 손상되는 변경 내용

  • 배포 지점에 LEDBAT를 사용하도록 설정하는 새 EnableLedbat 매개 변수

Add-CMIntuneSubscription

수정된 버그

  • CompanyLogoPath 또는 CompanyLogoThemedPath를 400x100 및 750KB보다 큰 아트워크로 설정할 수 없습니다.

Add-CMManagementPoint

수정된 버그

  • EnableCloudGateway$true경우 CommunicationType을 지원되지 않는 값으로 설정할 수 있습니다.Http

Clear-CMPxeDeployment

수정된 버그

  • Cmdlet은 PXE 배포를 지우지 않습니다.

Get-CMDevice

수정된 버그

  • Cmdlet은 디바이스에 대한 예상 속성을 반환하지 않을 수 있습니다.

Get-CMHierarchySetting

호환성이 손상되는 변경 내용

  • 이제 Cmdlet은 클라이언트 업그레이드 및 사용량 현황 데이터 설정을 반환합니다.

New-CMAntimalwarePolicyDeployment

수정된 버그

  • Cmdlet을 사용하면 사용자 컬렉션을 배포 대상으로 지정할 수 있습니다.

New-CMComplianceRuleExistential

호환성이 손상되는 변경 내용

  • ExpectedValue 매개 변수는 이제 음수를 허용합니다.

New-CMConfigurationPolicyuDeployment

수정된 버그

  • 모든 매개 변수 집합에서 PostponeDateTime 매개 변수를 사용할 수 없음

New-CMUserDataAndProfileConfigurationItem

수정된 버그

  • DetectSlowLinkDisabled 매개 변수와 함께 사용할 $false 수 없음
  • DetectSlowLink가 있는 경우 일부 매개 변수를 설정할 수 없습니다.$true

New-CMWirelessProfile

호환성이 손상되는 변경 내용

  • 이제 EapType 매개 변수와 함께 'Fast'를 사용할 수 있습니다.
  • RememberUserCredentials 매개 변수를 사용하여 자격 증명을 설정하거나 지울 수 있습니다.

사용 중단

  • RememberCredentials 매개 변수가 RememberUserCredentials로 대체되었습니다.

Set-CMComplianceRuleExistential

호환성이 손상되는 변경 내용

  • ExpectedValue 매개 변수는 이제 음수를 허용합니다.

Set-CMDistributionPoint

호환성이 손상되는 변경 내용

  • 배포 지점에 대해 LEDBAT를 구성하는 새 EnableLedbat 매개 변수

Set-CMHierarchySetting

호환성이 손상되는 변경 내용

  • 사용량 현황 데이터 설정을 구성하기 위한 새 TelemetryLevel 매개 변수

Set-CMIntuneSubscription

수정된 버그

  • CompanyLogoPath 또는 CompanyLogoThemedPath를 400x100 및 750KB보다 큰 아트워크로 설정할 수 없습니다.

Set-CMManagementPoint

수정된 버그

  • EnableCloudGateway$true경우 CommunicationType을 지원되지 않는 값으로 설정할 수 있습니다.Http

Set-CMMsiDeploymentType

수정된 버그

  • AddDetectionClause 매개 변수는 기존 MSI 제품 코드 검색 절을 지웁니다.
  • AddRequirement 매개 변수는 "SQL_ERROR"로 실패할 수 있습니다.

호환성이 손상되는 변경 내용

  • 검색 절 그룹화에 대한 새 GroupDetectionClausesDetectionClauseConnector 매개 변수

Set-CMSoftwareUpdatePointComponent

호환성이 손상되는 변경 내용

  • 기능 및 비기능 대체를 구성하는 새 매개 변수 추가
  • 대체된 업데이트를 즉시 만료하는 새 ImmediatelyExpireSupersedenceForFeature 매개 변수
  • 대체된 업데이트 만료 기간을 구성하는 새 WaitForMonthFeature 매개 변수

Set-CMTSStepJoinDomainWorkgroup

수정된 버그

  • UserName 매개 변수는 형식을 지원하지 %VARIABLE% 않습니다.

Set-CMTSStepCaptureUserState

호환성이 손상되는 변경 내용

  • 이제 AddConfigFile 이 사용되고 ModeOption 이 인 경우 Cmdlet이 경고합니다. Standard

Set-CMUserDataAndProfileConfigurationItem

호환성이 손상되는 변경 내용

  • EnableSlowLink가 사용 가능한 경우 SlowLinkSyncMins 매개 변수가 사용될 때 Cmdlet이 경고$false

Set-CMWirelessProfile

호환성이 손상되는 변경 내용

  • 이제 EapType 매개 변수와 함께 'Fast'를 사용할 수 있습니다.
  • RememberUserCredentials 매개 변수를 사용하여 자격 증명을 설정하거나 지울 수 있습니다.

사용 중단

  • RememberCredentials 매개 변수가 RememberUserCredentials로 대체되었습니다.

Start-CMAntimalwarePolicyDeployment

수정된 버그

  • Cmdlet을 사용하면 사용자 컬렉션을 배포 대상으로 지정할 수 있습니다.