クローニングでWindows10を簡単キッティング!~応答ファイルをつくろう

Windows10
クローニングでWindows10を簡単キッティング!~応答ファイルをつくろう

前回はクローニングにおける「一般化」についてご紹介しました。

今回は一般化を行う時に必ず必要となる「応答ファイル」を作成してみます。

専用のツールを使っての作成はなかなか面倒ですが、一度経験すると慣れると思います。避けては通れない道ですので頑張っていきましょう。

参考になる素晴らしいサイト

グレイト

気合を入れて書こうと思ったのですが、実はとても素晴らしいサイトがあります。

まずはこのサイトを読んでみてください。もうほとんど書くことが無いぐらいです。

本記事では上記サイトに書かれていない情報を中心にご紹介します。「車輪の再発明」はしません。

テクニシャンPCを用意する

ノートPC

応答ファイルは、テクニシャンPCで作成します。Windows PE を作った時に使用した Windows ADK がインストールされた PCのことです。

記事中では Windows10 1607 用の Windows ADK をインストールしていますが、現時点の最新は 1703 です。クローニングする Windows10 のバージョンに合った Windows ADK を使用してください。

install.wimファイルを入手する

インストールメディア

install.wim ファイルは、Windows10のインストールメディア(ISOファイル)の中にあります。sources フォルダの中です。

Windows10のISOファイルを入手する

インストールメディアを持っていない場合、Microsoft のサイトにあるツールを使用して、Windows10 のISOファイルをダウンロードすることで入手できます。

ツールをダウンロード・実行し、ISOファイルをダウンロードしましょう。

wimファイルを抽出する

PCにISOファイルをマウントすることで、CD・DVDのインストールメディアのように中のファイルを見ることができるようになります。

install.wim は見つかりましたか?
sources フォルダの中に install.esd というファイルはあっても、install.wim は無いかもしれません。

Windows10 は、Home、Pro、Education という3つのエディションが1つのISOファイルにまとめられています。
install.esd の中にそれぞれのエディションの install.wim が入っているので、取り出す必要があります。

Enterprise は単独で配付されており、ISOファイルには install.wim がそのまま入っています。「Windows10 Proffessional」と書かれているような単独のインストールメディアでも同様です。

具体的には下記のようにして取り出しますが、ちょっと面倒ですね。

テクニシャンPCにISOファイルをマウントし、sources\install.esd をローカルにコピーします

テクニシャンPCからISOファイルを取り出します(アンマウント)

管理者として「展開およびイメージングツール環境」を起動し(コマンドプロンプトのような画面です)、install.esd のコピー先のフォルダに移動します

以下のコマンドを実行します。

Dism /Get-ImageInfo /ImageFile:install.esd

各エディションのIndex番号が表示されますので、Professional のIndex番号を覚えておきます。

おそらく 1 です。

以下のコマンドを実行します

Dism /Export-image /SourceImageFile:install.esd /SourceIndex:1 /DestinationImageFile:install.wim /Compress:max /CheckIntegrity

SourceIndex に設定している数字は、Professional のIndex番号です。

install.esd と同じフォルダに Professional の install.wim が出力されます。

これでようやく install.wim が入手できました。

ちょっと余談

以前の記事で、バックアップしたwimファイルからPCを戻す方法をご紹介したことがありました。

実はOSのインストールでも同じようなことをしています。

install.wim は Windows10 の素のイメージファイルで、それをPCに書き戻しているのです。

応答ファイルを作成する

データのイメージ

詳細な手順は最初の方でご紹介したサイトに記載されていますので、参照してください。

  • 「Windows システム イメージ マネージャ」を起動します。
  • 「Windowsイメージ」ペインで、install.wim を指定します。
  • カタログファイルが無いので作成するか聞かれるので、作成します。
  • 「応答ファイル」ペインで、新しい応答ファイルを作成します。ファイル名は Unattend.xml とします。
  • 「Windowsイメージ」ペインから、応答ファイルに設定したいコンポーネントを追加し、値を設定します。
  • 応答ファイルを保存します。

これで応答ファイルが出来上がります。

「Windows システム イメージ マネージャ」を使って作成しましたが、応答ファイルはただのテキストファイルです。テキストエディタで直接修正してOKです。

実際のところ、一度作ったら後はテキストエディタでメンテナンスすることがほとんどです。

最低限の設定内容

単純なクローンの場合、以下のような設定でだいたい事足ります。

1 windowsPE

  • amd64_Microsoft-Windows-International-Core-WinPE_neutral
設定項目-1 設定値 備考
InputLocale 0411:E0010411
LayeredDriver 6
SystemLocale ja-JP
UILanguage ja-JP
UILanguageFallback ja-JP
UserLocale ja-JP

3 generalize

  • amd64_Microsoft-Windows-PnpSysprep_neutral
設定項目-1 設定値 備考
DoNotCleanUpNonPresentDevices true
PersistAllDeviceInstalls true

4 specialize

  • amd64_Microsoft-Windows-Shell-Setup_neutral
設定項目-1 設定項目-2 設定項目-3 設定値 備考
AutoLogon Password Value {暗号化されたパスワード}
PlainText false falseの場合、Windowsシステムイメージマネージャーで入力されたパスワードは暗号化されます。
LogonCount 1
Username SetupUser 自動ログインする時のユーザーです。大抵はPCの管理者権限や、ドメインへの操作権限を持つユーザーが使用されます。
Enabled true
ComputerName * ランダムで設定されるので、後でスクリプト・バッチで変更することが多いです。
BluetoothTaskbarIconEnabled false
CopyProfile true
RegisteredOrganization {登録組織名}
RegisteredOwner {使用者} レジストリに登録されるので、後でスクリプトで変更することが多いです。

7 oobeSystem

  • amd64_Microsoft-Windows-International-Core_neutral
設定項目-1 設定値 備考
InputLocale 0411:E0010411
SystemLocale ja-JP
UILanguage ja-JP
UserLocale ja-JP
UILanguageFallback ja-JP
  • amd64_Microsoft-Windows-Shell-Setup_neutral
設定項目-1 設定項目-2 設定項目-3 設定値 備考
FirstLogonCommands SynchronousCommand Action AddListItem
CommandLine {実行したいスクリプト・バッチファイルのフルパス}
Order 1 スクリプト・バッチファイルの実行順です。
OOBE HideEULAPage true
HideWirelessSetupInOOBE true
NetworkLocation Work
ProtectYourPC 1
UserAccounts AdministratorPassword Value {暗号化されたパスワード}
PlainText false falseの場合、Windowsシステムイメージマネージャーで入力されたパスワードは暗号化されます。応答ファイルで管理者パスワードがバレますので必ずfalseにしましょう。
WindowsFeatures ShowInternetExplorer true
ShowMediaCenter false
ShowWindowsMediaPlayer false
TimeZone Tokyo Standard Time
RegisteredOwner {使用者} レジストリに登録されるので、後でスクリプト・バッチで変更することが多いです。
RegisteredOrganization {登録組織名}

UACを有効に戻す

戻す

ここで忘れてはならない大事な設定があります。

でマスターPCを作った際に UAC を無効にしていますので、有効に戻しましょう。
レジストリを変更しますので、スクリプト・バッチで行います。

最後に

スクリプトやバッチで行った方がよい処理がいくつかありましたね。
簡単なクローニングであっても、やはりスクリプトやバッチの実行が必要になることは多いので、後ほど触れたいと思います。

次回は、作成した応答ファイルを使って実際に一般化を実施してみます。