【初心者向け】sysprepの仕組みと使い方/手順〜一般化,コマンドオプション〜

sysprep とは, 一般化とは

sysprep (読み方:しすぷれっぷ) は、たくさんある Windows OS マシンに同じような設定を入れる時の展開作業効率化ツールです。

展開とは : Windows を1台セットアップし、その設定情報を吸い上げて他の多数のマシンにコピーしていく作業のこと

『Windows上のマシン固有情報を削除する』という意味で『sysprep を掛ける』と言ったりしますが、厳密には『sysprep を使って一般化する』が正解です。つまり一般化とは、マシン固有情報を削除することです。

例えば既に1台1台インストール済の複数の Windows OS に、同じような設定を入れていきたい場合は sysprep を一般化しないで使うこともあります。

ですが多くのシーンでは、クライアント OS (Windows10等) やサーバ OS (Windows2019等) イメージ展開時に、sysprep を使って固有情報を消してから展開する、という使い方をします。

構成パスとは

構成パスとは『どのような順番でどのようなセットアップをするか』というセットアップ過程のことです。sysprep を実行すると、オプションで指定された通りの構成パスを辿ってセットアップが進んでいきます。

以下に Windows Setup (初期インストール等) と Sysprep の構成パスを例示します。

sysprep の構成パスを見る前に、まずは Windows を初期インストールするときの構成パスを見てみましょう。

Windows を初期インストールするときの構成パス

1. WindowsPE (Windows Setup settings)

インストール時のこれ。

2. Offline Servicing

1. の最後の「更新プログラムをインストールしています」はこっちに含まれるらしい。その後、「応答ファイル」という無人インストール用の config ファイルがセットされていればその内容に沿ってセットアップが自動実行されます。(sysprep ではなく「展開サービス」の役割で使われる)

3. Specialize

マシンの固有情報を OS に保存します。記録される項目は以下です。

  • コンピュータマシンのSID
  • デバイスやドライバのシリアル

(一般化 "generalize" の対義語)

4. oobeSystem

oobe は Out-Of-Box Experience の略です。察するに、『買ってきたマシンを開梱して起動したときの体験をするよ』ということでしょうか。ロケール(日本とかアメリカとか)やユーザのIDパスワード設定とかを実施するフェーズです。

こんな感じです。次に、sysprep 実行時の構成パスを見てみましょう。

sysprep 実行時の構成パス

1. generalize

sysprep 実行時に GUI で「一般化する」にチェックを付けたり、CLI で /generalize オプションを付けた場合は generalize 構成パスから始まります。

この構成パスではマシンの固有情報を削除します。初期化される項目は以下です。

  • コンピュータマシンのSID
  • デバイスやドライバのシリアル

2. specialize

generalize が完了すると、次に起動するときは必ず specialize から始まります。前述の通り、specialize ではマシンの固有情報を OS に保存します。保存される項目は前述と同じです。

3. AuditSystem, AuditUser

これはGUI の「システムクリーンアップアクション」で「システム監査モードに入る」を選択したり、CLI で /audit オプションを付けた場合に動作します。

紛らわしいですが、監査ログ等を取るわけではなく、単に /unattend:[filename] オプションで指定された応答ファイル(answer file)の内容に沿って、システム起動時(AuditSystem)、およびユーザログイン時(AuditUser)にセットアップが自動実行されます。

4. oobeSystem

こちらは前述と同じです。

sysprep 実行のサンプル例

例えばドメイン参加した Windows の VM イメージファイルを単純コピーして他のサーバとして構築しようなんて考えた場合、SID を削除しないとドメインコントローラでエラーが出まくること請け合いです(試してはいない)。

まずは現状の確認としてコンピュータ固有情報の代表格 "SID" を確認します。whoami /user でユーザの SID が表示されますが、最後の -(ハイフン)前まで(ピンク枠)がコンピュータのSIDです。

それでは sysprep を実行していきましょう。

Windowsキー +R で『ファイル名を指定して実行』を出し、"sysprep" と打ち Enter を押下します。

すると sysprep.exe が存在するフォルダーが開きますので sysprep.exe をダブルクリックすると sysprep (GUI) が起動します。

固有情報削除だけが目的であれば以下のようにオプションだけで十分です。

コマンドだと以下になります。

C:¥Windows¥System32¥Sysprep> sysprep.exe /generalize /oobe /shutdown

/mode:vm を使うと速くなるとかなんとか。

ともかく実行すると下記画面が表示され、

その後自動でシャットダウンされます。このイメージを複数コピーすれば、起動時には specialize 構成パスにより、固有情報が自動で割り当てられます。

下記のように SID が変わりました。

sysprep コマンドのオプション一覧

[ /quiet ] : 標準出力等、モニタへのフィードバックをしない

[ /generalize ] : generalize 構成パスから開始

[ /audit | /oobe ] : auditSystem/auditUser構成パスを経由するか、oobe構成パスに飛ぶか

[ /reboot | /shutdown | /quit ] : 再起動するかシャットダウンするか起動のままか

[ /unattend:<filename> ] : 無人setup用の応答ファイル(answer file)を指定

[ /mode:<mode> ] : VM の場合は vm モードの指定が可能。速くなる。

参考

https://msdn.microsoft.com/ja-jp/library/windows/hardware/dn898581(v=vs.85).aspx

https://msdn.microsoft.com/ja-jp/library/windows/hardware/dn938330(v=vs.85).aspx

【厳選 3 冊】Windows を学ぶための本

Windows Serverのエディションやライセンス、用語といった基本から、セットアップ、ネットワーク、ユーザー/グループ、ディスク、ハードウェア、アクセス許可、クォータ、ボリュームシャドウコピー(VSS)、ファイル/フォルダー共有、プリンター、サーバー管理、WebサーバーやFTPサービスを提供するInternet Information Services(IIS) 10.0、Hyper-Vやコンテナー等の仮想化技術、Active Directoryまで説明します。
Active Directoryの概念および導入、構成管理方法を詳細な手順と豊富な画面を使ってわかりやすく解説します。本書では、ドメインサービスを中心に解説し、その他のサービスについても概要を解説します。Active Directoryを初めて使う方でも、画面を見ながら手順に従って操作するだけで簡単に目的の作業を行うことができます。ある程度使いなれている方には、Active Directoryをより使いこなすためのリファレンスとしてお使いいただけます。
全操作、全機能が載ってるから迷わない!基本から便利技・トラブル対応まで全部わかる!基本の操作から最新アプリ、昔ながらの操作も全部できる!はじめてのタッチ操作、はじめてのWindows10の人も安心!「やりたいこと」がすぐできるTIPS400!わかりやすい索引で「あれがしたい」「これがしたい」から探せる、側にあれば安心な1冊!自由自在Windows10を操ろう。

IT/インフラエンジニアの地位とスキル向上のために

関連記事

IT 技術の進化はとどまることを知りません。矢継ぎ早に新たな技術が出てきたり、数年前の技術が時代遅れになったりと、IT エンジニアは勉強し続ける運命のようです。 それをどう思うかはあなた次第。 ビジネスの基本は『付加価値を与える[…]

IMG
関連記事

nesuke の考える NW エンジニアの2つの道 ネットワークエンジニアには 2 つの道があります。 1 つはネットワーク構築一筋で、L4 までをひたすらきっちりと構築していく道。 もう 1 つはネットワークを軸として深堀し[…]

IMG