Bu bölümdeki bilgiler, Windows Server Geçiş Araçları cmdlet'ler kullanılarak yapılan geçişin başarılı olup olmadığını belirlemenize yardımcı olabilir. Hatalar oluştuysa, hataların kaynağını araştırmak için bu bölümdeki bilgileri kullanabilirsiniz.

Geçiş sorunlarını giderme

Windows Server Geçiş Araçları dağıtım günlüğü dosyası %windir%\Logs\SmigDeploy.log konumunda bulunur. Aşağıdaki konumlarda başka Windows Server Geçiş Araçları günlük dosyaları da oluşturulur.

  • %windir%\Logs\ServerMigration.log

  • Windows Server 2008 ve Windows Server 2008 R2 işletim sisteminde: %localappdata%\SvrMig\Log

  • Windows Server 2003'te: %userprofile%\Local Settings\Application Data\SvrMig\Log

Yukarıdaki konumlarda geçiş günlüğü dosyaları oluşturulamazsa, %temp% konumunda ServerMigration.log ve SmigDeploy.log oluşturulur ve %windir%\System32 konumunda diğer günlükler oluşturulur.

Windows Server Geçiş Araçları sonuç nesnelerinin içeriğini görüntüleme

Tüm Windows Server Geçiş Araçları cmdlet'leri, sonuçları nesne olarak döndürür. Sonuç nesnelerini kaydedebilir, geçirilen ayarlar ve veriler hakkında daha fazla bilgi için bu nesnelerde sorgulama yapabilirsiniz. Sonuç nesnelerini ayrıca başka Windows PowerShell komutları ve komut dosyaları için girdi olarak da kullanabilirsiniz.

Sonuç nesnesi açıklamaları

Windows Server Geçiş Araçları Import-SmigServerSetting ve Export-SmigServerSetting cmdlet'leri, sonuçları bir MigrationResult nesneleri listesi halinde verir. Her MigrationResult nesnesi, cmdlet tarafından işlenen veri veya ayarla ilgili bilgileri, işlemin sonucunu ve varsa ilgili hata ve uyarı iletilerini içerir. Aşağıdaki tabloda bir MigrationResult nesnesinin özellikleri açıklanmıştır.

Özellik adıTürTanım

ItemType

Enum

Geçirilen öğenin türü. File, Folder, RegistryKey, Share ve EncryptedFile değerlerini alabilir.

ID

Dize

Geçirilen öğenin kimliği. Değerlere örnek olarak Local User, Local Group ve DHCP verilebilir.

Başarılı

Boole

Geçiş başarılı olduysa True değeri, tersi durumda False görüntülenir.

DetailsList

<MigrationResultDetails> Listesi

MigrationResultDetails nesnelerinin listesi.

Send-SmigServerData ve Receive-SmigServerData cmdlet'leri, sonuçları bir MigrationDataResult nesneleri listesi şeklinde verir. Her MigrationDataResult nesnesi, cmdlet tarafından işlenen veri veya paylaşımla ilgili bilgileri, işlemin sonucunu ve varsa uyarı iletilerini ve diğer ilgili bilgileri içerir. Aşağıdaki tabloda bir MigrationDataResult nesnesinin özellikleri açıklanmıştır.

Özellik adıTürTanım

ItemType

Enum

Geçirilen öğenin türü. File, Folder, Share ve Encrypted File değerlerini alabilir.

SourceLocation

Dize

Öğenin, yol adı olarak gösterilen kaynak konumu.

DestinationLocation

Dize

Öğenin, yol adı olarak gösterilen hedef konumu.

Başarılı

Boole

Geçiş başarılı olduysa True değeri, tersi durumda False görüntülenir.

Boyut

Tamsayı

Öğenin bayt cinsinden boyutu.

ErrorDetails

<MigrationResultDetails> Listesi

Tek bir MigrationResultDetails nesnesi.

Hata

Enum

Oluşan hataların numaraları.

WarningMessageList

Liste <Dize>

Uyarı iletilerinin listesi.

Aşağıdaki tabloda MigrationResult ve MigrationDataResult nesnelerinin her ikisi için ortak olan MigrationResultDetails nesnesi içindeki nesnelerin özellikleri açıklanmıştır.

Özellik adıTürTanım

Id

Dize

Öğeyle ilgili geçiş ayarının adı. Değerlere örnek olarak IPConfig ve DNS verilebilir. Bu özellik veri geçişi için boştur.

İletiler

Liste <Dize>

Ayrıntılı olay iletilerinin listesi.

DetailCode

Tamsayı

Her olay iletisiyle ilgili hata veya uyarı kodu.

Önem derecesi

Enum

Olaylar oluştuysa, bir olayın önem derecesi. Değerlere örnek olarak Information, Error ve Warning verilebilir.

Başlık

Dize

Sonuç nesnesinin başlığı. Değerlere örnek olarak, IP yapılandırmasıyla ilgili NIC fiziksel adresi veya yerel kullanıcı geçirme işlemindeki kullanıcı adı verilebilir.

Örnekler

Aşağıdaki örneklerde, sonuç nesneleri listesinin bir değişkende nasıl saklanacağı ve geçiş tamamlandıktan sonra sonuç nesneleri içeriğini döndürmek amacıyla bu değişkenin bir sorguda nasıl kullanılacağı gösterilmiştir.

Sonuç nesneleri listesini sorgular için değişken olarak saklama
  1. Bir cmdlet çalıştırmak ve sonucu bir değişkende saklamak için aşağıdaki biçimde bir komut yazın ve Enter tuşuna basın.

    $VariableName = $(Cmdlet)

    Aşağıda bir örnek verilmiştir.

    $ImportResult = $(Import-SmigServerSetting -FeatureId DHCP -User all -Group -Path D:\rmt\DemoStore -force –Verbose)

    Bu komut, Import-SmigServerSetting cmdlet'ini birkaç parametre belirtilmiş olarak çalıştırır ve sonuç nesnelerini ImportResult değişkeninde saklar.

  2. Import-SmigServerSetting cmdlet'inin çalışması tamamlandığında, aşağıdaki biçimde bir komut yazıp Enter tuşuna basarak, sonuç nesnesinde yer alan bilgileri döndürün.

    $VariableName

    Aşağıdaki örnekte, değişken ImportResult adını taşımaktadır.

    $ImportResult

    Bu komut, 1. adımda gösterilen örnekte Import-SmigServerSetting tarafından döndürülen sonuç nesnelerinde yer alan bilgileri döndürür. Aşağıda, ImportResult değişkeni çağrılarak görüntülenen çıktıya bir örnek verilmiştir.

               ItemType  ID                              Success  DetailsList
               --------  --                              -------  -----------
              OSSetting  Local User                         True  {Local User, Loc...
              OSSetting  Local Group                        True  {Local Group, Lo...
         WindowsFeature  DHCP                               True  {}
    

    Yukarıdaki örneğin her satırı, Import-SmigServerSetting cmdlet'i kullanılarak geçirilen bir öğeye ait geçiş sonucunu gösterir. Sütun başlık adları, MigrationResult nesnelerinin özellikleridir. 3. adım ve sonrasındaki örneklerde görüldüğü gibi, sonuç nesneleri hakkında daha fazla ayrıntı döndürmek amacıyla bu özellikleri başka bir komutta birleştirebilirsiniz.

  3. Listedeki tüm sonuç nesnelerine ait belirli bir özelliği görüntülemek için, aşağıdaki biçimde bir komut yazın ve Enter tuşuna basın.

    $<DeğişkenAdı>| Select-Object -ExpandProperty <ÖzellikAdı>

    Aşağıda bir örnek verilmiştir.

    $importResult | Select-Object -ExpandProperty DetailsList
  4. Windows PowerShell cmdlet'leri kullanarak sonuç nesnelerini çözümlemek için daha gelişmiş sorgular çalıştırabilirsiniz. Aşağıda örnekler verilmiştir.

    • Aşağıdaki komut yalnızca Local User kimliğine sahip sonuç nesnelerinin ayrıntılarını döndürür.

      $ImportResult | Where-Object { $_.ID -eq "Local User" } | Select-Object -ExpandProperty DetailsList
    • Aşağıdaki komut yalnızca, Local User kimliğine sahip olan ve ileti önem derecesi Warning olan sonuç nesnelerinin ayrıntılarını döndürür.

      $ImportResult | Where-Object { $_.ID -eq "Local User" } | Select-Object -ExpandProperty DetailsList | ForEach-Object { if ($_.Severity -eq "Warning") {$_} }
    • Aşağıdaki komut yalnızca, Local User kimliğine sahip olan ve aynı zamanda Remote Desktop Users başlığını taşıyan sonuç nesnelerinin ayrıntılarını döndürür.

      $ImportResult | Where-Object { $_.ID -eq "Local Group" } | Select-Object -ExpandProperty DetailsList | ForEach-Object { if ($_.Title -eq "Remote Desktop Users") {$_} }

Sonuçları sorgulama hakkında daha fazla bilgi

Yukarıdaki örneklerde kullanılan cmdlet'ler hakkında daha fazla bilgi için, aşağıdaki ek kaynaklara bakın.

Windows PowerShell komut dosyası çalıştırma teknikleri hakkında daha fazla bilgi için, Microsoft Script Center Web sitesindeki (https://go.microsoft.com/fwlink/?LinkId=134862) Windows PowerShell ile Neler Yapabilirim? – Komut Dosyası Çalıştırma Teknikleri (sayfa İngilizce olabilir) bölümüne bakın.