PC のリカバリ機能を展開する
PC のリカバリ機能は、Windows 10 および Windows 11 のデスクトップ エディション (Home、Pro、Enterprise、Education) に含まれていますが、次のカスタマイズを含む PC を展開するには、追加の手順を実行する必要があります。
- Windows デスクトップ アプリケーション
- Windows の設定。カスタマイズされた OOBE 画面や [スタート] メニューなど。
- カスタマイズされたパーティション レイアウト。
これらの手順では、リセット中に独自のスクリプトを追加して、ログをキャプチャしたりその他のクリーンアップ タスクを実行したりする方法も示しています。
前提条件
以下の手順を完了するには、Windows アセスメント & デプロイメント キット (ADK) と WinPE アドオンを含むテクニシャン PC が必要です。 ADK をインストールする場合は、以下のオプションを選択してください。
- 展開ツール
- イメージングおよび構成デザイナー (ICD)
- ユーザー状態移行ツール (USMT)
次のものも必要です。
- ドライブ サイズが 100 GB 以上の対象 PC
- Windows 10 または Windows 11 デスクトップ エディションのイメージ (install.wim)
- Windows RE ブート イメージ (Winre.wim) (Windows インストール イメージから抽出)。
展開プロセス全体の概要については、デスクトップ製造ガイドに関するページを参照してください。
Windows デスクトップ アプリケーションがインストールされた後で、それらをキャプチャするように ScanState ツールを準備するには、以下の手順に従います。
手順 1: ScanState ツールを準備する
テクニシャン PC で、Windows ADK ファイルを Windows ユーザー状態移行ツール (USMT) と Windows セットアップから作業フォルダーにコピーします。 ターゲット デバイスのアーキテクチャと一致している必要があります。 サブフォルダーをコピーする必要はありません。
md C:\ScanState_amd64 xcopy /E "C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\User State Migration Tool\amd64" C:\ScanState_amd64 xcopy /E /Y "C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Setup\amd64\Sources" C:\ScanState_amd64
作業フォルダーの内容をネットワークの場所または USB フラッシュ ドライブにコピーします。
追加のドライバーと言語パックが必要な場合は、以下の手順に従って、Windows RE ブート イメージをカスタマイズします。
手順 2: Windows RE ブート イメージを抽出してカスタマイズする (省略可能)
テクニシャン PC で [スタート] をクリックし、「展開」と入力します。 [展開およびイメージング ツール環境] を右クリックし、[管理者として実行] を選びます。
[展開およびイメージング ツール環境] で、Windows イメージとそのマウント ポイントを保存するフォルダー構造を作成します。
Mkdir C:\OS_image\mount
Windows RE ブート イメージとそのマウント ポイントを保存するフォルダー構造を作成します。
Mkdir C:\winre_amd64\mount
DISM を使用して、Windows イメージ (install.wim) をフォルダー \OS_image\mount にマウントします。
Dism /mount-image /imagefile:C:\OS_image\install.wim /index:1 /mountdir:C:\OS_image\mount
ここで、
Index:1
は、Install.wim ファイル内の選択したイメージのインデックスです。マウントされた Windows イメージから新しいフォルダーに Windows RE イメージをコピーします。
xcopy /H C:\OS_image\mount\windows\system32\recovery\winre.wim C:\winre_amd64
Windows イメージのマウントを解除します。 ヒント: Windows イメージで他の変更を行っていない場合は、
/discard
オプションを使用して、イメージのマウントをより迅速に解除できます。Dism /unmount-image /mountdir:C:\OS_image\mount /discard
編集用に、Windows RE ブート イメージをマウントします。
Dism /mount-image /imagefile:C:\winre_amd64\winre.wim /index:1 /mountdir:C:\winre_amd64\mount
ここで、
Index:1
は、Winre.wim ファイル内の選択したイメージの番号です。Winre.wim ファイルが Install.wim ファイルから抽出されたら、Windows RE ブート イメージをカスタマイズできます。
言語パック、ブートに不可欠なデバイス ドライバー、入力デバイス ドライバーを Windows RE ブート イメージに追加します。 詳細については、「Windows RE のカスタマイズ」を参照してください。
カスタマイズをコミットし、イメージのマウントを解除します。
Dism /unmount-image /mountdir:C:\winre_amd64\mount /commit
Windows 10 のすべてのエディション (Windows 10 Mobile を含む) に共通する設定のみをカスタマイズする場合は、以下の手順に従って、回復中に復元する設定を指定するプロビジョニング パッケージを作成します。
手順 3: (省略可能) 復元する設定を含むプロビジョニング パッケージを作成する
- テクニシャン PC で、Windows イメージングおよび構成デザイナー (ICD) を開始します。
- [ファイル]>[新しいプロジェクト] の順にクリックします。
- プロジェクト名と説明を入力し、[次へ] をクリックします
- [プロジェクト ワークフローの選択] ステップで、[プロビジョニング パッケージ] オプションを選択し、[次へ] をクリックします。
- [表示および構成する設定の選択] ステップで、[すべての Windows エディションに共通] オプションを選択し、[次へ] をクリックします。
- [プロビジョニング パッケージのインポート (オプション)] ステップで、[完了] をクリックして新しいプロジェクトを作成します。
- [利用可能なカスタマイズ] ペインを使用して設定を追加し、回復中に復元する必要がある既定値を指定します。 この設定が [選択されたカスタマイズ] ペインに表示されます。
- [エクスポート]>[プロビジョニング パッケージ] の順にクリックします。
- [プロビジョニング パッケージの説明] ステップで、[次へ] をクリックします。
- [プロビジョニング パッケージのセキュリティ情報の選択] ステップで、[次へ] をクリックします。
- [プロビジョニング パッケージの保存先の選択] ステップで、パッケージを保存する場所 (ネットワーク共有など) を入力して、[次へ] をクリックします。
- [ビルド] をクリックして、プロビジョニング パッケージを作成します。
- プロビジョニング パッケージを作成したら、[完了] をクリックします。
カスタマイズに各 Windows 10 デスクトップ エディション固有の設定が含まれている場合は、以下の手順に従って、回復中に復元する設定を指定する unattend.xml を作成します。
手順 4: (省略可能) 設定を復元するための無人セットアップ ファイルを作成する
- テクニシャン PC で、Windows システム イメージ マネージャーを開始します。
- [ファイル]>[Windows イメージ ファイルの選択] の順にクリックします。
- カタログ ファイルを作成するかどうかを確認するメッセージが表示されたら、[はい] をクリックします。
- [Windows イメージ] と [応答ファイル] のペインを使用して、Specialize か oobeSystem フェーズ (またはその両方) に設定を追加し、回復中に復元する必要がある既定値を指定します。
- [ツール]>[応答ファイルの検証] の順にクリックして、エラーを確認します。 特定された問題を修正します。
- [ファイル]>[応答ファイルを保存] の順にクリックします。 応答ファイルを保存する場所 (ネットワーク共有など) を入力して、[保存] をクリックします。
PC のリカバリの機能拡張ポイントを使用する場合は、次の手順に従って機能拡張ポイントを準備し、PC のリカバリの構成ファイルを使用してそれらを登録します。
重要
無人セットアップ ファイルを作成した場合は、BasicReset_AfterImageApply
と FactoryReset_AfterImageApply
の機能拡張ポイントを使用して、それを再適用するスクリプトを作成する必要があります。
手順 5: (省略可能) PC のリカバリの機能拡張ポイントのスクリプトを準備する
個人用ファイルを保持する機能の実行時に、次の使用可能な機能拡張ポイントで実行するスクリプト (.cmd) または実行可能ファイル (.exe) を作成します。
- A: BasicReset_BeforeImageApply
- B: BasicReset_AfterImageApply
すべて削除する機能の実行時に、次の使用可能な機能拡張ポイントで実行するスクリプト (.cmd) または実行可能ファイル (.exe) を作成します。
- C: FactoryReset_AfterDiskFormat
- D: FactoryReset_AfterImageApply
スクリプトをネットワークの場所または USB フラッシュ ドライブに保存します。
4 つの機能拡張ポイント用に作成したスクリプトの場所を指定する ResetConfig.xml ファイルを作成します。 次に例を示します。
<?xml version="1.0" encoding="utf-8"?> <Reset> <Run Phase="BasicReset_BeforeImageApply"> <Path>Fabrikam\SampleScript_A.cmd</Path> <Duration>2</Duration> </Run> <Run Phase="BasicReset_AfterImageApply"> <Path>Fabrikam\SampleScript_B.cmd</Path> <Param></Param> <Duration>2</Duration> </Run> <Run Phase="FactoryReset_AfterDiskFormat"> <Path>Fabrikam\SampleScript_C.cmd</Path> <Duration>2</Duration> </Run> <Run Phase="FactoryReset_AfterImageApply"> <Path>Fabrikam\SampleScript_D.cmd</Path> <Param></Param> <Duration>2</Duration> </Run> </Reset>
重要
テキスト エディターを使用して ResetConfig.xml ファイルを作成する場合は、.xml のファイル名拡張子を使用してドキュメントを保存し、UTF-8 エンコードを使用する必要があります。 Unicode または ANSI は使用しないでください。
ResetConfig.xml ファイルと作成したスクリプトを保存します。
手順 6: (省略可能) ベア メタル回復の構成を作成する
ユーザーが PC から作成したリカバリ メディアを使用してベア メタル回復を実行するときに使用するパーティションのレイアウトを指定するには、resetconfig.xml を変更して次の要素を含めます。
<?xml version="1.0" encoding="utf-8"?> <Reset> <SystemDisk> <MinSize>160000</MinSize> <DiskpartScriptPath>ReCreatePartitions.txt</DiskpartScriptPath> <OSPartition>3</OSPartition> <WindowsREPartition>4</WindowsREPartition> <WindowsREPath>Recovery\WindowsRE</WindowsREPath> <Compact>False</Compact> </SystemDisk> </Reset>
<MinSize>
- システム ディスクの最小サイズをメガバイト (MB) 単位で指定します。 システム ディスクがこの最小サイズを満たしていない場合、回復プロセスは続行されません。<DiskpartScriptPath>
- install.wim の場所を基準とした Diskpart スクリプトへのパス。 このスクリプトでは、すべての既存パーティションが削除されていること、およびシステム ディスクで Diskpart にフォーカスが設定されていることを前提とする必要があります。<OSPartition>
- 回復イメージを適用するパーティションを指定する必要があります。 ESP またはアクティブ パーティションは、OS と同じディスクに設定する必要があります。<WindowsREPartition>
、<WindowsREPath>
- (省略可能) WinRE をステージングする場所。 メディア上の WinRE ブート イメージがコピーされ、OS に登録されます。 (reagentc.exe /setreimage
の実行と同じ)
resetconfig.xml でパーティション分割情報が指定されていない場合でも、ユーザーは作成したメディアを使用してベア メタル回復を実行できます。 ただし、代わりに、Windows 10 の既定または推奨のパーティション レイアウトが使用されます。
手順 7: 初期展開用の diskpart スクリプトを作成する
初期展開用のディスク パーティション分割スクリプトを作成します。
UEFI の例:
rem These commands are used with DiskPart tool. rem Erase the drive and create four partitions rem for a UEFI/GPT-based PC. select disk 0 clean convert gpt rem == 1. System Partition ======================= create partition efi size=100 rem ***NOTE: For 4KB-per-sector drives, change rem this value to size=260.*** format quick fs=fat32 label="System" assign letter="S" rem == 2. Microsoft Reserved (MSR) Partition ===== create partition msr size=16 rem == 3. Windows Partition ====================== rem == a. Create Windows Partition ============ create partition primary rem == b. Create space for Windows RE tools partition shrink minimum=450 rem == c. Prepare the Windows partition format quick fs=ntfs label="Windows" assign letter="W" rem == 4. Windows RE Tools Partition ============= create partition primary format quick fs=ntfs label="Windows RE tools" set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac assign letter="T" exit
BIOS の例:
rem These commands are used with DiskPart to rem erase the drive and create three partitions rem for a BIOS/MBR-based PC. rem Adjust the partition sizes to fill the drive. select disk 0 clean rem === 1. System Partition ===================== create partition primary size=100 format quick fs=ntfs label="System" assign letter="S" active rem === 2. Windows Partition ==================== rem == a. Create Windows partition =========== create partition primary rem == b. Create space for Windows RE tools partition ==== shrink minimum=450 rem == c. Prepare the Windows partition ====== format quick fs=ntfs label="Windows" assign letter="W" rem === 3. Windows RE Tools Partition ============= create partition primary format quick fs=ntfs label="Windows RE tools" set id=27 assign letter="R" exit
スクリプトに CreatePartitions-UEFI または CreatePartitions-BIOS.txt という名前を付け、ネットワークの場所または USB フラッシュ ドライブに保存します。 注: これらの Diskpart の例では、パーティションを簡単に識別できるように、パーティションに S:\、W:\、T:\ という文字が割り当てられます。 PC の再起動後、Windows PE によって Windows のパーティションに文字 C:\ が自動的に割り当てられます。 他のパーティションには、ドライブ文字は割り当てられません。
手順 8: ベア メタル回復用の diskpart スクリプトを作成する (省略可能)
ベア メタル回復用の diskpart スクリプトを作成します。
重要
手順 8: ベア メタル回復に使用する diskpart スクリプトには
select disk
またはclean
コマンドを含めないでください。 diskpart スクリプトが処理される前に、システム ディスクが自動的に選択されます。 パーティション サイズによるベア メタル回復起動の問題を回避するために、製造元は、回復 WIM に使用されるパーティションを作成するためのベア メタル回復機能の自動生成スクリプトを許可することをお勧めします。 製造元がパーティション作成にカスタム DISKPART スクリプトを使用したい場合、推奨される最小パーティション サイズは 990 MB と最小 250 MB の空き領域です。UEFI の例:
rem These commands are used with DiskPart tool. rem Erase the drive and create five partitions rem for a UEFI/GPT-based PC. convert gpt rem == 1. System Partition ======================= create partition efi size=100 rem ***NOTE: For 4KB-per-sector drives, change rem this value to size=260.*** format quick fs=fat32 label="System" assign letter="S" rem == 2. Microsoft Reserved (MSR) Partition ===== create partition msr size=16 rem == 3. Windows Partition ====================== rem == a. Create Windows Partition ============ create partition primary rem == b. Create space for Windows RE tools partition shrink minimum=450 rem == c. Prepare the Windows partition format quick fs=ntfs label="Windows" assign letter="W" rem == 4. Windows RE Tools Partition ============= create partition primary format quick fs=ntfs label="Windows RE tools" set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac assign letter="T" exit
BIOS の例:
rem These commands are used with DiskPart to rem erase the drive and create three partitions rem for a BIOS/MBR-based PC. rem Adjust the partition sizes to fill the drive. rem === 1. System Partition ===================== create partition primary size=100 format quick fs=ntfs label="System" assign letter="S" active rem === 2. Windows Partition ==================== rem == a. Create Windows partition =========== create partition primary rem == b. Create space for Windows RE tools partition ==== shrink minimum=450 rem == c. Prepare the Windows partition ====== format quick fs=ntfs label="Windows" assign letter="W" rem === 3. Windows RE Tools Partition ============= create partition primary format quick fs=ntfs label="Windows RE tools" set id=27 assign letter="R" exit
スクリプトに RecreatePartitions-UEFI.txt または RecreatePartitions-BIOS.txt という名前を付け、パーティションの作成時と同じネットワークの場所または USB フラッシュ ドライブに保存します。
手順 9: Windows を展開してカスタマイズする
対象の PC で、Windows PE を起動します。
Windows PE のコマンド プロンプトで、スクリプトを実行して、推奨されるハード ドライブ パーティションを作成します。
Diskpart /s N:\CreatePartitions.txt
N:\CreatePartition
は ファイルの場所です。Windows の参照イメージを Windows パーティションに適用します。
Dism /Apply-Image /ImageFile:N:\Install.wim /Index:1 /ApplyDir:W:\
省略可能: ディスクに書き込まれるファイルが圧縮されるように、/compact オプションを指定することもできます。 次に例を示します。
Dism /Apply-Image /ImageFile:N:\Install.wim /Index:1 /ApplyDir:W:\ /Compact:on
これは、ストレージ容量が限られている PC に Windows を展開する場合に便利ですが、回転ストレージ デバイスを使用する PC にはお勧めできません。
BCDboot を使用して、システム パーティションを構成します。
W:\Windows\System32\Bcdboot W:\Windows
Windows RE ツール パーティションにフォルダーを作成し、カスタム Windows RE ブート イメージをコピーします。
Mkdir T:\Recovery\WindowsRE xcopy /H N:\Winre.wim T:\Recovery\WindowsRE
ここで、T:\ は Windows RE ツール パーティションです。
重要
Winre.wim は \Recovery\WindowsRE に保存する必要があります。
Windows RE ブート イメージと Windows イメージを登録します。
W:\Windows\System32\Reagentc /setreimage /path T:\Recovery\WindowsRE /target W:\Windows
Diskpart を使用して、エクスプローラーから Windows RE ツール (T:\) パーティションを隠します。
UEFI ベースの PC の場合:
select disk 0 select partition 4 remove set id=de94bba4-06d1-4d40-a16a-bfd50179d6ac gpt attributes=0x8000000000000001 exit
BIOS ベースの PC の場合:
select disk 0 select partition 3 remove set id=27 exit
ターゲット PC で Windows イメージをカスタマイズします。
- Windows イメージに対してオフラインのカスタマイズを実行します。たとえば、ターゲット PC に固有の INF ベースのドライバー パッケージのインストール、OS の更新プログラムと言語パックのインストール、追加の Windows アプリのプロビジョニングなどです。
- 監査モードでターゲット PC を起動します。 このためには、Microsoft-Windows-Deployment | Reseal | Mode = audit 設定を含む応答ファイルを使用するか、最初に PC を OOBE で起動し、Ctrl + Shift + F3 キーを押します。
- アプリケーションや対象の PC に固有のデバイス ソフトウェア パッケージをインストールするなど、残りのカスタマイズを実行します。
イメージをクリーンアップします。
DISM.exe /Cleanup-Image /StartComponentCleanup
手順 10: 回復のためのカスタマイズをキャプチャして展開する
C:\Recovery フォルダーを作成します。 下のコマンドを使用して、このフォルダーが正しいアクセス許可と ACL で適切に構成されていることを確認します。
mkdir C:\Recovery icacls C:\Recovery /inheritance:r icacls C:\Recovery /grant:r SYSTEM:(OI)(CI)(F) icacls C:\Recovery /grant:r *S-1-5-32-544:(OI)(CI)(F) takeown /f C:\Recovery /a attrib +H C:\Recovery
ScanState ツールを使用して、インストールしたカスタマイズをプロビジョニング パッケージにキャプチャします。 /config オプションを使用して、ADK に含まれている既定の構成ファイルのいずれかを指定し、.ppkg ファイルを C:\Recovery\Customizations フォルダーに保存します。
N:\ScanState_amd64\scanstate.exe /apps /config:<path_to_config_file> /ppkg C:\Recovery\Customizations\apps.ppkg /o /c /v:13 /l:C:\ScanState.log
ここで、N:\ は手順 1 でインストールした ScanState ツールの場所です。
Windows ICD を使用して、回復中に復元する必要があるカスタマイズを含む追加のプロビジョニング パッケージを作成した場合は、そのパッケージをターゲット PC にコピーします。 次に例を示します。
xcopy N:\RecoveryPPKG\*.ppkg C:\Recovery\Customizations
N:\ は、追加のプロビジョニング パッケージが配置されている場所です。
PC のリカバリーの構成ファイル (resetconfig.xml) と機能拡張スクリプトを対象の PC にコピーし、それらの書き込み/変更アクセス許可を構成します。 次に例を示します。
mkdir C:\Recovery\OEM xcopy /E N:\RecoveryScripts\* C:\Recovery\OEM
ここで、N:\ は構成ファイルとスクリプトが配置されている場所です。
Windows イメージを再シールするために、Sysprep ツールを /generalize オプションなしで使用します。
Sysprep /oobe /exit
重要
顧客に出荷するイメージは、OOBE で起動するように構成する必要があります。
(省略可能) 領域を節約するために、インストールした Windows デスクトップ アプリケーションを、カスタマイズ パッケージを参照するファイル ポインターに変換することもできます。 そのためには、ターゲット PC で Windows PE を起動して、次のコマンドを実行します。
DISM /Apply-CustomDataImage /CustomDataImage:C:\Recovery\Customizations\USMT.ppkg /ImagePath:C:\ /SingleInstance
梱包して出荷するために、ターゲット PC をシャットダウンします。 ユーザーが初めて開始すると、PC は OOBE で起動します。
手順 11: カスタマイズを検証する
回復後にカスタマイズが復元されること、および個人用ファイルを保持する機能とすべて削除する機能を実行することによって、カスタマイズが引き続き機能することを確認します。 開始するには、次のエントリ ポイントを確認します。
設定: [スタート] メニューで、[設定]>[更新とセキュリティ]>[回復]> [この PC を初期状態に戻す]: [開始する] の順に選択します。 画面に表示される指示に従ってください。
Windows RE: [スタート] メニューで、[設定]>[更新とセキュリティ]>[回復]> [PC の起動をカスタマイズする]: [今すぐ再起動] の順に選択します。 Windows RE が起動したら、[トラブルシューティング]>[この PC を初期状態に戻す] の順に選択して、画面の指示に従います。
その他の回復オプションをテストする方法については、検証シナリオに関するページを参照してください。