PowerShell ile Exchange Şeması sürümünü kontrol edin


Active Directory'nizin (AD) güncel olup olmadığını bilmek istiyorsunuz. Örneğin, daha yeni Exchange Server sürümüne yükseltme öncesinde ve sonrasında Exchange 2013/2016/2019 şema sürümünü kontrol edip doğrulamak istiyorsunuz. Bu yazıda PowerShell ile Exchange şeması sürümünün nasıl kontrol edileceğini öğreneceksiniz.

Exchange şeması sürüm bilgilerini neden kontrol etmelisiniz?

Exchange şeması sürümünü kontrol edip doğrulamak iyidir, örneğin:

  • Exchange Toplu Güncelleştirmesini yüklemeden önce

  • Yeni bir Exchange Sunucusu kurmadan önce

  • Exchange Server için Active Directory ve domainleri hazırladıktan sonra

PowerShell komutlarıyla Exchange şeması sürümünü alın

PowerShell'i yönetici olarak çalıştırın. Aşağıdaki komutları tek tek çalıştırın.

PS C:\> # Exchange Schema Version
PS C:\> $sc = (Get-ADRootDSE).SchemaNamingContext
PS C:\> $ob = "CN=ms-Exch-Schema-Version-Pt," + $sc
PS C:\> Write-Output "RangeUpper: $((Get-ADObject $ob -pr rangeUpper).rangeUpper)"
RangeUpper: 17003
 
PS C:\> # Exchange Object Version (domain)
PS C:\> $dc = (Get-ADRootDSE).DefaultNamingContext
PS C:\> $ob = "CN=Microsoft Exchange System Objects," + $dc
PS C:\> Write-Output "ObjectVersion (Default): $((Get-ADObject $ob -pr objectVersion).objectVersion)"
ObjectVersion (Default): 13242
 
PS C:\> # Exchange Object Version (forest)
PS C:\> $cc = (Get-ADRootDSE).ConfigurationNamingContext
PS C:\> $fl = "(objectClass=msExchOrganizationContainer)"
PS C:\> Write-Output "ObjectVersion (Configuration): $((Get-ADObject -LDAPFilter $fl -SearchBase $cc -pr objectVersion).objectVersion)"
ObjectVersion (Configuration): 16759

Get-ADversions komut dosyasıyla Exchange şema sürümünü edinin

Get-ADversions.ps1 komut dosyasını indirin ve C:\scripts\ klasörüne kaydedin.

Komut dosyasını çalıştırırken herhangi bir hata oluşmasını önlemek için dosyanın engellemesinin kaldırıldığından emin olun. PowerShell betiğini çalıştırırken dijital olarak imzalanmamış hata makalesinde daha fazlasını okuyun.

Diğer bir seçenek de aşağıdaki kodu kopyalayıp Not Defteri'ne yapıştırmaktır. Ona Get-ADversions.ps1 adını verin ve C:\scripts klasörüne yerleştirin.

# Exchange Schema Version
$sc = (Get-ADRootDSE).SchemaNamingContext
$ob = "CN=ms-Exch-Schema-Version-Pt," + $sc
Write-Output "RangeUpper: $((Get-ADObject $ob -pr rangeUpper).rangeUpper)"

# Exchange Object Version (domain)
$dc = (Get-ADRootDSE).DefaultNamingContext
$ob = "CN=Microsoft Exchange System Objects," + $dc
Write-Output "ObjectVersion (Default): $((Get-ADObject $ob -pr objectVersion).objectVersion)"

# Exchange Object Version (forest)
$cc = (Get-ADRootDSE).ConfigurationNamingContext
$fl = "(objectClass=msExchOrganizationContainer)"
Write-Output "ObjectVersion (Configuration): $((Get-ADObject -LDAPFilter $fl -SearchBase $cc -pr objectVersion).objectVersion)"

PowerShell'i yönetici olarak çalıştırın. Yürütme Politikasını Kısıtlanmamış olarak ayarladığınızdan emin olun. Y ve Enter'a basın. Bunu yapmazsanız script çalışmayacaktır.

PS C:\> Set-ExecutionPolicy Unrestricted

Execution Policy Change
The execution policy helps protect you from scripts that you do not trust. Changing the execution policy might expose you to the
security risks described in the about_Execution_Policies help topic at http://go.microsoft.com/fwlink/?LinkID=135170. Do you want to
change the execution policy?
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "N"): Y

C:\scripts\ klasörünün yolunu ayarlayın ve Get-ADversions.ps1 PowerShell betiğini çalıştırın.

PS C:\> cd C:\scripts\
PS C:\scripts> .\Get-ADversions.ps1
RangeUpper: 17003
ObjectVersion (Default): 13242
ObjectVersion (Configuration): 16759

PowerShell betiğini çalıştırdıktan sonra Active Directory sürümlerinin bir çıktısını göreceksiniz:

  • RangeUpper: 17003

  • ObjectVersion (Varsayılan): 13242

  • ObjectVersion (Yapılandırma): 16759

Bir sonraki adım şemayı kontrol etmek ve doğrulamaktır.

Active Directory sürümlerini kontrol edin ve doğrulayın

Exchange Active Directory sürümleri nasıl doğrulanır? Nesne sürümlerinin bir listesini almak için Exchange şema sürümleri sayfasını ziyaret edin.

Exchange 2019 şema sürümünün Exchange 2019 CU11 için güncel olduğunu doğrulayabiliriz.

Çözüm

PowerShell ile Exchange şeması sürümünü nasıl kontrol edeceğinizi ve doğrulayacağınızı öğrendiniz. Get-ADversions.ps1 PowerShell betiğini çalıştırın ve Active Directory sürümlerinin doğru şekilde gösterilip gösterilmediğini kontrol edin.

Bu makaleyi beğendiniz mi? Öyleyse DMZ veya LAN ağında Exchange Server'ı beğenebilirsiniz. Bizi takip etmeyi ve bu yazımızı paylaşmayı unutmayın.

İlgili makaleler