応答ファイルを作成するためのベスト プラクティス
応答ファイルを作成するには、次のベストプラクティスに従うことをお勧めします。
応答ファイルを使用するには、さまざまな方法があります。 Windows セットアップで応答ファイルを使用する方法の詳細については、「Windows セットアップ オートメーションの概要」を参照してください。 Sysprep ツールで応答ファイルを使用する方法の詳細については、「Sysprep での応答ファイルの使用」を参照してください。 展開イメージのサービスと管理 (DISM) で応答ファイルを使用する方法の詳細については、「Dism 無人サービスのコマンド ライン オプション」を参照してください。
Windows SIMで応答ファイルを常に検証します
応答ファイルを作成するには、Windowsシステムイメージマネージャー (Windows SIM) で作成することをお勧めします。 ただし、手動で作成した応答ファイルを使用する場合、Windows SIM で応答ファイルを検証して、応答ファイルが機能することを確認する必要があります。
利用可能な設定や既定値はたまに変更される場合があるので、応答ファイルを再使用するときには、再検証する必要があります。
不要な設定を避けます
設定の親ノードを応答ファイルに挿入することで、不要な設定が入り込む場合があります。
Windows SIMでは、応答ファイルに空の設定は作成されません。 Windows セットアップ中は空の設定は無視されますが、空の文字列ではインストール時間が長くなる可能性があります。 そのため、応答ファイルを作成するときに、不要な設定を削除します。
一般に、コンポーネントの最下位レベルまで展開し、設定する要素のみを選択することをお勧めします。 既定値については、必須の要素でない限り、その要素を含める必要はありません。
構成パスについて
構成パスは、インストールのさまざまなフェーズを表します。 各構成パスの間に何が起こるか理解しておくことは、応答ファイルの作成にとても重要です。 詳細については、「Windows セットアップ オートメーションの概要」と「構成パスのしくみ」を参照してください。
空の要素を作成しません
Windows SIM では、応答ファイルに空の要素を作成できるようにサポートされています。 文字列設定の種類を右クリックし、[空の文字列の書き込み] をクリックすると、応答ファイルに空の要素が作成されます。 ただし、空の要素をサポートする設定とサポートしない設定があります。 場合によっては、空の要素を作成すると、Windowsセットアップが失敗します。 空の要素を作成する前に、Windows ®無人セットアップリファレンス (Unattend.chm) のコンポーネント設定に関するドキュメントを参照してください。
構成パスごとにアーキテクチャ固有のセクションを作成する
クロスプラットフォーム展開を実行する場合、異なるアーキテクチャの種類に対応したコンポーネントを 1 つの応答ファイル内に複製しないでください。 1 つの応答ファイルに異なるアーキテクチャの種類に適用される複数のコンポーネントがある場合、インストール プログラムによってコンポーネントの設定が複数回適用されるか、設定が正しく適用されない場合があります。
クロスプラットフォーム展開では、応答ファイル内の構成パスごとにアーキテクチャ固有の設定を作成する必要があります。 たとえば、32 ビットのプレインストール環境と 64 ビットのセットアップ先のコンピューターの場合、windowsPE 構成パスには x86 ベースのコンポーネントのみを指定し、他のすべての構成パスには x64 ベースのコンポーネントのみを指定する必要があります。
64ビットの応答ファイルの場合、wow64 設定は、32 ビット モードと 64 ビット モードの両方を含むアプリの 32 ビット バージョンのアプリに対して使用されます。
応答ファイルのセキュリティの強化
応答ファイルには、プロダクトキー、パスワード、その他のアカウント情報などの機密データが格納されます。 次のベストプラクティスに従うことで、この重要なデータの保護に役立ちます。
応答ファイルへのアクセスを制限します。 環境に応じて、ファイルに対するアクセス制御リスト (ACL) またはアクセス許可を変更できます。 応答ファイルにアクセスできるのは、承認されたアカウントのみです。
パスワードの非表示。 応答ファイルのセキュリティを強化するには、Windows SIM を使用してローカル アカウントのパスワードが表示されないようにします。 詳細については、「応答ファイルの重要なデータを非表示にする」を参照してください。
キャッシュされた応答ファイルを削除します。 無人Windowsインストール中に、応答ファイルはコンピューターにキャッシュされます。 構成パスごとに、ドメインパスワードやプロダクトキーなどの機密情報は、キャッシュされた応答ファイルから削除されます。 ただし、その他の情報は応答ファイルで読み取ることができます。 顧客にコンピューターを納品する前に、キャッシュされた応答ファイルを %WINDIR%\panther から削除します。
メモ
応答ファイルは、oobeSystem 構成パスの間に処理する設定がない場合にのみ削除します。 oobeSystem 構成パスは、OOBE (Out-of-Box Experience) の開始直前に処理されます。 通常は、これは、顧客がコンピューターを初めて起動するときです。 このフォルダーから応答ファイルを削除した場合、これらの設定は処理されません。
データ イメージまたは $OEM$ フォルダーを使用している場合、既存のファイルを上書きしない
追加ドライバーやアプリケーションなどのデータを追加する場合、Windows システムファイルは上書きされません。 システムファイルを上書きすると、コンピュータが破損する可能性があります。 ドライバーとアプリケーションを追加する方法の詳細については、「データ イメージを作成する方法」および「配布共有内のファイルとフォルダーを管理する方法」を参照してください。
別の応答ファイルを使用して複数のアーキテクチャの種類に展開する
展開先のアーキテクチャの種類ごとに個別の応答ファイルを作成します。 1 つの応答ファイルに異なるアーキテクチャの種類に適用される複数のコンポーネントが含まれている場合、コンポーネントの設定が複数回適用されているか、正しく適用されていない可能性があります。
特定のカスタマイズに複数の応答ファイルを使用する
複数の応答ファイル (Unattend.xml) を使用して、さまざまなタイミングでイメージに適用できる異なるカスタマイズセットを作成できます。 たとえば、Windows セットアップ中にブランド化とサポート情報を含む汎用応答ファイルを使用できます。 インストールが完了したら、Sysprep ツールを実行すると、2 番目の応答ファイルを適用してカスタマイズを追加できます。 Windows イメージを処理する必要がある場合、DISM で別の応答ファイルを使用できます。
たとえば、Windows セットアップで使用する応答ファイルで基本的なカスタマイズを定義できます。 インストールが完了したら、Sysprep または DISM で応答ファイルを使用できます。 たとえば、一般化プロセス中にインストールに追加されたドライバーをすべて保持する場合は、PersistAllDeviceInstalls 設定を含む Sysprep で使用する応答ファイルを作成できます。 次のコマンドを実行して、応答ファイルを適用できます。Sysprep /generalize /unattend:answerfile
Windows セットアップで応答ファイルを使用する方法の詳細については、「Windows セットアップ コマンド ライン オプション」を参照してください。
Sysprep で応答ファイルを使用する方法の詳細については、「Sysprep コマンド ライン構文」を参照してください。
DISM で応答ファイルを使用する方法の詳細については、「DISM 無人サービスのコマンド ライン オプション」を参照してください。
正しいメカニズムを使用して Windows イメージに更新プログラムを追加する
Microsoftがサポートするサービスメカニズムのみを使用して、Windowsイメージを更新します。
DISM を使用して、オフライン Windows イメージを更新します。 詳細については、「イメージをサービスする」を参照してください。
インストール中に、Windows Updateから更新プログラムを自動的にダウンロードするようにコンピューターを構成することもできます。
警告
$OEM$
サブフォルダーまたはデータ イメージを使用して、Windows システム ファイルを上書きしないでください。
コンピューターに追加する追加デバイス ドライバーがある場合、DISM を使用して、これらのドライバーをオフラインで追加します。 また、Microsoft-Windows-PnPCustomizationsNonWinPE と Microsoft-Windows-PnPCustomizationWinPE コンポーネントを使用して、無人インストールで追加のドライバーを含めることもできます。 詳細については、「オフラインでドライバーを追加および削除する方法」を参照してください。
言語設定の指定
応答ファイルを使用して言語を変更するには、通常、Microsoft-Windows-International-Core-WinPE コンポーネントを使用します。 言語設定を指定できるコンポーネントは 2 つあり、それぞれ次のとおりです。
- Microsoft-Windows-International-Core-WinPE. (言語設定は、windowsPE 構成パス中に適用されます)。
- Microsoft-Windows-International-Core. specialize または oobeSystem パス中に適用される言語設定。
一部の言語では再起動が必要なため、windowsPE 構成パス中に言語設定を構成することをお勧めします。これにより、コンピューターが必ず再起動するからです。 specialize または oobeSystem の構成パス中に言語設定を処理した場合、コンピューターで追加の再起動が必要となる場合があります。
Sysprep/generalize コマンドと LocalAccounts を使用して、アカウント情報を変更する
Sysprep コマンドを generalize オプションおよび LocalAccounts 設定と共に使用して、既存のユーザーアカウントに関するアカウント情報を変更できます。
specialize 構成パスで下記の例の設定を指定すると、NEWVALUE の値がすべて変更されます。 ただし、MyAccount はセキュリティ グループのメンバーシップを保持します。 MyAccount は、表示名、説明、およびパスワードの値が異なる同じアカウントと見なされます。
<LocalAccount>
<Name>MyAccount</Name>
<DisplayName>NEWVALUE</DisplayName>
<Description>NEWVALUE</Description>
<Password>
<PlainText>false</PlainText>
<Value>NEWVALUEBASE64</Value>
</Password>
</LocalAccount>