2019年3月8日金曜日

windows10をsysprepでキッティングして配布したい

sysprepでキッティングする
PCを複数台。同じスペックで配布しようと、windowsを単純にディスクコピーで増やすと、SIDが被って面倒な事になりかねないので、
sysprepを使って作業する事にする。
始めはさっぱりsysprepの使い方が分からなかったので、もう諦めようと思ったのだけれども、何とかなったので備忘録として。
先人は凄い。

用意した物
・windowsインストール用ISOファイル
・配布同様スペックのPC

まず、以下のウェブサイト
http://harukeee.hatenablog.com/entry/2018/05/31/002525を参考に、Windows ADKをインストールして、sysprepの設定ファイルを書く。
尚、Windows ADKをインストールするPCは、配布環境PCである必要は無いので、普段使っているPCにインストールすれば良い。
結構なディスク容量を必要とするので、デスクトップ機の方が良いだろう。
次にWindowsシステムイメージマネージャを起動させ、

>[ファイル] → [Windows イメージの選択] で Windows 10 の ISO ファイルを選択する
>。
>(Professional か Enterprise か Education かがここで聞かれる)

HOMEでも問題なく通る。

で、上記ウェブサイトに書いてあるように、http://itokame.jp/pcs/sysprep/unattend.htm
を参考に設定していく。

USBメモリなりに、できあがったxmlファイルはコピーしておく(ファイル名は何でも良いが分かるように。僕はsysprep.xmlにした)。

配布同様スペックのPCに、win10をインストール。isoファイルをdvdに焼き込んでインストールすれば良い。
インストール終了後(これが説明難しい。ファイルの書き込みが終わった後、と言えば良いのかしらん。何らかの設定を促されるところまでいったら、で良いかな)、
Ctrl+Shift+F3で、「監査モード」に入る。
コルタナが出てきて、言語選択する画面が出たときかな。
監査モードに入ってからは、普通にセットアップを進めていくが、sysprepのウインドウ(システム準備ツール)が一つ必ず開く。
これは閉じて良い(むしろ閉じないと怒られる)。
sysprepは、sysprep(ウインドウやコマンドで)でシャットダウンしない限り、再起動しようがシャットダウンしようが監査モードが続くので、ドライバインストールなどは問題ない。
トラップ!セットアップでの注意点は、兎に角ストアアプリを殺す事。
上記URLだと2のところ。
使うだろうと残しておく事は出来ない。これをやらないとかならずsysprepで引っかかる。
全部消す。
まずは、ストアアプリ一覧取得で取得して

ストアアプリ一覧取得
Get-AppxPackage | Where IsFramework -eq $false | Select Name,PackageFullName
以下構文に当てはめる。
Get-AppxPackage アプリ名 | Remove-AppxPackage

Get-AppxPackage king.com.CandyCrushSodaSaga | Remove-AppxPackage          # Candy Crush Soda Saga

次に不死身無効化
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "アプリ名" | Remove-AppxProvisionedPackage -Online

Get-AppxProvisionedPackage -Online | Where DisplayName -Like "king.com.CandyCrushSodaSaga" | Remove-AppxProvisionedPackage -Online          # Candy Crush Soda Saga

最後に

sysprep 時にエラーになるストアアプリのアンインストール
追加アンインストール。(ユーザーログイン後は復活。要カスタマイズ)

Get-AppxPackage Microsoft.DesktopAppInstaller | Remove-AppxPackage
Get-AppxPackage Microsoft.GetHelp | Remove-AppxPackage
Get-AppxPackage Microsoft.Getstarted | Remove-AppxPackage
Get-AppxPackage Microsoft.Messaging | Remove-AppxPackage
Get-AppxPackage Microsoft.Microsoft3DViewer | Remove-AppxPackage
Get-AppxPackage Microsoft.MicrosoftStickyNotes | Remove-AppxPackage
Get-AppxPackage Microsoft.Office.OneNote | Remove-AppxPackage
Get-AppxPackage Microsoft.People | Remove-AppxPackage
Get-AppxPackage Microsoft.Print3D | Remove-AppxPackage
Get-AppxPackage Microsoft.StorePurchaseApp | Remove-AppxPackage
Get-AppxPackage Microsoft.Wallet | Remove-AppxPackage
Get-AppxPackage Microsoft.WebMediaExtensions | Remove-AppxPackage
Get-AppxPackage Microsoft.Windows.Photos | Remove-AppxPackage
Get-AppxPackage Microsoft.WindowsAlarms | Remove-AppxPackage
Get-AppxPackage Microsoft.WindowsCalculator | Remove-AppxPackage
Get-AppxPackage Microsoft.WindowsCamera | Remove-AppxPackage

Grooveミュージックを残してたらsysprepでエラー出したので、ストアアプリは全て消すべき。
-------------------

③スタートメニューをテンプレート化

Export-Startlayout -path C:\Windows\Temp\Startmenu.xml
Import-StartLayout -LayoutPath C:\Windows\Temp\Startmenu.xml -MountPath C:\

C:\Users\Default\AppData\Local\Microsoft\Windows\Shell に LayoutModification.xml ができる。

全ての設定を終えたら、

(1)で作った XML ファイルを

C:\Windows\System32\Sysprep

に置き、コマンドプロンプトで

cd C:\Windows\System32\Sysprep
Sysprep /generalize /oobe /shutdown /unattend:○○○.xml

*xmlファイル名は前に付けた物を

これが通ると、シャットダウンして終了。
ディスククーロン機材でクローンしまくって配布する。
上記コマンドでシャットダウンした後に立ち上げてしまうと、普通にセットアップが始まってしまうので、絶対に立ち上げない事。

トラップ!
この際、sysprepエラーが出て走らない場合、上記のアプリ削除をまず疑って下さい。
引っかかっているアプリがあれば、ログで見つけられる。
次に、「xmlファイル内で」無効な設定を探して下さい。これがはまりポイント。
たとえば空欄の設定部分があった場合(Windowsシステムイメージマネージャ上では存在しない項目があったりする場合)、
その項目をxml上で削除しなければ(テキストエディタで削除しなければ)エラーが出続ける。

僕の環境のxmlは以下。
まんまは使えないので、かならずADKを入れて作成する事。


追記
ライセンス認証が通らない・・・通らないけど、エラーメッセージも何かよく分からない。
アクティブディレクトリ組めなきゃ駄目なのかしらん。でもHOMEでも出来る記述見たんだけどなあ・・・。

0 件のコメント:

コメントを投稿