ユーザー状態移行ツール (USMT) の一般的な問題

次のセクションでは、USMT 10.0 ツールの実行時に発生する可能性がある一般的な問題について説明します。 USMT は、移行プロセス中に発生したエラーをさらに詳しく説明するログ ファイルを生成します。 これらのログは、移行エラーのトラブルシューティングに使用できます。

移行の問題を特定するための一般的なガイドライン

移行中に問題またはエラー メッセージが発生した場合は、次の一般的なガイドラインを使用して、問題の原因を特定できます。

  • ScanStateLoadState、UsmtUtils のログを調べて、正確な USMT エラー メッセージと Windows® アプリケーション プログラミング インターフェイス (API) エラー メッセージを取得します。 USMT のリターン コードとエラー メッセージの詳細については、「 リターン コード」を参照してください。 Windows システム エラー コードの詳細については、コマンド プロンプト ウィンドウに入力net.exe helpmsg <error_number>、エラー メッセージによって生成されるエラー コード番号<error_number>入力します。 システム エラー コードの詳細については、「システム エラー コード (0 ~ 499)」を参照してください。

    ほとんどの場合、 ScanStateLoadState ログは、USMT 移行が失敗する理由を示します。 移行をテストするときは、 /v:5 オプションを使用することをお勧めします。 この詳細レベルは、運用環境の移行で調整できます。ただし、詳細レベルを下げることで、運用環境の移行中に発生したエラーの診断が困難になる可能性があります。 ログ ファイルの出力をデバッガーに出力する場合は、5 より高い詳細レベルを使用できます。

    Note

    /v:5 オプションを指定して ScanState および LoadState ツールを実行すると、詳細なログ ファイルが作成されます。 このオプションを選択するとログ ファイルが大きくなりますが、さらに詳細な情報が移行エラーが発生した場所を特定するのに役立ちます。

  • usmtUtils ツールで /Verify オプションを使用して、圧縮された移行ストア内のファイルが破損しているかどうかを確認します。 詳細については、「 圧縮移行ストアの条件を確認するを参照してください。

  • UsmtUtils ツールで /Extract オプションを使用して、圧縮された移行ストアからファイルを抽出します。 詳細については、「 圧縮された USMT 移行ストアからファイルをトレースするを参照してください。

  • 移行を監視するには、 /Progress オプションを使用して進行状況ログを作成します。

  • ソース コンピューターと移行先コンピューターの場合は、オペレーティング システム情報、および Internet Explorer などのアプリケーションのバージョン、およびその他の関連するプログラムを取得します。 次に、問題を再現するために必要な正確な手順を確認します。 この情報は、何が間違っているかを理解し、テスト環境で問題を再現するのに役立つ場合があります。

  • LoadState ツールを実行した後にサインアウトします。 フォント、デスクトップの背景、スクリーン セーバーの設定など、一部の設定は、エンド ユーザーが次回ログオンするまで有効になりません。

  • ScanState または LoadState ツールを実行する前に、すべてのアプリケーションを閉じます。 ScanState または LoadState プロセス中に一部のアプリケーションが実行されている場合、USMT は一部のデータを移行しない可能性があります。 たとえば、Microsoft Outlook® が開いている場合、USMT は PST ファイルを移行しない可能性があります。

    Note

    /c オプションを指定しない限り、ファイルまたは設定を移行できない場合、USMT は失敗します。 /c オプションを指定すると、USMT はエラーを無視します。 ただし、移行されなかった使用中のファイルが検出されると、エラーがログに記録されます。

ユーザー アカウントの問題

次のセクションでは、一般的なユーザー アカウントの問題について説明します。 セクションを展開して、推奨される解決策を確認します。

移行先のコンピューターでローカル アカウントを作成するときに問題が発生する

解決策: アカウントの作成とローカル アカウントの移行の詳細については、「 ユーザー アカウントの移行」を参照してください

すべてのユーザー アカウントが移行先のコンピューターに移行されたわけではありません

原因/解決策 この問題には次の 2 つの原因が考えられます。

Windows 7、Windows 8、または Windows 10 で ScanState および LoadState ツールを実行する場合は、管理者資格情報を持つアカウントから管理者モードで実行し、指定されたすべてのユーザーが確実に移行されるようにする必要があります。 管理者モードで実行するには:

  1. Start>All Programs>Accessories を選択します。

  2. [コマンド プロンプト] を右クリックします。

  3. [管理者として実行] をクリックします。

  4. LoadState.exeまたはScanState.exeコマンドを指定します。

USMT を管理者モードで実行しない場合は、ログオンしているユーザー プロファイルのみが移行に含まれます。

使用されていないコンピューター上のユーザー アカウントは移行されません。 たとえば、User1 をコンピューターに追加しても User1 がログオンしない場合、USMT は User1 アカウントを移行しません。

除外したユーザー アカウントが移行先コンピューターに移行されました

原因: 指定したコマンドの ui/ue オプションが競合している可能性があります。 ユーザーが /ui オプションと同時に /ue または /uel オプションで指定されている場合、ユーザーは移行に含まれます。 たとえば、 /ui:domain1\* /ue:domain1\user1を指定した場合、 /ui オプションが優先されるため、User1 が移行されます。

解決策: /ui オプションと /ue オプションを一緒に使用する方法の詳細については、 ScanState 構文 記事の例を参照してください。

/uel オプションを使用していますが、多くのアカウントがまだ移行に含まれています

原因: /uel オプションは、ユーザーのNTUser.dat ファイルの最終更新日によって異なります。 この最終更新日がユーザーの最終サインイン日と一致しない可能性があるシナリオがあります。

解決策: これは、 /uel オプションの制限です。 /ue オプションを使用して、これらのユーザーを手動で除外することが必要になる場合があります。

LoadState ツールは、エラーをリターン コード 71 として報告し、移行テスト中にユーザー プロファイルを復元できません

原因: 移行テスト中に、テスト コンピューターで ScanState ツールを実行し、同じコンピューターで LoadState ツールをテストするためにユーザー プロファイルを削除すると、レジストリに競合するキーが存在する可能性があります。 net use コマンドを使用してユーザー プロファイルを削除すると、そのプロファイルに関連付けられているフォルダーとファイルは削除されますが、レジストリ キーは削除されません。

解決策: ユーザー プロファイルを削除するには、コントロール パネルの User Accounts 項目を使用します。 ユーザー プロファイルの不完全な削除を修正するには:

  1. 管理者特権でのコマンド プロンプトで「 regedit.exe 」と入力して、レジストリ エディターを開きます。

  2. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList に移動します。

    各ユーザー プロファイルは、 ProfileListのシステム識別子キーに格納されます。

  3. 削除しようとしているユーザー プロファイルのキーを削除します。

移行前に暗号化されなかったファイルは、LoadState ツールの実行に使用されたアカウントで暗号化されるようになりました

原因: ScanState ツールは、暗号化されたファイルと暗号化ファイル システム (EFS) 証明書を移行する /EFS:copyraw オプションを使用して実行されました。 暗号化属性は移行されたフォルダーに設定されましたが、その属性は移行前にそのフォルダーのファイルコンテンツから削除されました。

解決策: 暗号化されたファイルと EFS 証明書を含む移行に ScanState ツールを使用する前に、コマンド プロンプトで暗号ツールを実行して、ファイルとフォルダーの暗号化設定を確認および変更できます。 暗号化されていないファイルを含むフォルダーから暗号化属性を削除するか、暗号化されたフォルダー内のすべてのファイルの内容を暗号化する必要があります。

既に正しく移行されていないファイルから暗号化を削除するには、 LoadState ツールの実行に使用したアカウントを使用してコンピューターにサインインし、影響を受けるファイルから暗号化を削除する必要があります。

LoadState ツールは、エラーをリターン コード 71 として報告し、Windows エラー 2202 をログ ファイルに報告します。

原因: ローカル ユーザー プロファイルのオフライン移行中にコンピューター名が変更されました。

解決策: LoadState ツールを実行してユーザーの新しい名前を指定するときに、/mu オプションを使用できます。 たとえば、 にします。

LoadState.exe  /i:MigApp.xml /i:MigDocs.xml \\server\share\migration\mystore 
/progress:Progress.log /l:LoadState.log /mu:fareast\user1:farwest\user1

コマンド ラインの問題

以降のセクションでは、一般的なコマンド ラインの問題について説明します。 セクションを展開して、推奨される解決策を確認します。

"使用エラー: 256 文字を超えるコマンド ライン オプションでファイル パスを指定できません" というエラー メッセージが表示されました。

原因: パスの長さは絶対パスに基づいて計算されるため、長いストアまたはファイル パスを指定しない場合でも、このエラー メッセージが表示されることがあります。 たとえば、C:\Program Files\USMT40 から **ScanState**.exe /o store コマンドを実行すると、パスの長さを取得するために C:\Program Files\USMT40 の各文字が "store" の長さに追加されます。

解決策: パスの合計長が 256 文字を超えないようにします。 パスの合計長には、ストア パスと現在のディレクトリが含まれます。

次のエラー メッセージが表示されました:"USMT はログ ファイルを作成できませんでした。 ログ ディレクトリへの書き込みアクセス権があることを確認してください。

原因: 共有ネットワーク リソースから ScanState または LoadState ツールを実行している場合、 /lを指定しないと、このエラー メッセージが表示されます。

解決策: このシナリオでこの問題を解決するには、 /l:ScanState.log または /l:LoadState.log オプションを指定します。

XMLファイルに関する問題

以下のセクションでは、XML ファイルの一般的な問題について説明します。 セクションを展開して、推奨される解決策を確認します。

/genconfigオプションを使用してConfig.xmlファイルを作成しましたが、MigApp.xmlに含まれるアプリケーションとコンポーネントはごくわずかです。 Config.xmlに同じアプリケーションがすべて含まれていないのはなぜですか?

原因: Config.xml には、.xml ファイルの両方にあり、 /genconfig オプションを実行したときにコンピューターにインストールされるオペレーティング システム コンポーネント、アプリケーション、およびユーザー ドキュメント セクションのみが含まれます。 それ以外の場合、これらのアプリケーションとコンポーネントは Config.xml ファイルに表示されません。

解決策: /genconfig オプションを実行する前に、必要なすべてのアプリケーションをコンピューターにインストールします。 次に、すべての.xml ファイルで ScanState.exe を実行します。 たとえば、次のコマンドを実行します。

ScanState.exe /genconfig:Config.xml /i:MigDocs.xml /i:MigApp.xml /v:5 /l:ScanState.log

作成したカスタム .xml ファイルに問題があり、構文が正しいことを確認できません

解決策: XML スキーマ ファイル MigXML.xsd を XML オーサリング ツールに読み込むことができます。 MigXML.xsd は USMT に含まれています。 例については、 Visual Studio 開発センターを参照してください。 次に、作成ツールに.xml ファイルを読み込んで、構文エラーがあるかどうかを確認します。 XML 要素の使用方法の詳細については、「 USMT XML リファレンスを参照してください。

私はMigXMLヘルパー関数を使用していますが、移行が期待どおりに動作していません。 この問題操作方法トラブルシューティングしますか?

原因: 通常、この問題はヘルパー関数で使用される構文が正しくなされていないことが原因で発生します。 成功リターン コードを受け取りますが、移行するファイルが収集または適用されなかったか、予想どおりに収集または適用されませんでした。

解決策: ScanState または LoadState ログで、MigXML ヘルパー関数を含むコンポーネント名または MigXML ヘルパー関数のタイトルを検索して、関連する警告をログ ファイルで見つけられるようにする必要があります。

移行に関する問題

以降のセクションでは、移行に関する一般的な問題について説明します。 セクションを展開して、推奨される解決策を確認します。

除外するように指定したファイルがまだ移行中です

原因: ファイルを含む別のルールが存在する可能性があります。 より具体的なルールまたは競合するルールがある場合、ファイルは移行に含まれます。

解決策: 詳細については、「Log Filesの「Conflicts and Precedence」セクションを参照してください。

移動先のコンピューター上の特定の場所にフォルダーを移動する規則を指定しましたが、正しく移行されていません

原因: XML 構文にエラーが発生している可能性があります。

解決策: USMT XML スキーマ (MigXML.xsd) を使用して、移行.xmlファイルを書き込んで検証できます。 次の記事の XML の例も参照してください。

競合と優先順位

ファイルと設定を除外する

ファイルと設定を再ルーティングする

ファイルと設定を含める

カスタム XML の例

LoadState が完了すると、新しいデスクトップの背景がターゲット コンピューターに表示されません。

この問題には、3 つの一般的な原因があります。

原因: フォント、デスクトップの背景、スクリーン セーバーの設定などの一部の設定は、 LoadState によって適用されず、対象のコンピューターが再起動されるまで適用されません。

解決策: この問題を解決するには、サインアウトしてから再度ログオンして、移行されたデスクトップの背景を確認します。

移行にMigApp.xmlを含めていましたが、一部の PST ファイルが移行されていません

原因: MigApp.xml ファイルは、Outlook プロファイルにリンクされている PST ファイルのみを移行します。

解決策: Outlook プロファイルにリンクされていない PST ファイルを移行するには、これらのファイルをキャプチャする別の移行ルールを作成する必要があります。

USMT でスタート画面のレイアウトが移行されない

説明: USMT を使用して、Windows 10 の 1 つのインストールから別のハードウェア上の Windows 10 の別のインストールにプロファイルを移行します。 移行後、ユーザーは新しいデバイスにサインインし、以前に構成したスタート メニューレイアウトがありません。

原因: Windows 10 バージョン 1607 以降のスタート メニューのコード変更は、この USMT 関数と互換性がありません。

解決策: 次の回避策を使用できます。

  1. ユーザーがサインインした状態で、次の Windows PowerShell コマンドを使用してスタート画面のレイアウトをバックアップします。 必要に応じて、別のパスを指定できます。

    Export-StartLayout -Path "C:\Layout\user1.xml"
    
  2. USMT を使用してユーザーのプロファイルを移行します。

  3. ユーザーが新しいデバイスにサインインする前に、次の Windows PowerShell コマンドを使用してスタート画面のレイアウトをインポートします。

    Import-StartLayout -LayoutPath "C:\Layout\user1.xml" -MountPath %systemdrive%
    

この回避策により、既定のユーザーのスタート画面のレイアウトが変更されます。 この回避策は、一括移行やマルチユーザー デバイスにはスケーリングされませんが、一部のシナリオのブロックを解除する可能性があります。 他のユーザーがデバイスにサインオンする場合は、既定のユーザー プロファイルからlayoutmodification.xmlを削除する必要があります。 それ以外の場合、そのデバイスにサインオンするすべてのユーザーは、インポートされたスタート画面のレイアウトを使用します。

オフライン移行の問題

次のセクションでは、一般的なオフライン移行の問題について説明します。 セクションを展開して、推奨される解決策を確認します。

一部のシステム設定がオフライン移行で移行されない

原因: デスクトップの背景やネットワーク プリンターなどの一部のシステム設定は、オフライン移行ではサポートされていません。 詳細については、「 USMT が移行する内容」を参照してください。

解決策: オフライン移行では、これらのシステム設定を手動で復元する必要があります。

ScanState ツールがリターン コード 26 で失敗する

原因: リターン コード 26 の一般的な原因は、ソース コンピューターで一時プロファイルがアクティブになっているということです。 このプロファイルは c:\users\temp にマップされます。 ScanState ログには、 MigStartupOfflineCaught User プロファイル重複 SID エラー 含まれる例外が表示されます

解決策: コンピューターを再起動して一時プロファイルを削除するか、 MIG_FAIL_ON_PROFILE_ERROR =0 を設定してエラーをスキップし、一時プロファイルを除外することができます。

ユーザー プロファイルを移行するための含めるルールと除外ルールがオンラインと同じオフラインで動作しない

原因: オフラインの場合、DNS サーバーを照会してユーザー名と SID マッピングを解決することはできません。

解決策: ScanState ツールを実行するときに、セキュリティ識別子 (SID) を使用してユーザーを含めます。 例えば次が挙げられます。

ScanState.exe /ui:S1-5-21-124525095-708259637-1543119021*

SID の末尾にあるワイルドカード (*) は、 SID_Classes キーも移行します。

汎用ユーザーまたはグループを識別する SID のパターンを使用することもできます。 たとえば、 /ue:*-500 オプションを使用して、ローカル管理者アカウントを除外できます。 Windows SID の詳細については、「 Security 識別子」を参照してください。

64 ビット システムで ScanState ツールを実行した後、ディスクをワイプするスクリプトが失敗する

原因: ScanState ツールの実行が完了した後、HKLM レジストリ ハイブがアンロードされません。

解決策: ScanState ツールの実行が完了した後、コマンド プロンプトでコンピューターを再起動するか、レジストリ ハイブをアンロードします。 たとえば、コマンド プロンプトで次のように入力します。

reg.exe unload hklm\$dest$software

次のセクションでは、ハード リンク移行に関する一般的な問題について説明します。 セクションを展開して、推奨される解決策を確認します。

EFS ファイルが新しいパーティションに復元されない

原因: EFS ファイルは、ハード リンクを使用して新しいパーティションに移動できません。 /efs:hardlinkコマンド ライン オプションは、同じパーティションに移行されたファイルにのみ適用されます。

解決策: /efs:copyraw コマンド ライン オプションを使用して、ハード リンクを作成するのではなく、移行中に EFS ファイルをコピーするか、ハード リンク ストアから EFS ファイルを手動でコピーします。

原因: 移行ストアには、ロックされたファイルへのハード リンクが含まれています。

解決策: UsmtUtils ツールを使用してストアを削除するか、ストア名を変更します。 たとえば、コマンド プロンプトで次のように入力します。

UsmtUtils.exe /rd <storedir>

コンピューターも再起動する必要があります。

データ コレクション

Microsoft サポートの支援が必要な場合は、「展開関連の問題について TSS を使用して情報を収集する」に記載している手順に従って情報を収集することをお勧めします。

ユーザー状態移行ツール (USMT) のトラブルシューティング

よく寄せられる質問

リターン コード

UsmtUtils 構文