概要
CO-Spray で複数の端末に同一のディスク イメージを配信したあと、端末ごとに個別の設定を実施したいことがあります。「復元なし」の環境であれば、端末のスタートアップ スクリプトなどで実現することもできますが、「復元あり」の環境では端末の C ドライブに対して書き込んだ内容は再起動すると破棄されてしまうため、起動するたびにスタートアップ スクリプトを実行する前の状態に巻き戻ってしまいます。
本文章では、CO-Spray において端末ごとのカスタマイズを実施する手順を説明します。カスタマイズの例としては、次のような事例が報告されています。
- KMS サーバーに対して認証要求を実施する
- IP アドレスを固定する
- 端末ごとに参照するプリンターを変更する
詳細
端末ごとの設定をカスタマイズするには、CO-Spray コンソールにおいて、端末が利用するディスクの設定のうち 新バージョン利用開始時 を 利用開始前に一度起動する (※推奨) にしてください。
ディスクが 利用開始前に一度起動する (※推奨) になっている場合、新バージョンを利用する (今まで利用していたものと異なるバージョンを利用する) ときには、初回の起動時に 端末固有のセットアップが実行されます。
端末固有のセットアップを行う場合、C:\ProgramData\CO-CONV\CO-Spray\microsetup.bat
にバッチファイルを配置しておくことで、バッチファイルで端末ごとの個別設定を行うことができます。
端末固有のセットアップでは、主に次のような処理を行います。
- CO-Spray 5.0 において CO-Spray 1 互換のドメイン参加機能 が有効なとき、または、CO-Spray 1.1 においてドメイン参加する設定のときは、djoin.exe を利用してドメインに参加したあと、30秒待機します。
- ディスク イメージ内に
C:\ProgramData\CO-CONV\CO-Spray\microsetup.bat
がある場合は実行して、バッチファイルの終了を待機します。 - 端末を再起動して、Windows PE で起動したあと、書き込みキャッシュが有効な状態で起動します。
この処理は、「復元あり」「復元なし」の設定によらず実行されます。「復元あり」に設定されているときは、端末を再起動すると、端末固有のセットアップが完了した状態に巻き戻ります。
より細かな動作仕様は、本ドキュメント末尾の 補足: 端末固有のセットアップの詳細な動作フロー をご覧ください。
microetup.bat の作成例
microsetup.bat の簡単な作成例を紹介します。
@echo off
REM ライセンス認証を実施する
cscript /nologo C:\Windows\System32\slmgr.vbs /ato
REM 特定のホスト名のときに特定の処理を実施する
IF /i "%COMPUTERNAME%" == "PC0001" (
REM PC0001 のときの処理
echo "PC0001 の処理をここに記述します..."
)
VBScript や PowerShell で設定を行いたい場合には、microsetup.bat から cscript.exe や powershell.exe を実行してください。
microsetup.bat の動作ログは D:\Program Files\CO-CONV\logs\ClientService.log
に出力されます。デバッグ作業にお役立てください。
端末固有のセットアップをやり直す手順
一度、microsetup.bat の処理が完了した端末において、再度、microsetup.bat の動作試験を行うには、【文章番号18-010】CO-Spray で端末固有のセットアップをやり直す手順 の手順を実行してください。
この処理を行うと C:\ProgramData\CO-CONV\CO-Spray\microsetup.bat
は配信直後の状態に書き戻されます。microsetup.bat を修正して動作試験を行いたい場合には、内蔵ディスク内の D:\Program Files\CO-CONV\CO-Spray\microsetup.bat
に microsetup.bat を配置してください。内蔵ディスク内の microsetup.bat は C: のものよりも優先されます。ただし、その場合は動作試験が完了したあとに、内蔵ディスク内の microsetup.bat は削除してください。
補足: 端末固有のセットアップの詳細な動作フロー
-
microsetup ディスク イメージ (端末固有の情報を格納するためのもの。ファイル名は
ディスク名.バージョン番号.microsetup.vhdx
) を作成して、ディスクイメージ内に記録されているホスト名を書き換えます。 -
microsetup ディスク イメージで起動します。
-
ドメイン参加する設定のときは、djoin.exe を利用してドメインに参加したあと、30秒待機します。
-
microsetup.bat を探します。
D:\Program Files\CO-CONV\CO-Spray\microsetup.bat
(内蔵ディスク内) が存在するのであれば、これを microsetup.bat とします。C:\ProgramData\CO-CONV\CO-Spray\microsetup.bat
(ディスク イメージ内) が存在するのであれば、これを microsetup.bat とする。- どちらにも存在しないのであれば、microsetup.bat は実行せずに、6. に進みます。
- microsetup.bat を実行して、完了を待ちます。
- SYSTEM 権限で
cmd.exe /c microsetup.bat
を実行して、完了するまで待機し続けます。 - microsetup.bat の処理が完了すると、
D:\Program Files\CO-CONV\logs\ClientService.log
に microsetup.bat の出力がログとして記録されます。 - 終了コードが 0 だった場合には成功となり、6. に進みます。
- 終了コードが 0 以外であった場合にはエラーとなり、「利用開始前に一度起動する」処理は失敗となり、画面にエラーメッセージが表示されます。再起動すると、再度「2. microsetup ディスク イメージで起動」から処理をやり直します。
- microsetup.bat の処理が完了する前に端末を再起動した場合、次回起動時は、再度「2. microsetup ディスク イメージで起動」から処理をやり直します。
-
再起動して、Windows PE で起動します。
-
次回起動時から書き込みキャッシュが有効になるように設定して再起動します。