デスクトップ ファイルWAIK を使用して Windows XP を展開する

Wes Miller

驚くべきことに (そして厄介なことに)、顧客によって環境は大きく異なります。理想的なのは、すべての顧客が常に同じバージョンの Windows を展開し、同じ段階の作業を行っていることです。そうすれば、確実にテスト作業は容易になります。しかし、もちろん現実は違います。既に Windows Vista® の展開で苦労している (または展開を終えた) 方や、

運用環境に 1 台目の Windows Server® 2008 読み取り専用ドメイン コントローラ (RODC) を展開する準備に熱心に取り組んでいる方もいらっしゃると思いますが、長期に渡って計画してきた Windows® XP や Windows Server 2003 R2 を現在展開しているという報告も、それと同じくらい頻繁に寄せられています (ありがたいことです)。

先日、ある読者の方から "Windows 自動インストール キット (WAIK) と Windows XP について教えてください。Windows XP を展開するときに、WAIK をどのように使用すればよいですか" という内容のメールをいただきました。それでは、この質問にお答えしましょう。

WAIK を見直す

1 年ほど前に、WAIK に関するコラム (technetmagazine.com/issues/2007/01/DesktopFiles) を執筆しました。WAIK は、Windows Vista の展開に役立つように設計された一連の強力なツールです。現在では、WAIK は Windows Server 2008 の展開にも対応しています。また、これら 2 つのオペレーティング システムでは、新しいセットアップ インフラストラクチャが提供されます。WAIK のツールは、主にこれら 2 つのオペレーティング システムを利用することを想定して設計されています。無人セットアップまたは Sysprep を使用して、Windows Vista より前のバージョンの Windows を展開する場合は、好むと好まざるとにかかわらず、これらのバージョン専用のツールを使用する必要があります。しかし、今回 WAIK を見直し、Windows XP の展開に役立つツールの存在を明らかにしたいと思います。

Windows PE 2.0 共通点を見つけるために、まず Windows PE 2.0 と Windows XP のデュアル ブートに関する 2008 年 2 月号のコラム (technetmagazine.com/issues/2008/02/DesktopFiles) を見てみましょう。基本的に、Windows PE 2.0 がこのコラムのようなデュアル ブート環境で正常に動作する場合は、今回のコラムの環境でも Windows PE 2.0 を使用できます。RAM が 512 MB 未満のシステムや、Windows Vista で提供される Advanced Configuration and Power Interface (ACPI) がサポートされていないシステムに Windows XP を展開する場合は、Windows PE 1.6 が必要です。また、その場合は、ソフトウェア アシュアランスの特典として Windows PE 1.6 を入手できるかどうかを確認する必要があります。現在、Windows PE 2.0 と 2.1 は無料で入手できますが、Windows PE 1.6 以前のバージョンを入手するには、ソフトウェア アシュアランスのメンバシップが必要です。

ImageX と WIM ImageX と Windows Imaging Format (WIM) は、NTFS ボリュームまたは FAT ボリュームにインストールされた Windows 2000 以降のすべてのバージョンの Windows で動作させることを目的として基礎から設計されました。そのため、もちろん ImageX と WIM を使用して Windows XP (または Windows Server 2003) を展開することができます。

Windows 展開サービス リモート インストール サービス (RIS) に置き換わる Windows 展開サービス (WDS) は、最初は WAIK 1.0 の OOB (Out-of-Band) リリースとして提供されましたが、その後更新され、Windows Server 2003 SP2 に統合されました。Windows Server 2008 ではその機能が強化されていますが、Windows XP の展開にも非常に適しています。

RIS サーバーを所有しているか、WDS サーバーをレガシ モードで実行している場合、WDS はあまり適していません。しかし、WDS を混合モードまたはネイティブ モードに移行し始めている場合は、Windows XP の展開シナリオに使用できる方法の 1 つとして、WDS の機能を理解しておく必要があります。

Windows System Image Manager (WSIM) WSIM は、Windows Vista と Windows Server 2008 の展開にのみ使用できます。Windows Server 2003 以前のオペレーティング システムを展開する場合、WSIM はあまり役立ちません。

Windows XP の展開ツール

Windows XP は、Windows NT® 4.0 から Windows Server 2003 までのすべてのバージョンの Windows と同様、unattend.txt ファイルまたは "イメージ" を使用して展開できます。無人セットアップは以前の機能なので、このコラムでは説明を省略します。WAIK (具体的には ImageX) を利用する場合、イメージ ベースの展開を行うことになります。そのため、unattend.txt ではなく、Sysprep 用の応答ファイル形式である sysprep.inf が必要です。

このコラムでは、OS イメージの作成方法について大まかに説明するときに、"イメージ" という言葉を使用します。従来は、Ghost、PQDI、またはその他のイメージ作成ツールを使用していたと思います。マイクロソフトは、ImageX で初めて、Sysprep 実行後の OS やアプリケーションのイメージを作成し、1 台以上のコンピュータにコピーする機能を提供しました。

Windows のイメージを作成する際は、次に示す 2 つの重要なポイントを考慮する必要があります。

  • ユニプロセッサ システムをマルチプロセッサ システムに移行する (またはその逆) 場合を除いて、ハードウェア アブストラクション レイヤ (HAL) を変更することはできません。また、以前公開したコラムに記載されているように、ACPI アーキテクチャを ACPI 以外のアーキテクチャに移行する (またはその逆) 場合、イメージを安全に変更することはできません。
  • 大容量記憶域コントローラを変更することは可能です。変更できないと考えられることがよくありますが、それは誤解です。しかし、これを行うには、Sysprep を使用して、インストール先のコンピュータで必要になると考えられるすべての大容量記憶域コントローラをインストールする必要があります。展開後、Sysprep を使用して、インストール先のシステムで使用されていないデバイスのドライバをすべて削除します。これについては、この後すぐに説明します。

これら 2 つのポイントを考慮すると、1 つのシステムで準備したイメージを、同一または互換性のある HAL を使用する他のシステムで動作させることができるようにする必要があります。

使用するツール

イメージ ベースの展開シナリオで Windows XP を使用するときは必ず、以下の 3 つを用意しておく必要があります。

Ref.chm 無人セットアップ テキスト ファイルのリファレンス。Windows Vista よりも前のバージョンの Windows に含まれているオプション コンポーネントを構成する場合は、イメージを作成する前が最適なタイミングであることを覚えておいてください。ただし、セットアップ後にオプション コンポーネントをインストールする必要がある場合は、support.microsoft.com/ kb/222444 で説明されているように、sysocmgr.exe を実行してこれらのコンポーネントをインストールすることができます。Windows XP Tablet PC Edition を展開する場合は、go.microsoft.com/fwlink/?LinkId=108589 に記載されている手順に従って、該当するシステムに Tablet PC コンポーネントをインストールする 1 つのイメージを作成します。

Sysprep マイクロソフトによってサポートされている、ディスク複製されたシステムを作成するための方法です。現在でも、サードパーティ製のセキュリティ識別子 (SID) 変更ツールの使用が推奨されることがありますが、これまでどおり、Sysprep の使用をお勧めします。これは、他のツールでは重要な場所 (特に、公開されていない場所) にある Windows SID が検出されない傾向があるからです。

セットアップ マネージャ sysprep.inf ファイルを最も短時間で容易に作成できる方法です。これまでどおり、正しいバージョンを使用するようにしてください。一般に、展開する Windows のバージョンと同じであれば、正しいバージョンです (たとえば、Windows XP SP2 と Windows XP SP2 用展開ツール)。

これら 3 つは、すべて Windows XP の CD に収録されています。最新版は go.microsoft.com/fwlink/?LinkId=107541 から入手できます。

また、tap.exe も用意しておく必要があります。このユーティリティは、Windows XP Embedded ツール (go.microsoft.com/fwlink/?LinkId=108590) に同梱されており、無料の評価版にも同梱されています。Windows PE では、tap.exe は Windows PE が検出したすべてのプラグ アンド プレイ (PnP) デバイスに関する情報を返します。最も興味深い機能は、Windows PE がデバイス用に選択した HAL を通知する機能です (図 1 参照)。この機能が重要である主な理由は、Windows PE が HAL を選択する際に使用するロジックと、Windows の標準セットアップが配置する HAL を判断する際に使用するロジックが同じであるからです。そのため、Windows PE で tap.exe を使用すると、特定のシステム用に Windows が推奨する HAL の種類を確認するのに役立ちます。

Figure 1 特定のシステム用に Windows PE が選択した HAL を通知できる tap.exe ユーティリティ

Figure 1** 特定のシステム用に Windows PE が選択した HAL を通知できる tap.exe ユーティリティ **(画像を拡大するには、ここをクリックします)

イメージを作成する

次の手順を実行することによって、ImageX を使用して独自の Windows XP イメージを展開するための準備を行うことができます (別のイメージ作成ツールを使用することもできますが、すぐにこのワークフローにとって ImageX を使用することが理想的である理由がわかるでしょう)。

まず、Sysprep、セットアップ マネージャ、ImageX、Windows PE など、必要なすべてのツールとコンポーネントを用意します (要件や環境に応じて、Windows PE 2.0 または 1.6 を用意します。ImageX を含む Windows PE 2.0 を使用している場合は、パーティションの作成時に /nt52 スイッチを指定して bootsect.exe を実行し、Windows XP と互換性があるブート コードに変更する必要があります)。

もちろん、コンピュータに Windows XP (任意の SKU) をインストールし、最新の更新プログラムを Windows とインストールされているその他のソフトウェアに適用することも必要です。また、ドメインに参加したことがないシステムを使用するのが理想的です。理由は、後でドメインやネットワークに関する問題が発生する可能性が低くなるからです。システムには、安全にイメージを作成できるアプリケーションのみがインストールされている必要があります。コンピュータ名、SID、ドメイン、またはユーザー固有の情報を独自に格納するアプリケーションがインストールされている場合、Sysprep はそれらの情報を検出できないか、SID の変更時に置き換えることができません。また、システムでは、展開数が最も多いと予想される HAL が使用されている必要があります。一般に、最近のハードウェアでは ACPI マルチプロセッサ (MP) HAL が使用されます。この理由は、ACPI とマルチコア (以前のハイパースレッディング。ハイパースレッディングでも MP HAL が使用されていました) が普及したからです。

では、要件に合わせてエンド ユーザー用の Windows XP システムを構成します。まず、大部分のユーザーが使用するアプリケーション (および無人操作でインストールできないすべてのアプリケーション) をすべてインストールします。次に、Windows のオプション コンポーネントをインストールまたは削除することによって、エンド ユーザー用のシステムを適切に構成します。その後、デスクトップを構成します。Administrator としてログオンし、デスクトップの背景、スクリーン セーバー、スタート メニューなど、プロファイルに必要な変更を加えます。既定では (Windows XP SP2 以降)、これらの設定は、Sysprep によって Administrator アカウントから既定のユーザー アカウントにコピーされます。

次に、セットアップ マネージャ (図 2 参照) を実行し、新しい Sysprep 無人ファイルを作成すること、およびセットアップを完全に自動化することを指定します。セットアップ マネージャの手順では、プロダクト キーの入力を要求されることに注意してください。プロダクト キーが手元にない場合、またはプロダクト キーを入力するスクリプトを後で作成する (およびボリューム ライセンス キーを保有していない) 場合は、Windows XP または Windows Server 2003 の CD に収録されている既定の unattend.txt ファイルに含まれているキーを指定できます (これによりセットアップを完了できますが、ライセンス認証を完了することはできません)。

Figure 2 セットアップ マネージャを使用した Sysprep 応答ファイルの作成

Figure 2** セットアップ マネージャを使用した Sysprep 応答ファイルの作成 **(画像を拡大するには、ここをクリックします)

また、コンピュータ名も指定する必要があります。この作業は SQL やその他のメカニズムを使用して後から自動的に実行することもできますが、ここではなんらかの値を入力し、コンピュータに WIM を展開した後、Sysprep を実行する前にスクリプトを使用してコンピュータ名を変更します。

Administrator アカウントのパスワードを指定した場合、そのパスワードは、イメージの既存の Administrator アカウントにパスワードが指定されていない場合のみ適用されます。また、ドメインへの参加に関するセクションでは、ドメインへの参加に使用する資格情報を暗号化できません。このため、最小限の特権が与えられたアカウントを使用してコンピュータ アカウントを設定する必要があります。最後に、セットアップ マネージャのバージョン文字列に関するオプションを使用して、作成したイメージの "バージョン" を記録することをお勧めします。

次に、作成した sysprep.inf ファイルを、sysprep.exe と setupcl.exe と共に C:\Sysprep ディレクトリに配置して、次のコードをこの .inf ファイルに追加します。

[Sysprep]
BuildMassStorageSection = Yes

[SysprepMassStorage]

その後、Sysprep –bmsd を実行します。これにより、sysprep.inf が変更され、インストールされている Windows が対応しているすべての大容量記憶域 ID が追加されます (図 3 参照)。必要に応じて、インストールされている Windows に他のデバイスを追加して、sysprep –bmsd を再度実行することもできます。

Figure 3 sysprep.inf への大容量記憶域 ID の追加

Figure 3** sysprep.inf への大容量記憶域 ID の追加 **(画像を拡大するには、ここをクリックします)

次に、sysprep.inf ファイルを共有にコピーし、sysprep.exe –factory を実行して、システムをシャットダウンします。その後 Windows PE で再起動し、次のコードを使用して UNC 共有 (推奨) に接続します。

NET USE Y: \\myserver\myshare
/USER:DOMAIN\USER password

接続後、次のコードを使用してイメージをキャプチャします。

ImageX /capture C: Y:\NewImage.wim 
"Factory Mode capture from 4/1/2008"

その後、システムをシャットダウンします。

これで、ファクトリ モードで更新できるイメージが作成されました。今回のコラムでは詳しく説明しませんが、簡単に言うと、ファクトリ モードは、展開用のイメージを作成する準備が整うまでイメージを最も安全に保存しておくことができるモードです。詳細については、先ほど紹介した Windows XP の deploy.cab ドキュメントを参照してください。

展開用のイメージを作成する準備が整ったら、つまり、展開の準備ができたら、Windows PE で起動し、Diskpart を使用して必要なパーティションを作成します。format コマンドを使用してパーティションをフォーマットし、必要に応じて bootsect.exe を使用して Windows Vista より前のバージョンのブート コード (/nt52) を適用します。ここで、次のコードを使用して UNC 共有に接続 (またはイメージが保存されているディレクトリに移動) します。

NET USE Y: \\myserver\myshare
/USER:DOMAIN\USER password

その後、次のコードを使用してイメージを適用します。

ImageX /apply Y:\NewImage.wim C: 1

最後に、Windows ファクトリ モードで再起動し、イメージに必要な変更を加えます (このとき、winbom.ini ファイルを使用する必要があります。詳細については、deploy.cab に含まれている ref.chm を参照してください)。winbom.ini には、必ず次のコード行が含まれます。このコード行は、次回再起動したときにミニセットアップを実行できるように、イメージを再シールすることを指示しています。

[FACTORY]
ResealMode = Mini

処理が完了したら、シャットダウンします。イメージのキャプチャに使用した前述の手順を再度実行します。ただし、ここでは次のようにキャプチャ コマンドを変更します。

ImageX /append C: Y:\NewImage.wim "Resealed 
and ready for deployment – captured 4/4/2008"

/append を指定して、大きな空き領域を確保します。ファクトリ モードと再シールしたイメージを組み合わせたので、それらを簡単に切り替えることができます。また、/delete を指定して、使用しないすべてのイメージを途中で削除することもできます。ただし、イメージを削除しても、空き領域が確保されるわけではなく、指定したボリューム イメージへの参照が削除されるだけであるということに注意してください。使用されていない領域をクリーンアップする場合は、保持しておくすべてのボリューム イメージをエクスポートする必要があります。

WAIK は主に Windows Vista と Windows Server 2008 用に設計およびサポートされていますが、どのバージョンの Windows を展開する場合でも役立つツールであることがおわかりいただけたと思います。Windows XP のツールと WAIK のツール (主に ImageX、場合によっては Windows PE 2.0) を組み合わせて使用する必要がありますが、現在はすべてのバージョンの Windows を展開するために必要な機能がマイクロソフトから提供されています。

Wes Miller は、テキサス州オースティンにある CoreTrace 社 (www.CoreTrace.com) のシニア テクニカル プロダクト マネージャです。以前は Winternals Software 社に勤務し、その後はマイクロソフトでプログラム マネージャとして働いていました。Wes の連絡先は、technet@getwired.com (英語のみ) です。

© 2008 Microsoft Corporation and CMP Media, LLC. All rights reserved; 許可なしに一部または全体を複製することは禁止されています.