Win10でマスターイメージ作成を行った話

はじめに

Q.なんでやったん?
A.そういえば一度もやったことなかったなーと思って。。。

基本的に行動ログとして記録するため、全手順なるべくスクショをとる

こちらのブログを参照しました。

https://soma-engineering.com/desktop/windows10/create-masterimage-win10pro-1/2018/09/30/

テスト環境

今回は全体的に仮想環境にて実施。
VirtualBox6.1.32(2022/1/29時点で最新のもの)
windows10の基本のOSはmicrosoft公式(https://www.microsoft.com/ja-jp/software-download/windows10)のツールから生成
仮想環境ではメモリ4GB,HDD50GBを基準に各仮想PCを生成

virtualbox動かす側のスペックはこんな感じ
Ryzen7 3700x メモリ32GB Geforce1660Ti

行動ログ

基準となるOSのインストール

テスト環境なのでプロダクトキーがありませんを選択

まぁこんなことしなきゃいけない環境ってpro以外ないでしょってことでproを選択

1からなのでカスタムを選択

適当に割り当て

割り当てたらインストールが進むので待つ

インストールが終わると二度再起動がかかる。(画像なし

再起動後
この画面がでたら「Ctrl+Shift+F3」を押す。
(筆者は一度素で間違えて通常インストールしました)
なお、右側のCtrlやShiftだとこの画面で反応しないことがあるっぽいです。左側のキーでやりましょう(この辺はたぶんVirtualBoxでやってるからっていう問題)

↓この画面になったら手順間違えてます

正しく実行できていれば下記の画面が表示される
これがsysprepというサービスが起動された状態となる。

この画面になったらシステム監査モードに入って作業を行う
OOBEはマスターイメージが完成している状態で行うべきだそうな。
詳しくは参照元を確認

https://soma-engineering.com/desktop/windows10/difference-auditmode-oobe/2019/06/08/

システム監査モードにしてOKをクリックすると一度自動的に再起動される

二度目のこの画面になったらキャンセルを実行する

キャンセルを実行したら各種カスタムを行う。
今回は一部のソフトのアンインストールとchromeをデフォルトで入れる方針で対応

アンインストール対象は以下

  • Microsoft Solitaire Collection
    • 通常のアンインストール手順にてアンインストール実施

インストール対象

スタートメニューのブロックの整理も行う

Chromeインストール

Edge起動してユーザーデータを使用せず開始

設定画面は無視してタブを開きChromeを探す

ダウンロードしたファイルを実行して下記画面にまでなったらとりあえずOK

スタートにピン止めして

設定が終わったら上記の通りEdgeとChrome以外を一度消す
(これは結局適応されなかった)

設定後

各種初期設定をしたら

  1. sysprepにて監査モードを終了し、OOBEに戻す
  2. WinPEでキャプチャをする

という流れになる。
WinPEの作成については省略。参考先を見てください。(筆者は普段の環境汚したくなかったのでもう一台分仮想OS設定してそちらで作成しました)

https://soma-engineering.com/desktop/windows10/how-to-create-winpe-1809/2018/12/16/

sysprepでOOBEに戻す

sysprepは「C\Windows\System32\Sysprep\sysprep.exe」に存在。
標準のWindows検索ではでてこないソフトになるのでエクスプローラーから探す。

起動したらこの画面になるのでOOBEに入るとしたうえでシャットダウンオプションをシャットダウンにする

WinPEの準備ができたらマスターを作ったPCでWinPEをブートする

virtualboxの場合は通常だとHDDやSSDの選択が優先されてしまうので、起動中にF12を押すなどで対応

WinPEが起動したらこの画面になる

WinPE上ではUSBをつなぐには条件がいろいろあるっぽい(審議不確かだが、検索した感じではUSB3じゃだめ、FAT32フォーマットじゃないとだめetcetc...)ので、今回はvirtualboxでやっているというメリットを生かしてdiskを追加マウント→そこに保存という形でごまかす。(追加の件は本題から外れるので省略。virtualboxでマウントしてwinpe起動時にdiskpart起動して適当にフォーマット、マウントすればいいと思います)

実機環境で行うのであればあらかじめ初期設定を行うPCでのフォーマットを少な目にしておくといいと思います。

下記がディスクマウントセットからそのマウント先へイメージファイルを設置するまで。

コードテンプレは下記

Dism /Capture-Image /ImageFile:G:\install.wim /CaptureDir:E:\ /Name:"Windows10 Pro"

ImageFileは作成したイメージファイルを置く場所、
CaptureDirはキャプチャ対象
Nameはイメージファイルのラベル名となる

作成が終わったらwpeutil shutdown でPCをシャットダウンする

コピー先へのインストール編

コピー先にインストールするときには以下の手順

  • WinPE起動ディスクをインストール先につける
  • 先ほど作成したキャプチャファイルをWinPEで読み込める状態にする

インストール先となるディスクおよびボリュームを設定する
手法は以下の通り

  • diskpart起動
  • listdiskで入れる予定のディスクがまず読み込まれているかチェック
  • 入れるディスクを「select disk <対象ディスクナンバー>」で選択
  • 「clean」で選択したディスクを初期化
  • 「create partition」でディスクにパーティションを作成
    • ここでもし作成したボリュームのドライブレターがC以外になっているなら選択しているボリュームを「select volume <選択したいボリュームナンバー>」で選択し、「assign letter=<変更するボリュームラベル>」などで変えておくといい
  • 新しく作ったボリュームを「format fs=ntfs quick」でフォーマット
  • 「exit」でdiskpartを終了する

今回はCドライブに新しく作ったパーティションが来るように設定した。

notepadなどから保存を試し、ディスクが確認できること、ドライブレターが設定されていること、容量が確認できることを確認できたらOK

作成したイメージを適用させるには下記コマンド

Dism /Apply-Image /ImageFile:E:\install.wim /Index:1 /ApplyDir:C:\

ImageFileでキャプチャしたファイルを選択し、
ApplyDirで適応先を選択する。
Indexは1を指定すること

クローンが完了したら再起動
Virtualboxでやってる場合はいったんshutdownのうえで対象ディスク以外をアンマウント

・・・とするとほぼ確実にブートファイルねぇよ!っておこられるのでブートファイルを作る。

今回はいったんクリーンにしたうえで200MBのブート領域をあらかじめセット
残りの領域をNTFSでフォーマットし、そこにキャプチャを適応。

キャプチャを適応したのちキャプチャ展開したディスクからブートイメージを用意したブート領域に適応する

  • 追記(2022/1/30)
    • BOOTドライブは必ずパーティションをactiveにすること。
      やり方はdiskpart内でBOOTを設定したパーティションをselect partitionで選択した状態で「active」でOK
      これをしないとブートが有効にならず、たちあがらない。

それらがおわったら展開のためにつけてたisoやHDDマウントを外して起動

windowsがたちあがればOK

ここまで設定したら標準のwindows設定ぱちぱちして通常のwindows起動後画面になることを確認する。

今回はChromeを初期インストールにしたのでそれが適応されてたのでOK。

以下作業メモ

  • スタートメニューは変更しても適応されない(やったはずなのに適応されてなかった)
  • 初期からインストールされてるやつ(ソリティアコレクションとか)のアンインストールは地味にめんどくさいっぽい(適応されてなかった)
  • WinPE中は英語配列になるのでコマンドがめんどくさい
    • 「:」はShift+「;」など

デフォルトのブラウザ設定とかはどうなんかな・・・
また後日