前回、展開環境を整えたので、今回は、Windows PE (Windows Preinstallation Environment, WinPE) のカスタマイズを実施して、Windows PE 起動メディアを作成します。

 

 

前回までのおさらいをしておきます。

前回は、Windows 展開環境の準備として、必要なソフトウェアやインストーラの ISO イメージの準備、それと、2つの区画に分けられた USB メモリを作成しました。

また、Windows ADK、Windows PE を作業用PCにインストールしました。

今回は、Windows PE のカスタマイズをして、USBメモリから起動できるように、Windows PE をインストールします。

 

展開およびイメージングツール環境

展開イメージを作成する際に最もよく使うツール、「展開およびイメージングツール環境」を開きます。

これは、Windows PE に限らず、Windows イメージ、Windows 回復イメージのマウントや操作、アプリケーションや機能、ドライバやWindows アップデートの適用等、様々な場面に置いて使用されるツールです。というか、これ自身は単に コマンドラインを起動するだけですが、あらかじめイメージ展開関連のツールに対するパス等が設定されています。

起動する方法は作業用PCで、[スタートメーニュー] → [Windows Kits] → [展開およびイメージングツール環境] を右クリックして、[その他] → [管理者として実行] を選択します。

展開およびイメージングツール環境ツールを管理者で起動する

展開およびイメージングツール環境ツールを管理者で実行する

 

このツールは、必ず管理者で起動させる必要がありますので、注意してください。

 

WinPE を起動できるように構成する

Windows PE は、Windowsイメージ を PC に展開したり、または、Windows PC から展開用の Windows イメージを抽出したりする際に必要になる、ミニマムな Windows OS です。

この、WinPE を、USB メモリにインストールして、PC から起動できるように構成します。

 

WinPE ファイルを準備する

まず最初に、作業PC の作業用ディレクトリに WinPE のファイル群を

D:\deployment_work\20H2\wimpe_amd64

にコピーします。

この時ディレクトリ、winpe_amd64 は自動的に生成されるので、あらかじめ作っておく必要はありません (存在するディレクトリを指定するとエラーになります)。

展開およびイメージングツール環境 で、copype コマンドを実行します。

copype amd64 D:\deployment_work\20H2\winpe_amd64

===================================================
Creating Windows PE customization working directory

    D:\deployment_work\2004\winpe_amd64
===================================================

C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\Media\bootmgr
    :
    :
C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\Media\zh-tw\bootmgr.efi.mui
153 個のファイルをコピーしました
        1 個のファイルをコピーしました。
        1 個のファイルをコピーしました。
        1 個のファイルをコピーしました。

Success

 

Success と表示されると、完了です。

 

WinPEイメージをマウントする

カスタマイズのために、「展開およびイメージングツール環境」で、Dism /Mount-Image を使用して、WinPE イメージをマウントします。マウントするポイントは、

  • D:\deployment_work\20H2\mount\winpe

とします。

Dism /mount-image /imagefile:d:\deployment_work\20H2\winpe_amd64\media\sources\boot.wim /index:1 /mountdir:d:\deployment_work\2004\mount\winpe

展開イメージのサービスと管理ツール
バージョン: 10.0.19041.1

イメージをマウントしています
[==========================100.0%==========================]
操作は正常に完了しました。

 

WinPE のイメージファイルである winpe_amd64\media\sources\boot.wim を、マウントポイントにマウントしています。

 

WinPE にオプションコンポーネントを追加

このイメージを使用して USB メモリを構成した場合、英語版の環境が立ち上がってしまうので、日本語化できるオプションコンポーネントを WinPEイメージに追加します。

まず、今マウントしている WinPE イメージに含まれるコンポーネントの一覧を、Dism /Get-Packages を使用して表示させてみます。

dism /get-packages /image:mount\winpe

展開イメージのサービスと管理ツール
バージョン: 10.0.19041.1

イメージのバージョン: 10.0.19041.1

Packages listing:

Package Identity : Microsoft-Windows-WinPE-LanguagePack-Package~31bf3856ad364e35~amd64~en-US~10.0.19041.1
State : Installed
Release Type : Language Pack
Install Time : 2019/12/07 6:58

Package Identity : Microsoft-Windows-WinPE-Package~31bf3856ad364e35~amd64~~10.0.19041.1
State : Installed
Release Type : Foundation
Install Time : 2019/12/07 6:55

操作は正常に完了しました。

 

このように、英語 (en-US) な言語パックが入っているのがわかります。

英語のメッセージや、キーボードレイアウトが US 配列のままでも大丈夫であればこのままでもいいですが、それでは困る場合はオプションコンポーネントを追加する必要があります。

WinPE のオプションコンポーネント (WinPE_OCs) は、Wndows ADK に含まれています。オプションコンポーネントは、インストール先をデフォルトのままにしている場合は、以下の場所にあります。

  • 64ビット: C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\
  • 32ビット: C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\x86\WinPE_OCs\

また、それぞれの言語に応じたコンポーネントが、そのサブフォルダに入っています。例えば、日本語に関連するオプションコンポーネントは、ja-JP 以下に入っています。

WinPE を、英語環境から日本語が表示される環境にするには、まず日本語の言語パックをイメージに追加します。

# 日本語ランゲージパック
Dism /image:mount\winpe /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\ja-jp\lp.cab"

 

次に、日本語を表示させるにはフォントパックも必要になります。

# フォントパック
Dism /image:mount\winpe /add-package /packagepath:"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Windows Preinstallation Environment\amd64\WinPE_OCs\WinPE-FontSupport-JA-JP.cab"

 

さらに、日本語化するために以下のようにイメージの設定を変更します。

# インプットロケールとキーボードレイアウト
Dism /image:mount\winpe /Set-Inputlocale:"0411:{03B5835F-F03C-411B-9CE2-AA23E1171E36}{A76C93D9-5523-4E90-AAFA-4DB112F9AC76}"

# デフォルトのUI言語
Dism /image:mount\winpe /Set-Allintl:ja-jp

# デフォルトのタイムゾーン
Dism /image:mount\winpe /Set-Timezone:"Tokyo Standard Time"

# 使用するキーボードドライバ (106/109 キーボード)
Dism /image:mount\winpe /Set-Layereddriver:6

 

最後のキーボードドライバを変更し忘れると、表示は日本語だけれども、キーボードはUS配列として認識されるので注意してください。

 

WinPE にドライバを追加する

こちらの作業は任意になりますし、筆者もこの部分は試していませんが、WinPE イメージにドライバを追加することができます。

例えば、展開・抽出するイメージの保存場所をネットワーク上の共有サーバーにしたい、といった場合に、場合によってはイーサネットのドライバが必要になる可能性があります。

そのような場合、*.inf 形式のドライバーファイルを用意することで、イメージに追加することが出来ます。

ドライバを追加する場合には、Dism /Add-Driver を使用します。

dism /image:mount\winpe /Add-Driver /driver:"C:\Out-of-Box Drivers\mydriver.inf"

 

フォルダ内のドライバを再帰的に追加したい場合は、次のようにします。

Dism /image:mount\winpe /Add-Driver /Driver:c:\drivers /recurse

 

WinPE の電源設定を高パフォーマンスにする

WinPE でPCを起動したときに、電源設定を高パフォーマンスにしておくことで、イメージの展開や抽出にかかる時間を抑えることが出来ます。

メモ帳で、startnet.cmd を編集します。メモ帳は、管理者モードで開くように展開およびイメージングツール環境 から実行します。

notepad mount\winpe\Windows\System32\startnet.cmd

 

次の行を、ファイルの先頭に追加します。

powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c

 

ちなみに筆者の環境でファイルの中は、先のコマンドを追加した状態で以下のようになっています。

powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
wpeinit

追加し終わったら、ファイルを保存し、メモ帳を閉じます。

 

イメージをクリーンアップしマウントを解除する

これで、WinPE のカスタマイズは終わったので、一旦ここで、イメージを最適化します。

イメージを最適化するには、Dism /Cleanup-Image を実行します。

dism /image:mount/winpe /cleanup-image /startcomponentcleanup

展開イメージのサービスと管理ツール
バージョン: 10.0.19041.1

イメージのバージョン: 10.0.19041.1

[===========================99.4%========================= ]
操作は正常に完了しました。

 

最適化が終わったら、イメージの変更をコミットして、マウントを解除します。

コミットして、マウントを解除するには、Dism /Unmount-Image /Commit を使用します。

dism /unmount-image /mountdir:mount/winpe /commit

展開イメージのサービスと管理ツール
バージョン: 10.0.19041.1
    :
    :
イメージをマウントしています
[==========================100.0%==========================]
操作は正常に完了しました。

 

マウントを解除するときに、mount\winpe 以下にあるファイルをエクスプローラ等で開いたままにしていると、次のようなエラーが出ることがあります。

エラー: 0xc1420117

ディレクトリを完全にはマウント解除できませんでした。これは通常、アプリケーションがマウント ディレクトリ内のファイルを開 いていることが原因です。マウント解除のプロセスを完了するには、これらのファイルを閉じてから、再度マウントを解除してください。

DISM ログ ファイルは C:\WINDOWS\Logs\DISM\dism.log にあります

 

このエラーに見舞われた場合は、一旦開いていると思しきウィンドウを閉じて (エクスプローラーや、メモ帳などです)、再度コマンドを実行するのですが、そのときに /commit をつけて実行するとエラーになります。

というのも、すでにイメージはコミットされていて、残りはマウントを解除するだけになっているからです。この場合、/commit をつけずに実行してもエラーになるので、次のように、/discard をつけて実行します。

dism /unmount-image /mountdir:d:\deployment_work\2004\winpe_amd64\mount /discard

展開イメージのサービスと管理ツール
バージョン: 10.0.19041.1

イメージのマウントを解除しています
[==========================100.0%==========================]
操作は正常に完了しました。

 

WinPE イメージを新しいものと置き換える

カスタマイズした WinPE イメージをエクスポートして、デフォルトのイメージと置き換えます。

まず、Dism /Export-Image を使って、イメージをエクスポートします。エクスポートしたイメージは、作業ディレクトリの Images\boot2.wim に出力されます。

dism /export-image /sourceimagefile:winpe_amd64\media\sources\boot.wim /sourceindex:1 /DestinationImageFile:images\boot2.wim

 

エクスポートしたら、元々の WinPE イメージ (winpe_amd64\media\sources\boot.wim) を削除し、今回エクスポートしたイメージと置き換えます。

# 元の WinPE イメージを削除
Del winpe_amd64\media\sources\boot.wim

# 新しいイメージをコピー
copy images\boot2.wim winpe_amd64\media\sources\boot.wim

 

起動可能な WinPE ドライブを作成する

WinPE ドライブの作成

ここまでの作業で、カスタマイズした WinPE イメージを用意することが出来たので、前回用意しておいた USB メモリに、WinPE が起動できるようにインストールします。

作業用PC に、前回作成した USBメモリ を指します。Windows で認識出来たのを確認したら、管理者で「展開およびイメージングツール環境」 を実行します。

まず、DISKPART コマンドで、USB メモリのボリュームを確認します。

DISKPART> list vol

  Volume ###  Ltr Label        Fs    Type        Size     Status     Info
  ----------  --- -----------  ----  ----------  -------  ---------  --------
    :
    :
  Volume 11    P   WINPE        FAT32  リムーバブル      2000 MB  正常
* Volume 12    O   USB-B        NTFS   リムーバブル        12 GB  正常

 

ここで、ラベルが WinPE で表示されているドライブレターを調べます。

この例では、Volume11 で、ドライブレターは P になっているのがわかります。

ドライブレターがわかったら、DISKPART を exit します。

後は、MakeWinPEMedia コマンドで、WinPE を USB にインストールします。

makewinpemedia /UFD D:\deployment_work\2004\winpe_amd64 P:

 

P: ドライブのすべてのデータが失われます、というメッセージが出ますが、Y で操作を続行します。

WARNING, ALL DATA ON DISK DRIVE P: WILL BE LOST!
Proceed with Format [Y,N]?Y

 

WinPE のインストールが始まります。

しばらくして、"Success" と表示されたら完了です。

Formatting P:...

Setting the boot code on P:...

Copying files to P:...

Success

 

起動を確認

念の為、WinPE をインストールしたUSBメモリを、参照マシン に挿して、USB から起動できるか確認してみます。

参照マシンの BIOS セッティングで USBメモリからの起動を優先するように構成した上で、起動してみましょう。

次のような画面が立ち上がれば、WinPE 起動メディアの完成です。

Windows PE 起動画面

Windows PE 起動画面 (心霊写真ではありません)

 

終了させるには、USB メモリを抜いて exit コマンドでOKです。

 

次回は Windows イメージの作成

今回は、Windows PE のカスタマイズを行い、USBメモリにインストールし、起動ができる Windows PE メディアの作成をしました。

次回は、実際にインストールするための Windows 10 イメージの作成に移ります。


 

 
記事を共有する

zaturendo

中小企業社内SE。

0件のコメント

コメントを残す

メールアドレスが公開されることはありません。