С помощью представленных в данном разделе сведений можно определить, был ли перенос, выполненный с помощью командлетов Средства миграции Windows Server, успешным или завершился неудачно. В случае сбоя эта информация может быть полезна для определения причин ошибок.

Устранение неполадок, возникающих в процессе переноса

Файл журнала развертывания Средства миграции Windows Server находится в каталоге %windir%\Logs\SmigDeploy.log. Дополнительные файлы журнала Средства миграции Windows Server создаются в следующих расположениях.

  • %windir%\Logs\ServerMigration.log

  • В Windows Server 2008 и Windows Server 2008 R2: %localappdata%\SvrMig\Log

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

Если файлы журнала переноса не могут быть созданы в указанных выше каталогах, ServerMigration.log и SmigDeploy.log создаются в каталоге %temp%, а другие файлы журнала - в каталоге %windir%\System32.

Просмотр содержимого объектов результатов средств переноса Windows Server

Все командлеты Средства миграции Windows Server возвращают результаты в виде объектов. Их можно сохранить и запросить дополнительные сведения о перенесенных параметрах и данных. Кроме того, эти объекты можно использовать в качестве входных данных для других команд и сценариев Windows PowerShell.

Описания объектов результатов

Командлеты Средства миграции Windows Server Import-SmigServerSetting и Export-SmigServerSetting возвращают результаты в список объектов MigrationResult. Каждый объект MigrationResult содержит сведения о данных или параметре, обрабатываемом командлетом, результат действий, связанные сообщения об ошибках и предупреждения. В следующей таблице описаны свойства объекта MigrationResult.

Имя свойства Тип Определение

ItemType

Enum

Тип перенесенного элемента. Значения: File, Folder, RegistryKey, Share и EncryptedFile.

ID

Строка

Идентификатор перенесенного элемента. Примеры значений: Local User, Local Group и DHCP.

Success

Логическое

Значение True отображается в случае успешного переноса; в противном случае отображается False.

DetailsList

Список <MigrationResultDetails>

Список объектов MigrationResultDetails.

Командлеты Send-SmigServerData и Receive-SmigServerData возвращают результаты в список объектов MigrationDataResult. Каждый объект MigrationDataResult содержит сведения о данных или общем ресурсе, обрабатываемом командлетом, результат действий, связанные сообщения об ошибках и предупреждения. В следующей таблице описаны свойства объекта MigrationDataResult.

Имя свойства Тип Определение

ItemType

Enum

Тип перенесенного элемента. Значения: File, Folder, Share и Encrypted File.

SourceLocation

Строка

Исходное расположение элемента, отображаемое в виде имени пути.

DestinationLocation

Строка

Конечное расположение элемента, отображаемое в виде имени пути.

Success

Логическое

Значение True отображается в случае успешного переноса; в противном случае отображается False.

Размер

Целое

Размер элемента в байтах.

ErrorDetails

Список <MigrationResultDetails>

Один объект MigrationResultDetails.

Ошибка

Перечисление

Перечисление возникших ошибок.

WarningMessageList

Список <String>

Список предупреждающих сообщений.

В следующей таблице представлено описание свойств объектов в объекте MigrationResultDetails, являющихся общими для объектов MigrationResult и MigrationDataResult.

Имя свойства Тип Определение

Id

Строка

Имя параметра переноса, связанного с элементом. Примеры значений: IPConfig и DNS. Это свойство пустое для переноса данных.

Сообщения

Список <String>

Список подробных сообщений о событиях.

DetailCode

Целое

Код ошибки или предупреждения, связанных с каждым сообщением о событии.

Серьезность

Перечисление

Уровень серьезности события (при возникновении событий). Примеры значений: Information, Error и Warning.

Название

Строка

Название объекта результата. Примеры значений: физический адрес NIC IP-конфигурации или имя пользователя для переноса локального пользователя.

Примеры

В следующих примерах показан процесс сохранения списка объектов результатов в переменной и последующее использование переменной в запросе для возвращения содержимого этих объектов по завершении переноса.

Сохранение списка объектов результатов в качестве переменной для запросов
  1. Чтобы выполнить командлет и сохранить результат в переменной, введите команду в следующем формате, а затем нажмите клавишу ВВОД.

    $VariableName = $(Cmdlet)

    Пример приведен ниже.

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

    Эта команда выполняет командлет Import-SmigServerSetting с несколькими заданными параметрами, а затем сохраняет объекты результатов в переменной ImportResult.

  2. По завершении действий командлета Import-SmigServerSetting следует получить сведения, содержащиеся в объекте результата. Для этого введите команду в следующем формате, после чего нажмите клавишу ВВОД.

    $VariableName

    В следующем примере переменной присвоено имя ImportResult.

    $ImportResult

    Выполнение этой команды возвращает сведения, содержащиеся в объектах результатов, полученных с помощью Import-SmigServerSetting в примере на шаге 1. В следующем примере показан результат, отображаемый с помощью вызова переменной ImportResult.

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

    Каждая строка в предыдущем примере является результатом переноса элемента, который был перенесен с использованием командлета Import-SmigServerSetting. Имена заголовков столбцов являются свойствами объектов MigrationResult. Эти свойства можно объединить в другой команде для возвращения более подробных сведений об объектах результатов, как показано в примерах на шаге 3 и ранее.

  3. Для отображения конкретного свойства для всех объектов результата списка введите команду в следующем формате, а затем нажмите клавишу ВВОД.

    $<имя_переменной>| Select-Object -ExpandProperty <имя_свойства>

    Пример приведен ниже.

    $importResult | Select-Object -ExpandProperty DetailsList
    
  4. Для анализа объектов результатов с помощью командлетов Windows PowerShell можно выполнить дополнительные расширенные запросы. Примеры приведены ниже.

    • Следующая команда возвращает только те сведения объектов результатов, которые содержат идентификатор Local User.

      $ImportResult | Where-Object { $_.ID -eq "Local User" } | Select-Object -ExpandProperty DetailsList
      
    • Следующая команда возвращает только те сведения объектов результатов с идентификатором Local User, уровень серьезности сообщения которых имеет значение Warning.

      $ImportResult | Where-Object { $_.ID -eq "Local User" } | Select-Object -ExpandProperty DetailsList | ForEach-Object { if ($_.Severity -eq "Warning") {$_} }
      
    • Следующая команда возвращает только сведения объектов результатов с идентификатором Local User и названием Remote Desktop Users.

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

Дополнительные сведения о результатах запроса

Дополнительные сведения о командлетах, использованных в предыдущих примерах, см. в следующих материалах.

  • Where-Object на веб-сайте центра разработки сценариев Майкрософт (http://go.microsoft.com/fwlink/?LinkId=134853).

  • Select-Object на веб-сайте центра разработки сценариев Майкрософт (http://go.microsoft.com/fwlink/?LinkId=134858).

  • ForEach-Object на веб-сайте центра разработки сценариев Майкрософт (http://go.microsoft.com/fwlink/?LinkId=134860).

Дополнительные сведения о способах создания сценариев Windows PowerShell см. в статье Возможности Windows PowerShell - способы создания сценариев на веб-сайте центра разработки сценариев Майкрософт (http://go.microsoft.com/fwlink/?LinkId=134862).