MECM クライアントがインストールされた PC でマスター イメージを新規取得・再取得する手順

Last Update:

みなさま、こんにちは。Configuration Manager サポート チームです。

今回は Microsoft Endpoint Configuration Manager (以下 MECM) クライアント エージェントがインストールされた PC で、マスター イメージを新規取得するシナリオと、再取得するシナリオの手順をまとめてご紹介します。

※本記事は、以下の 2 つの過去記事を最新の情報をもとに取り纏めたものとなります。
System Center Configuration Manager クライアントがインストールされた PC でマスター イメージを再取得する手順
System Center Configuration Manager クライアントがインストールされた PC でマスター イメージを取得する手順 (ワークグループ対応版)

MECM クライアントは、端末に一意の情報が保持されているため、そのままマスター イメージを作成すると一意の情報が重複することで、デバイス一覧の重複して表示されたり、配布物が正しく配布出来なくなるといった不都合が発生しますので、一意の情報を削除し、マスター イメージを再取得する手順をご案内致します。
利用シナリオとしては VDI クライアントやイメージ展開を他社製品で行う場合に、予め MECM エージェントをインストールしておくことを想定しております。
本手順を実施していない場合は、展開後に一意の情報が重複して、正常に管理することができなくなりますので、本手順をご参考ください。

-シナリオ

以下の 2 パターンのシナリオについて、手順をご紹介致します。

A. MECM クライアントがインストールされていない状態から、マスターイメージの “新規” 取得を行う手順
B. 既に MECM クライアントがインストールされている状態から、マスター イメージの “再” 取得を行う手順

-関連情報

本手順が未実施であることで、固有の ID (GUID) 重複の問題が発生している場合には、別途以下の記事で対処方法をご紹介しております。
重複 GUID の対処について

-対象製品

  • System Center Configuration Manager LTSB
  • Microsoft Endpoint Configuration Manager (Current Branch)

A. MECM クライアントがインストールされていない状態から、マスターイメージの “新規” 取得を行う手順

-事前説明

意図しないサイトコードの割り当てを防ぐため、MECM サーバーと通信できない状態で手順を実施します。
ネットワークを未接続にすることは必須ではなく、あくまで MECM サーバーと疎通できない状態として頂ければ問題ございません。
※文中では “ネットワーク ケーブルを抜く” と表現しております。

<目次>

  1. サイト コード未割り当ての状態で MECM クライアントをインストールする
  2. [SMS Agent Host] サービスの停止とスタート アップの種類の変更
  3. MECM で使用する自己署名証明書を削除する
  4. MECM 独自の信頼キーと管理ポイントの証明書を削除する
  5. [SMS Agent Host] サービスのスタート アップの種類の変更
  6. マスターイメージの採取

1. サイト コード未割り当ての状態で MECM クライアントをインストールする

以下の手順にて、サイト コードが “未割り当て” の状態でエージェントのセットアップを行います。

  1. プライマリ サイト サーバーより、MECM インストール フォルダー配下に存在する [Client] フォルダーをコピーし保存します。
    ※インストール フォルダーの初期設定は以下になりますが、お客様環境によっては変更されている場合がございます。

    1
    \Program Files\Microsoft Configuration Manager\Client
  2. 対象の PC にローカル管理者権限を保有するユーザーでログインします。

  3. 項番 1) でコピーした [Client] フォルダーを、クライアント上の任意のフォルダーに格納します。

  4. MECM サーバーと通信できないようにするため、ネットワーク ケーブルを抜きます。

  5. [管理者として実行] にてコマンド プロンプトを開き、cd コマンドで Client フォルダーに移動し、以下のコマンドを実行します。
    ※SMSSITECODE オプションなしで ccmsetup.exe を実行することにより、”未割り当て” の状態でエージェントがセットアップされます。
    ※ワーク グループ環境の場合は、SMSMP もしくは DNSSUFFIX オプションなどを任意で指定してください。ただし、その場合も SMSSITECODE オプションは使用しないようにしてください。

    1
    ccmsetup.exe
  6. Windows キー + R キーを押下し、taskmgr を実行し、[タスク マネージャー] 画面を開き、[プロセス] 欄で ccmsetup.exe が表示されなくなるまで待ちます。

  7. Windows キー + R キーを押下し、control を実行し、[コントロール パネル] 画面を開き、[システムとセキュリティ] から [Configuration Manager] を開き、以下のようにサイト コードが “未割り当て” の状態であることを確認します。

    ・[コンポーネント] タブ: 「CCM 通知エージェント」 以外のすべての項目が「インストール済み」であることを確認します。
    ※ 「CCM 通知エージェント」 は 「無効」 になります。

    ・[サイト] タブ : 「現在の割り当てサイト コード」が空欄であることを確認します。

2. [SMS Agent Host] サービスの停止とスタート アップの種類の変更

  1. Windows キー + R キーを押下し、Sevices.msc を実行し、[サービス] 画面を表示し、[SMS Agent Host] サービスを停止します。

  2. 続けて、自動でサービスが起動しないように、[SMS Agent Host] サービスを右クリックし、プロパティを開き、スタートアップの種類を [手動] に変更します。

  3. 注意点として、タスク スケジューラ (taskschd.msc) の以下のタスクが実行された場合、自動で [SMS Agent Host] サービスが起動するため、手順の項番 2. ~ 5. の実行に時間がかかる場合は、手順実行中は本タスクを右クリックより [無効] にしてください。

    ・[タスク スケジューラ ライブラリ] - [Microsoft] - [Configuration Manager]
    タスク名:[Configuration Manager Health Evaluation]

3. 自己署名証明書の削除

  1. Windows キー + R キーを押下し、certlm.msc を実行し、ローカル コンピューターの証明書ストアを開きます。
  2. [証明書 - ローカル コンピューター] - [SMS] - [証明書] を選択します。
  3. 発行先と発行者が “SMS” となっている 自己署名証明書が 2 枚ありますので、これらを右クリックより削除します。
  4. 「選択された証明書を永久的に削除しますか ? 」というメッセージが表示されますので、[はい] を選択します。
  5. certlm 画面を閉じます。

PKI 証明書を利用している環境 (HTTPS 構成) の場合
お客様環境が HTTPS 通信の構成であり、クライアント証明書認証のために、 証明書をインストールされている場合には、同様に以下の手順で PKI 証明書を削除します。

  1. Windows キー + R キーを押下し、certlm.msc を実行し、ローカル コンピューターの証明書ストアを開きます。
  2. [証明書 - ローカル コンピューター] - [個人] - [証明書] を選択します。※カスタム ストアを利用している場合は、該当箇所を選択してください。
  3. 該当の証明書を選択し、右クリックより削除します。
  4. certlm 画面を閉じます。

4. MECM 独自の信頼キーと管理ポイントの証明書を削除する

MECM クライアントのインストール完了後に、もしネットワークに接続して、MECM サーバー(管理ポイント サーバー) との通信が可能となった場合、参照コンピューターが、MECM で使用する信頼キーと管理ポイントの証明書を WMI の中に保持した状態となる可能性があります。

この場合、参照コンピューターに保存されている信頼キーや管理ポイントの証明書を削除する必要があります。
wbemtest より、WMI 名前空間 “root\ccm\locationservices” に接続できない場合は、MECM サーバーと一度も接続がされていないため、問題ありません。
接続できる場合は、情報を削除するため、以下の手順を実施してください。

・管理者権限で PowerShell を起動し、以下のコマンドを実行し、信頼されたルート キー (TrustedRootKey) の情報と管理ポイントの証明書を削除します。

1
gwmi -namespace root\ccm\locationservices -class trustedrootkey | rwmi

スクリプト実行完了後、以下の手順で、正常に信頼キーや証明書が削除されたことを確認します。

  1. コマンド プロンプトを “管理者として実行” にて起動して wbemtest を実行し、”root\ccm\locationservices” 名前空間に接続します。
  2. 「スーパークラス名の入力」はブランクのまま、「クラスの列挙」を “再帰” を有効にして実行します。
  3. 一覧から “TrustedRootKey” を選択し、ダブルクリックして開きます。
  4. 開いた画面で「インスタンス」をクリックします。
  5. インスタンスが存在しないことを確認します。

5. [SMS Agent Host] サービスのスタート アップの種類の変更

Windows キー + R キーを押下し、Sevices.msc を実行し、[サービス] 画面を表示し、[SMS Agent Host] サービスを右クリックし、スタートアップの種類を [自動 (遅延開始) ] に変更します。
ここでは、サービスは停止したままで、[SMS Agent Host] サービスを開始しないように注意してください。
また、手順実施中に [Configuration Manager Health Evaluation] タスクを無効にした場合は、有効に戻してください。

6. マスターイメージの採取

sysprep /generalize が実行された参照コンピューターをキャプチャして、マスター イメージを採取します。
なお、MECM のキャプチャ メディア機能を使用すれば、 sysprep /generalize は内部的に自動実行されます。
また、上記情報の削除も内部的に実行されますのでキャプチャしたイメージを MECM から展開する際には、こちらを実施することもご検討ください。

参考)
キャプチャ メディアの作成
https://docs.microsoft.com/ja-jp/mem/configmgr/osd/deploy-use/create-capture-media

B. 既に MECM クライアントがインストールされている状態から、マスター イメージの “再” 取得を行う手順

<目次>

  1. [SMS Agent Host] サービスの停止とスタート アップの種類の変更
  2. サイト コードのクリアと信頼キーの削除
  3. 自己署名証明書の削除
  4. SMSCFG.ini の削除
  5. [SMS Agent Host] サービスのスタート アップの種類の変更
  6. マスターイメージの採取

各手順の詳細は以下の通りです。

1. [SMS Agent Host] サービスの停止とスタート アップの種類の変更

  1. Windows キー + R キーを押下し、[ファイル名を指定して実行] にて Sevices.msc を実行し、[サービス] 画面を表示し、[SMS Agent Host] サービスを停止します。

  2. 続けて、自動でサービスが起動しないように、[SMS Agent Host] サービスを右クリックし、プロパティを開き、スタートアップの種類を [手動] に変更します。

  3. 注意点として、タスク スケジューラ (taskschd.msc) の以下のタスクが実行された場合、自動で [SMS Agent Host] サービスが起動するため、手順の項番 2. ~ 5. の実行に時間がかかる場合は、手順実行中は本タスクを右クリックより [無効] にしてください。

    ・[タスク スケジューラ ライブラリ] - [Microsoft] - [Configuration Manager]
    タスク名:[Configuration Manager Health Evaluation]

2. 信頼されたルート キーの削除とサイト コードのクリア

・管理者権限で PowerShell を起動し、以下のコマンドを実行し、信頼されたルート キー (TrustedRootKey) とサイト コードをクリアし、サイト コードの自動割り当てを有効にします。

1
2
3
4
5
gwmi -namespace root\ccm\locationservices -class trustedrootkey | rwmi

$oSMSClient=New-Object -comobject Microsoft.SMS.Client
$oSMSClient.RemoveAssignedSites()
$oSMSClient.EnableAutoAssignment($True)

スクリプト実行完了後、以下の手順で、正常に信頼キーや証明書が削除されたことを確認します。

  1. コマンド プロンプトを “管理者として実行” にて起動して wbemtest を実行し、”root\ccm\locationservices” 名前空間に接続します。
  2. 「スーパークラス名の入力」はブランクのまま、「クラスの列挙」を “再帰” を有効にして実行します。
  3. 一覧から “TrustedRootKey” を選択し、ダブルクリックして開きます。
  4. 開いた画面で「インスタンス」をクリックします。
  5. インスタンスが存在しないことを確認します。

3. 自己署名証明書の削除

  1. Windows キー + R キーを押下し、certlm.msc を実行し、ローカル コンピューターの証明書ストアを開きます。
  2. [証明書 - ローカル コンピューター] - [SMS] - [証明書] を選択します。
  3. 発行先と発行者が “SMS” となっている 自己署名証明書が 2 枚ありますので、これらを右クリックより削除します。
  4. 「選択された証明書を永久的に削除しますか ? 」というメッセージが表示されますので、[はい] を選択します。
  5. certlm 画面を閉じます。

PKI 証明書を利用している環境 (HTTPS 構成) の場合
お客様環境が HTTPS 通信の構成であり、クライアント証明書認証のために、 証明書をインストールされている場合には、同様に以下の手順で PKI 証明書を削除します。

  1. Windows キー + R キーを押下し、certlm.msc を実行し、ローカル コンピューターの証明書ストアを開きます。
  2. [証明書 - ローカル コンピューター] - [個人] - [証明書] を選択します。※カスタム ストアを利用している場合は、該当箇所を選択してください。
  3. 該当の証明書を選択し、右クリックより削除します。
  4. certlm 画面を閉じます。

4. SMSCFG.ini の削除

Configuration Manager 一意の識別子の情報が格納されている “SMSCFG.ini” を削除します。
ファイルは、 以下の場所に存在します。

%windir%\SMSCFG.ini

5. [SMS Agent Host] サービスのスタート アップの種類の変更

Windows キー + R キーを押下し、Sevices.msc を実行し、[サービス] 画面を表示し、[SMS Agent Host] サービスを右クリックし、スタートアップの種類を [自動 (遅延開始) ] に変更します。
ここでは、サービスは停止したままで、[SMS Agent Host] サービスを開始しないように注意してください。
また、手順実施中に [Configuration Manager Health Evaluation] タスクを無効にした場合は、有効に戻してください。

6. マスターイメージの採取

sysprep /generalize が実行された参照コンピューターをキャプチャして、マスター イメージを採取します。

なお、MECM のキャプチャ メディア機能を使用すれば、 sysprep /generalize は内部的に自動実行されます。
また、上記情報の削除も内部的に実行されますのでキャプチャしたイメージを MECM から展開する際には、こちらを実施することもご検討ください。

参考)
キャプチャ メディアの作成
https://docs.microsoft.com/ja-jp/mem/configmgr/osd/deploy-use/create-capture-media