前回、前々回でマスターイメージの作成と、
イメージからのクローニングをできるようになりました。
クローニングは何十台~百何台と複数回やる必要がある作業なのに、
毎回コマンドを打って、イメージ復元の進捗を確認して…なんてやってられません。
WinPEが起動したら、イメージ展開して再起動するまでを自動的にやってもらいましょう。
WinPEのカスタマイズ
パーティション作成やイメージ展開コマンドは避けては通れないのですが、
人が張り付いて実行する必要はありません。
自動実行を実現させるために、WinPEのカスタマイズをやっていきます。
参考】Microsoft Doc WinPE:マウントとカスタマイズ
Microsoft Doc 起動可能な WinPE メディアの作成
手順はこんな感じ
- 作業ファイルの作成
- WinPEブートイメージをマウント
- WinPEをカスタマイズ
- イメージマウントの解除
- 起動メディア作成
0.前提条件
Windows ADKとWinPEアドオンは導入済
1.作業ファイルの作成
展開及びイメージングツール環境を管理者権限で実行
表示されたコマンドプロンプトで下記コマンドを実行して
WinPEの作業ファイルをコピーする。
1 |
copype amd64 D:\WinPE_amd64 |
2.WinPEブートイメージをマウント
上で作成した作業ファイルから、WimPEのイメージを作業用の場所にマウントする。
イメージ作成と展開で良くみたDism コマンドがここでも活躍。
1 |
Dism /Mount-Image /ImageFile:"D:\WinPE_amd64\media\sources\boot.wim" /index:1 /MountDir:"D:\WinPE_amd64\mount" |
3.WinPEのカスタマイズ
スクリプトを自動的に実行してもらいたいので、
スクリプトファイルをWinPEに含めるカスタマイズと
スタートアップのタイミングで展開用のスクリプトを実行するようにカスタマイズします。
ファイルの追加はイメージをマウントしたフォルダ内にファイルを追加するだけ。
Scriptフォルダを新規で作成して、
その中にテキストファイルとバッチファイルを追加しました。
この中のファイルはRAMに全て展開されるようで、
ファイルを追加しすぎると、WinPEが遅くなったり、起動しなくなる可能性もある。
スタートアップスクリプト(<マウント先>\Windows\System32\Startnet.cmd)
に実行したい内容を追記。
(電源プランの変更と、追加配置したバッチの実行を記述)
1 2 3 |
wpeinit powercfg /s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c x:\Script\deployment.bat |
\Script\deployment.bat の内容
1 2 3 4 5 6 7 8 9 10 11 12 |
diskpart /s x:\Script\createPatitions.txt REM Apply-images and Settings dism /Apply-Image /ImageFile:C:\image.wim /Index:1 /ApplyDir:E:\ dism /Apply-Image /ImageFile:C:\image.wim /Index:2 /ApplyDir:F:\ REM ===== Mark boot volume ===== bcdboot E:\Windows /l ja-jp REM ===== System reboot ===== wpeutil reboot |
\Script\createPartitions.txtの内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
REM Disk initialize select disk 0 clean convert gpt REM ===== Create EFI-System partition ===== create partition efi size=100 format quick fs=fat32 label="System" REM ===== Create MSR partition ===== create partition msr size=16 REM ===== Create WinOS partition ===== create partition primary format quick fs=ntfs label="OS" assign letter=E REM ===== Create Data partition ===== create partition primary format quick fs=ntfs assign letter=F REM ===== Result & exit ===== list volume exit |
4.WinPEイメージのマウント解除
1 |
Dism /Unmount-Image /MountDir:"D:\WinPE_amd64\mount" /commit |
5.起動メディア作成
カスタマイズしたWinPEを起動できるメディアを作成。
USBドライブ(P)作成の場合
1 |
MakeWinPEMedia /UFD D:\WinPE_amd64 P: |
ISOファイル作成の場合
1 |
MakeWinPEMedia /ISO D:\WinPE_amd64 D:\Iso-work\WinPE_amd64.iso |
カスタマイズWinPEを起動すれば展開まで自動実行
クローニングするPCでカスタマイズWinPEでブートすれば、
パーティション作成~イメージ展開を実行して再起動までかけてくれるようになります。
マスターイメージをどのように参照するのか?とか
ドライブをどのように切るの?とかとか
実機で確認と調整をしなければいけない部分はありますが、
一度出来上がってしまえば半自動で終わらせられます。
備忘録終わり
今回はSysprepを使ったクローニング手順と+αについて調査しました。
クローニングはマスターPCとクローニングPCが同じ構成でないと使えない手段ですが、
PCの一括入れ替え時は同じモデルで購入するので、有効な手段ですよね。
マスターイメージの展開にメディアを使ったクローニングでしたが、
Windows展開サービスを使ったクローニングや、
プロビジョニングパッケージ、Windows AutoPilotという手段もあるという事なので
また時間を作って調査してみようと思います。
コメント