Windows10のマスターイメージを作ってみよう!(修羅の作成編)

新機種PC 「 Windows7??自分搭載してないっすよww 」

Windows10「 よろしくーwwwwww 」
私「ああああああああああああああああああああああああああ」


どうも、インフラ部門でコソコソ働いている岡田です。
皆様の会社は、もうWindows10を導入していますでしょうか?
まだ、Windows7の場合は、そろそろ導入しなければYABAI状況に陥ってるはずです。

しかし、いざ導入になった際にWindows10のマスターイメージ作成は一癖も二癖もあり調査などに時間を取られてしまいますよね。

なので、今回の記事ではWindows10を展開するにあたりに必要なマスターイメージの作成方法を一部ご紹介したいと思います。

マスターイメージを作成する流れとしては大まかに以下の流れとなっております。
1. Windows10を新規インストール
2. ストアアプリの削除
3. デバイスのドライバやソフトウェアのインストール
4. マスターイメージを作成する際にやっていた方が良い8つの設定 (ざっくりしすぎですね・・・)
5. Sysprepを実行してマスターイメージ化

一連の流れで2と4が重要な箇所になりますので、こちらを紹介させていただきます。

ストアアプリを削除

Microsoft コンシューマーエクスペリエンスでインストールされたストアアプリを削除しましょう。
ストアアプリがインストールされている場合、Sysprep が出来ない仕様になっています。

https://blogs.technet.microsoft.com/askcorejp/2015/12/20/windows-10-1511-sysprep/

アプリを削除する以外での回避方法としては以下の方法があるそうです。

  • インターネット接続しないでマスターイメージを作成する。
  • 一時的にグループ ポリシーを適用して自動でインストールされる機能を制限する。

私は、マスターイメージが完成した際に全ての動作確認を行いたいので、ストアアプリの削除を選びました。

では、始めにWindows10にインストールされているアプリケーションを調べてみましょう。

PowerShellを起動し下記のコマンドを入力します。

Get-AppxPackage | Where IsFramework -eq $false | Select Name,PackageFullName

コマンドを入力すると現在インストールされているアプリケーションが出てきましたね。

インストールされているアプリケーションを削除するコマンドは下記に記述します。

Get-AppxPackage (削除したいアプリケーション名)| Remove-AppxPackage  

例: CandyCrushSodaSagaを削除する場合

Get-AppxPackage king.com.CandyCrushSodaSaga | Remove-AppxPackage

ストアアプリ以外で初期に入っているアプリケーションも上記のコマンドで削除可能です。
業務では使用しないアプリケーションとストアアプリを削除していきましょう。

ここで注意していただきたいのは、ユーザーごとにアプリケーションがインストールされるため、複数のアカウントを使用する場合は各アカウントで削除する必要があります。
また、削除できないアプリケーションもあるため、その場合はグループポリシーで利用禁止にしましょう。

あと時間差でインストールされるアプリもあるため、10分放置か一回アプリケーションを起動してから実行した方がいいかもしれません ぐぬぬ・・

マスターイメージを作成する際にやっていた方が良い8つの設定

Windows10のマスターイメージを作成する際に細かな設定を行なっていきたいと思います。

1.エクスプローラーに表示されているOneDriveを削除する。(グループポリシーでも設定可能)

「レジストリ エディター」を起動し
HKEY_CLASSES_ROOT\CLSID\{018D5C66-4533-4307-9B53-224DE2ED1FE6}にある System. IsPinnedToNameSpaceTreeの値を1から0に変更する。

2.PowerShellを使用し 「ときどきスタート画面におすすめを表示する」を無効にする。

Set-ItemProperty HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\ContentDeliveryManager -name SystemPaneSuggestionsEnabled -Value 0

3.PowerShellを使用し 「よく使われるアプリの表示」を無効にする。

Set-ItemProperty HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced -name Start_TrackProgs -Value 0

4.PowerShellを使用し 「Pre-staged app cleanup」を無効化する。

Schtasks.exe /change /disable /tn "\Microsoft\Windows\AppxDeploymentClient\Pre-staged app cleanup"

5.PowerShellを使用し 「高速スタートアップ」を無効化する。

Set-ItemProperty 'HKLM:\SYSTEM\ControlSet001\Control\Session Manager\Power\' -name HiberbootEnabled -Value 0

6.コマンドプロンプトを使用し 「スタートアップ修復」を無効化する。

bcdedit /set {default} recoveryenabled No
bcdedit /set {default} bootstatuspolicy ignoreallfailures

7.スタートメニューにソフトウェアを手動で登録する。

下記のファイルを開きショートカットを設置するとスタートメニューに表示されます。 Windows(C:) → ProgramData → Microsoft → Windows → スタートメニュー → プログラム ※初期設定ではProgramDataは隠しファイルになっていますので、表示させましょう

8.カスタマイズしたスタート画面を他のアカウントに使わせたい場合

PowerShellを管理者として実行して以下のコマンドを入力します。

① スタート画面の情報をエクスポートする。
Set-Location ($ENV:Userprofile + "\desktop")
Export-Startlayout –path Startmenu.xml
② デフォルトプロファイルにスタート画面をインポートする。
Set-Location ($ENV:Userprofile + "\desktop")
Import-StartLayout –LayoutPath Startmenu.xml –MountPath C:\

以上で設定は完了です。後はSysprepすればマスターイメージの作成完了です。

本来はWDSなどを織り交ぜて説明を書きたかったのですが、一つの記事に纏められなかったのでまたの機会にご紹介したいと思っております・・・。