Windows 10(1803)で sysprep 超まとめ
展開、クローニング作業の例を記事にしてみます。
Windows 7 以降、久しぶりに触ったので備忘録代わりです。
Windows 10 になって久しいですが、まだ苦労している人もいるはず。(きっと)
Azure AD で AutoPilot が使える環境でもなく、、という人(俺)へ。
「知ってる」って人も監査モードを見てから去ってください。
プロファイルのテンプレ化で書いてない記事が多いから。。
用意するもの
- Windows 10 作業用パソコン
- Windows 10 展開用パソコン(仮想OSでも可)
- Windows 10 Business Edition 1803(ISO)※現ボリュームライセンス盤
- Windows ADK (download)
あらすじ
1.Windows ADK で sysprep 用の応答ファイルを作る
自分の PC でファイルを作成。OS は Windows 10 で。
Windows ADK をインストール。何かいっぱい入るけど気にしない。
スタートメニューから Windows システム イメージ マネージャー (Windows SIM) を起動する。
[ファイル] → [Windows イメージの選択] で Windows 10 の ISO ファイルを選択する。
(Professional か Enterprise か Education かがここで聞かれる)
左下「Windows イメージ」に設定テンプレート一覧が表示される。
(ここで、ツールの概要をざっと説明)
左下の「Windows イメージ」枠が sysprep 作成用テンプレート。
中上の「応答ファイル」枠が sysprep に使う XML ファイル。
「Windows イメージ」からテンプレートを選択し、「応答ファイル」に追加・コピーする。
「応答ファイル」枠で値をセットする。
保存してできた XML ファイルを sysprep コマンド実行時に読み込ませます。(4)で説明。
上記を踏まえて、一部抜粋をご覧ください。
[XML 抜粋]
<settings pass="specialize">
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<CopyProfile>true</CopyProfile>
<TimeZone>Tokyo Standard Time</TimeZone>
<DoNotCleanTaskBar>true</DoNotCleanTaskBar>
<ProductKey>XXXXX-XXXXX-XXXXX-XXXXX-XXXXX</ProductKey>
</component>
</settings>
「<component name=」の「Microsoft-Windows-Shell-Setup」が「Windows イメージ」の一覧にあります。
それを右クリックすると応答ファイルの追加先「<settings pass=specialize」が書いています。
サンプルXML を見れば設定そのままなので、丸パクリ可能です。が、
残念ながらサンプルそのままは使えません。Administratorパスワードが違うんで。。
「どれが何の設定?」はこちらのサイトをご覧ください。必要そうなのが抜粋されてます。
sysprepによるプロファイルコピー
その他は、英語ですがヘルプボタンか検索でどうぞ。
ページの最後にサンプル(Unattend.xml)を置いておきますので参考にどうぞ。
実際使っているので、さほど遜色ないかと思います。
2.クローン用パソコンにOSを入れる
(1)と同じ ISO で Windows 10 をインストールします。
インストール完了直後に 監査モード でセットアップします。
監査モード の入り方はキーボードとか言語とか選んだあと、Ctrl + Shift + F3 キー。
(↓こんな感じのときに押せばよい。割とタイミングはアバウト。)
自動的に Administrator でログインします。
以降、アップデートや、ソフトのインストールや、ドライバや、プリンタなどなど。
3. クローン用パソコンで設定を作り込む
ここからはよくやりがちな事を。
① OneDrive を抹殺
OneDrive を停止
taskkill /f /im OneDrive.exe
OneDriveを削除
C:\Windows\SysWOW64\OneDriveSetup.exe /uninstall
エクスプローラー の サイドバー からも消す(.regで保存してね)
[OneDrive-Remove-SideBar.reg]
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}]
@="OneDrive"
"System.IsPinnedToNameSpaceTree"=dword:00000000
②ストアアプリを消す(PowerShell で実施)
ストアアプリ一覧取得
Get-AppxPackage | Where IsFramework -eq $false | Select Name,PackageFullName
ストアアプリをアンインストール(自分でカスタマイズしてね)
Get-AppxPackage king.com.CandyCrushSodaSaga | Remove-AppxPackage # Candy Crush Soda Saga
Get-AppxPackage Facebook.Facebook | Remove-AppxPackage # Facebook
Get-AppxPackage *zune* | Remove-AppxPackage # Groove ミュージック、映画、テレビ
Get-AppxPackage KeeperSecurityInc.Keeper | Remove-AppxPackage # Keeper
Get-AppxPackage 828B5831.HiddenCityMysteryofShadows | Remove-AppxPackage # Hidden City アイテム探しアドベンチャー(FCU以降)
Get-AppxPackage NAVER.LINE* | Remove-AppxPackage # LINE
Get-AppxPackage 7EE7776C.LinkedInforWindows | Remove-AppxPackage # LinkedIn(FCU以降)
Get-AppxPackage *solit* | Remove-AppxPackage # Microsoft Solitaire Collection
Get-AppxPackage flaregamesGmbH.RoyalRevolt2 | Remove-AppxPackage # RoyalRevolt 2
Get-AppxPackage 89006A2E.AutodeskSketchBook | Remove-AppxPackage # SketchBook(FCU以降)
Get-AppxPackage Microsoft.SkypeApp | Remove-AppxPackage # Skypeを始めよう
Get-AppxPackage SpotifyAB.SpotifyMusic | Remove-AppxPackage # Spotify(FCU以降)
Get-AppxPackage *Twitter | Remove-AppxPackage # Twitter
Get-AppxPackage *xbox* | Remove-AppxPackage # Xbox
Get-AppxPackage Microsoft.XboxApp | Remove-AppxPackage # Xbox(AU以降)
Get-AppxPackage Microsoft.XboxGameOverlay | Remove-AppxPackage # Xbox(AU以降)
Get-AppxPackage Microsoft.XboxIdentityProvider | Remove-AppxPackage # Xbox(AU以降)
Get-AppxPackage Microsoft.XboxSpeechToTextOverlay | Remove-AppxPackage # Xbox(AU以降)
Get-AppxPackage Microsoft.MicrosoftOfficeHub | Remove-AppxPackage # 新しいOffice を始めよう
Get-AppxPackage Microsoft.5220175982889 | Remove-AppxPackage # テレBing
Get-AppxPackage king.com.BubbleWitch3Saga | Remove-AppxPackage # バブルウィッチ3(FCU以降)
Get-AppxPackage A278AB0D.MarchofEmpires | Remove-AppxPackage # マーチ オブ エンパイア
Get-AppxPackage *bing* | Remove-AppxPackage # マネー、スポーツ、ニュース、天気
Get-AppxPackage Microsoft.OneConnect | Remove-AppxPackage # 有料Wi-Fi & 携帯
Get-AppxPackage DolbyLaboratories.DolbyAccess | Remove-AppxPackage # Dolby Access
ストアアプリの不死身を無効化(新ユーザーでも復活しない)
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "king.com.CandyCrushSodaSaga" | Remove-AppxProvisionedPackage -Online # Candy Crush Soda Saga
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "Facebook.Facebook" | Remove-AppxProvisionedPackage -Online # Facebook
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "*zune*" | Remove-AppxProvisionedPackage -Online # Groove ミュージック、映画、テレビ
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "KeeperSecurityInc.Keeper" | Remove-AppxProvisionedPackage -Online # Keeper
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "828B5831.HiddenCityMysteryofShadows" | Remove-AppxProvisionedPackage -Online # Hidden City アイテム探しアドベンチャー(FCU以降)
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "NAVER.LINE*" | Remove-AppxProvisionedPackage -Online # LINE
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "7EE7776C.LinkedInforWindows" | Remove-AppxProvisionedPackage -Online # LinkedIn(FCU以降)
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "*solit*" | Remove-AppxProvisionedPackage -Online # Microsoft Solitaire Collection
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "flaregamesGmbH.RoyalRevolt2" | Remove-AppxProvisionedPackage -Online # RoyalRevolt 2
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "89006A2E.AutodeskSketchBook" | Remove-AppxProvisionedPackage -Online # SketchBook(FCU以降)
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "Microsoft.SkypeApp" | Remove-AppxProvisionedPackage -Online # Skypeを始めよう
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "SpotifyAB.SpotifyMusic" | Remove-AppxProvisionedPackage -Online # Spotify(FCU以降)
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "*Twitter" | Remove-AppxProvisionedPackage -Online # Twitter
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "*xbox*" | Remove-AppxProvisionedPackage -Online # Xbox
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "Microsoft.XboxApp" | Remove-AppxProvisionedPackage -Online # Xbox(AU以降)
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "Microsoft.XboxGameOverlay" | Remove-AppxProvisionedPackage -Online # Xbox(AU以降)
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "Microsoft.XboxIdentityProvider" | Remove-AppxProvisionedPackage -Online # Xbox(AU以降)
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "Microsoft.XboxSpeechToTextOverlay" | Remove-AppxProvisionedPackage -Online # Xbox(AU以降)
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "Microsoft.MicrosoftOfficeHub" | Remove-AppxProvisionedPackage -Online # 新しいOffice を始めよう
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "Microsoft.5220175982889" | Remove-AppxProvisionedPackage -Online # テレBing
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "king.com.BubbleWitch3Saga" | Remove-AppxProvisionedPackage -Online # バブルウィッチ3(FCU以降)
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "A278AB0D.MarchofEmpires" | Remove-AppxProvisionedPackage -Online # マーチ オブ エンパイア
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "*bing*" | Remove-AppxProvisionedPackage -Online # マネー、スポーツ、ニュース、天気
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "Microsoft.OneConnect" | Remove-AppxProvisionedPackage -Online # 有料Wi-Fi & 携帯
Get-AppxProvisionedPackage -Online | Where DisplayName -Like "DolbyLaboratories.DolbyAccess" | Remove-AppxProvisionedPackage -Online # Dolby Access
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
③スタートメニューをテンプレート化
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 ができる。
4. 応答ファイルでsysprepする
社内インフラ担当ならおそらく「ググる」と同じ動詞レベル。
(1)で作った XML ファイルを
C:\Windows\System32\Sysprep
に置き、コマンドプロンプトで
cd C:\Windows\System32\Sysprep
Sysprep /generalize /oobe /shutdown /unattend:○○○.xml
とすると何か始まって、そのうち勝手にシャットダウンします。
シャットダウン後は起動しないように。
なんでって、そりゃSIDがどーのこーのだから。(←自習)
このままディスクイメージを他のパソコンにクローニング。
Ghost やら Acronis やら。まあ色々ありますんで割愛。
参考情報ですが、プロダクトキーが間違っていると sysprep 後に [specialize] エラーが発生します。
まあ、普通にしてれば間違わないので単なる失敗談です。
おわりに
基本的に Active Directory がある前提で書いてるので、
細かい設定はポリシーでやってしまってください。
有用そうなリンクを少し貼っておきます。
Windows 10 法人向け技術情報まとめ | TechNet
Windows10Pro 企業内配布時の設定 クライアントストアアプリ無効編 - 1279Blog
「教育機関向け Microsoft ストア」でアプリを展開する方法 - Windows Blog for JapanWindows Blog for Japan
サンプル
[Unattend.xml]
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
<settings pass="specialize">
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<CopyProfile>true</CopyProfile>
<TimeZone>Tokyo Standard Time</TimeZone>
<DoNotCleanTaskBar>true</DoNotCleanTaskBar>
<ProductKey>XXXXX-XXXXX-XXXXX-XXXXX-XXXXX</ProductKey>
</component>
</settings>
<settings pass="generalize">
<component name="Microsoft-Windows-PnpSysprep" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<DoNotCleanUpNonPresentDevices>true</DoNotCleanUpNonPresentDevices>
<PersistAllDeviceInstalls>true</PersistAllDeviceInstalls>
</component>
<component name="Microsoft-Windows-Security-SPP" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SkipRearm>1</SkipRearm>
</component>
</settings>
<settings pass="oobeSystem">
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<AutoLogon>
<Password>
<Value>######PasswordHash######</Value>
<PlainText>false</PlainText>
</Password>
<Enabled>true</Enabled>
<Username>Administrator</Username>
</AutoLogon>
<OOBE>
<HideEULAPage>true</HideEULAPage>
<NetworkLocation>Work</NetworkLocation>
<SkipMachineOOBE>true</SkipMachineOOBE>
<SkipUserOOBE>true</SkipUserOOBE>
<ProtectYourPC>1</ProtectYourPC>
</OOBE>
</component>
<component name="Microsoft-Windows-International-Core" processorArchitecture="wow64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<InputLocale>ja-JP</InputLocale>
<SystemLocale>ja-JP</SystemLocale>
<UILanguage>ja-JP</UILanguage>
<UserLocale>ja-JP</UserLocale>
</component>
</settings>
<cpi:offlineImage cpi:source="wim:c:/users/administrator/desktop/install.wim#Windows 10 Pro" xmlns:cpi="urn:schemas-microsoft-com:cpi" />
</unattend>