【インフラ】sysprepでエラーが出たときの解消法大全【Windows11】
前書き
先日、とある「一人情シス」の方を手助けしました。
『sysprepがうまく実行できないんだけど、何とかしてほしい。』という結構アバウトなリクエストを受けて、有償にてサポートを実施した経緯をお伝えします。
なお、私も久しぶりのsysprep(普段はインフラとはほぼ無関係…)だったこともあり、内容に関しては100%正確でないかもしれません。保証も出来かねます。とはいえ、以前、情シスっぽい仕事をしていた時期もあり、散々sysprepで苦労した経験もあるので、この際、まとめてみたという次第です。
高評価でしたら、スクショなどをもっと増やして分かりやすくしたいと考えています。
また、長くなるので応答ファイルのところは別に掲載する予定です。
検証環境:windows11(23H2)
大前提
メーカーPCを購入した際に入っているOS(OEM OS)は再イメージング権がないものとなります。別途、「再イメージング権」のある媒体からOSをインストールする必要があります。
以前はMicrosoftOpenライセンスと呼ばれていたものですが、2022年1月からはSoftware in CSPという名称に変わりました。
なお、誤解されがちですが、このライセンスが必要な本数はあくまで作成するひな形の数だけ購入するということです。つまり、1機種1ライセンスでいいということです。そして、導入するPCの台数ではないという点を強調しておきたいです。(以前、約1000台のPCを導入している会社で1000本のCSPライセンスを購入しようとしていた会社様がいたので…)
購入、相談先
ライセンス情報
1: Sysprepの基礎知識
1.1 Sysprepとは何か
Sysprep(システム準備ツール)は、Microsoftが提供するWindowsオペレーティングシステム用のユーティリティで、システムの一般化(generalize)を行うために使用されます。これは、カスタマイズしたWindowsのイメージを他のコンピューターに展開する際に必要不可欠なツールです。
1.2 Sysprepの目的とメリット
イメージ展開の効率化
一貫性のある環境: 同一のイメージ(以下、マスターイメージ)を使用することで、すべてのマシンで一貫した環境を提供できます。なお、イメージを取得するには別のクローニングツールが必要となりますが、ここでは触れません。別途ご用意ください。例をあげておきます。
時間の節約: 個別のセットアップ作業を省略し、展開プロセスを迅速化できます。可能な限り、なるべくマスターイメージに組み込むことも大切です。
SIDのリセット
セキュリティ識別子(SID): Windowsでは、各コンピューターに固有のSIDが割り当てられます。同一のSIDを持つマシンがネットワーク上に存在すると、セキュリティ上の問題が発生すると言われています。
SysprepによるSIDの再生成: そこで、sysprepの一般化プロセスでSIDをリセットし、展開先の各マシンに新しいSIDを割り当てます。
ドライバーとハードウェアの抽象化
ハードウェア依存性の除去: Sysprepは、特定のハードウェア情報を削除し、異なるハードウェア構成でも適切に動作するようにします。
プラグ・アンド・プレイのサポート: 初回起動時に必要なドライバーを自動的に検出・インストールします。
1.3 Sysprepが必要なシナリオ
企業環境: 新入社員用のPCや部門全体のシステム更新など、多数のマシンへの一斉展開が必要な場合に有効です。逆に数十台などのPCであれば、手作業で一台ずつ行ったほうが早い場合もあります。
迅速な復旧が必要な場合: システム障害時に、Sysprep済みのイメージから迅速にシステムを復旧できる点もメリットです。
2:Sysprepの準備①
2.1 前提条件の確認
Sysprepをスムーズに実行し、システム展開を成功させるためには、いくつかの前提条件を事前に確認しておくことが重要です。
システム要件
対応OS
Sysprepは、Windows 10やWindows 11など、SysprepがサポートされているOSで実行する必要があります。OSの互換性を確認してから進めましょう。最新の更新プログラムの適用
Windows Updateを実行し、最新のセキュリティパッチやバグ修正が適用されていることを確認します。Windows Updateの実行手順:
スタートメニュー → 設定 → 更新とセキュリティ → Windows Updateを選択。
更新プログラムの確認をクリックし、適用可能な更新があればインストールします。この際、品質更新プログラムのみを当てます。OSのアップグレード(Win10→Win11)、機能更新(22H2→23H2のような)をしてしまうと、sysprep実行時にエラーが発生する可能性があるため、元のOSは最新版を用いるようにしましょう。
管理者権限の確認
Sysprep監査モードで実行することをお勧めします。監査モードを使用すると以下のアカウントの削除が不要となります。また、不必要なWindowsストアアプリがインストールされないという大きなメリットもあります。ただし、一部のソフトウェアやサービスは、Sysprep監査モードでのインストールや設定に対応していない場合があるようです。その場合は以下の方法で実行します。
管理者アカウントの使用
「コンピューターの管理」スナップイン(CompMgmt.msc)を開き、ビルトインの「Administrator」アカウントにパスワードを設定して、アカウントを有効にします。なお、Sysprepを実行して一般化すると、ビルトイン「Administrator」は再び無効化されます。
現在のユーザーがOSインストール時に作成したユーザーの場合、一度サインアウトし、Administratorアカウントでサインインします。
サインイン後、「コントロールパネル」→「システムのプロパティ」→「詳細設定タブ」→「ユーザープロファイル」にある設定をクリックし、OSインストール時に作成したユーザーのプロファイルを削除します。
また、「コンピュータの管理」を開き、インストール時に作成したユーザーを削除します。(Win キー+R)→「compmgmt.msc」
sysprepを実行するユーザーアカウント以外にアカウントが存在しているとsysprep実行時にエラーが起きる場合も。
また、ドメインユーザーでのsysprepもNGです。そもそも、sysprep前は参加しないほうがいいです。意図しないグループポリシーが適用される可能性があるため、必ず管理者権限のあるローカルユーザーで実行するようにしましょう。以下、Windows10での事例です。
Windows 10 での Sysprep を用いたマスターイメージの作成に関する注意点・推奨事項 | Microsoft Learn
2.2 必要なツールとリソース
Sysprepを効果的に利用するためには、いくつかのツールやリソースを事前に準備しておく必要があります。
①Sysprepの場所を確認
Sysprep実行ファイルは、通常C:\Windows\System32\Sysprep\sysprep.exeに格納されています。
②応答ファイルの作成
ここについては長くなるので別途、作成する予定です。以下、簡単に概略だけを掲載します。
Windows System Image Manager(Windows SIM)
Windows SIMは、応答ファイル(unattend.xml)を作成・編集するツールで、Windows ADK(Assessment and Deployment Kit)に含まれています。
Windows SIMの起動
Windows ADKのインストールが完了したら、スタートメニューから「Windows System Image Manager」を検索し、起動します。Windowsイメージの読み込み(install.wim)
Windows SIMを起動したら、作成する応答ファイルに基づくOSのイメージファイル(install.wim)を読み込みます。このinstall.wimはWindowsインストールメディアの「sources」フォルダ内にあります。操作手順:
Windows SIMのメニューから「ファイル」→「Windowsイメージの選択」をクリック。
Windowsインストールメディア(またはISO)内のinstall.wimファイルを選択。
イメージを読み込むと、Windows SIMがカタログファイルを生成します。これにより、応答ファイルで利用できる各コンポーネントが一覧に表示されます。
応答ファイルの作成と設定の追加
Windows SIMで応答ファイルを新規作成し、各フェーズに必要な設定を追加します。主要なフェーズとその設定手順は以下の通りです。
応答ファイルの作成
メニューから「ファイル」→「応答ファイルの新規作成」を選択します。これにより、空の応答ファイルが生成され、各フェーズに設定を追加できるようになります。
設定フェーズの追加
応答ファイルは、以下の主要フェーズに分かれており、それぞれのフェーズに設定を追加します。
目的に応じた設定をドラッグ&ドロップで応答ファイルに追加し、各設定の詳細を右側の「設定」ウィンドウで指定します。
応答ファイルの保存と確認
応答ファイルを以下のパスに保存することで、Sysprep実行時に自動適用されるようになります。
保存先: C:\Windows\System32\Sysprep\unattend.xml
Windows SIMのメニューから「ファイル」→「名前を付けて保存」を選択し、C:\Windows\System32\Sysprep\フォルダにunattend.xmlという名前で保存します。ここに保存しておけば、自動で応答ファイルが適用されます。
エラーチェックも忘れずに。
保存する際に、Windows SIMが応答ファイルにエラーがないかを自動的に検証します。エラーがある場合は、右下にエラーメッセージが表示されるので、指示に従って修正します。
2.3 その他のリソース
特定の設定やアプリケーションインストールを自動化するために、カスタムスクリプトを準備します。スクリプトは応答ファイルのFirstLogonCommandsに追加することで、初回ログオン時に実行させることができます。
スクリプトの設定例:(応答ファイルで実装する場合)
<FirstLogonCommands>
<SynchronousCommand wcm:action="add">
<CommandLine>cmd.exe /c "C:\Scripts\SetupScript.bat"</CommandLine>
<Description>初回セットアップスクリプト</Description>
<Order>1</Order>
</SynchronousCommand>
</FirstLogonCommands>
上記の例では、SetupScript.batというバッチファイルを指定しており、初回ログオン時に自動で実行されます。このスクリプトにより、特定のアプリケーションインストールやカスタム設定が適用されるようになります。
これらの準備が整えば、Sysprepの実行とシステム展開のプロセスがスムーズに進みやすくなります。事前に必要な要件を満たしているか確認し、適切な権限で操作することで、トラブルを未然に防ぐことが可能です。
ここから先は
¥ 200
この記事が参加している募集
この記事が気に入ったらチップで応援してみませんか?