Windows7SP1 zero-touch Deployment その4
Volumeライセンスでの大量展開は他にかなりのドキュメントがありますのでそちらをご参照ください。
1. テクニシャンコンピュータの構築
1.7. Windows設定とアプリケーションインストールの準備
無人応答ファイルは優秀で、Windowsセットアップ完了後のおそらくほとんどの設定を記述することができます。
が、それを調べるのは大変で、ドキュメントのほとんどは英語です。
簡単に調べる方法は2つ。
・Windows システムイメージマネージャの「ヘルプ(H)」-「無人リファレンス(U)」
・Microsoft TechNet Components
が、どちらも英語・・・
で、やはりWindowsの設定は無人応答ファイルで記述するのではなく、バッチファイルとなります。
特に注意したいのは、ネットワーク設定です。
無人応答ファイルでネットワークの設定は可能ですが、Windowsのインストール時にNICドライバのインストールに失敗していた場合、当然ネットワーク設定がされていない状態になります。
つまり応答ファイル以後のインストールシーケンスで、アプリケーションインストールを指示していても、ネットワーク設定がすっからかんのため一切何も起きない、ということになります。
よって、
- NICドライバのインストールを必ずテストする
- ネットワーク設定を無人応答ファイルで記述しない
- ネットワーク設定のバッチファイルに成否のログをつける
がミスしないコツになります。
VirtualBox等の仮想環境ではNICドライバのインストールは問題ないです(Inboxドライバ=Windows標準ドライバがインストールされる)。
実機ではそうもいきませんので、必ずチェックしてください。
で、実際の設定は「FirstLogonCommands」を使用します。
この図だと、ユーザーがログインした直後に「netsh advfirewall set all state off」が実行されます。
「Order」が「1」ですので。
続く「Order」が2から4までありますが、それぞれ
- netsh advfirewall set all state off
- netsh interface ipv4 set address "ローカル エリア接続" static 172.16.1.111 255.255.255.0 172.16.1.254 1
- net use P: \\172.16.1.2\share /user:username password
- P:\setup\setupcommand_OP9020.bat
てな感じで記述していきます。
ただしこれは上で注意したように、上手くいけばもうけもの、です。
Order=3、でネットワークドライブに接続していますが、NICドライバに問題があった場合や、NICドライバを先にインストールしたい場合はこのままではいけません。
ちなみに先の図の補足をすると、
・UAC(ユーザーアカウント制御設定)の無効
EnableLUA
コンポーネント | 値 |
Microsoft-Windows-LUA-Settings | EnableLUA = true (default:有効) / false (無効) |
「2 offlineServicing」に追加します。
・回数を指定したオートログオン設定
AutoLogon
コンポーネント | 値 |
Microsoft-Windows-Shell-Setup\AutoLogon | Enabled = true LogonCount = 5 Username = Administrator |
「7 oobeSystem」に追加します。
・ビルトイン Administrator アカウントを有効または無効にする
ビルトイン Administrator アカウントを有効または無効にする
NICドライバのインストールを先にする場合は
ネットワークが疎通していない状態ではもちろん外部にあるNICドライバをローカルにダウンロードできません。
ここで工夫が必要になります。
やることは簡単で、
「インストールメディアにドライバファイルを仕込む」
です。
Inboxドライバ以外のドライバを仕込む方法は3つ。
- DISMツールでInstall.wimドライバを追加する
- WindowsSIMのOut-of-Box Driversに追加する
- $OEM$フォルダにドライバファイルを仕込む
一番簡単なのは$OEM$フォルダの利用です。
DELLのインストールメディアを利用している場合にはすでに仕込まれています。
ここでインストールメディアをコピーした場合は下の場所にあるはずです。
C:\share\W7SP1_PROFESSIONAL\sources\$OEM$
ここには$$フォルダと$1フォルダがあります。
これらの詳細は「配布共有と構成セットとは」のとおりです。
つまり、
\sources\$OEM$\$1\Drivers\NIC\
フォルダを作成し、そこにドライバファイルとインストールコマンドファイルをコピーしておけばOKです。
こんな感じ。
Windowsのインストール後には、C:\Drivers\NIC\ というフォルダが勝手にできて、そこにこの2つのファイルがコピーされている、という寸法です。
インストールコマンドバッチファイルの中身は
C:\Drivers\NIC\Network_Driver_MXH3C_WN_19.2.0.0_A09.exe /s
です。
DELLのドライバファイルはだいたい/sスイッチでサイレントインストールできます。
だいたいは。
調べるにはコマンドラインから/?スイッチでヘルプメッセージを表示させます。
上のOptiPlex9020用インテルNICドライバの場合は、
C:\Users\user>C:\share\W7SP1_PROFESSIONAL\sources\$OEM$\$1\Drivers\NIC\Network_D
river_MXH3C_WN_19.2.0.0_A09.EXE /?
C:\Users\user>
Update Package: MXH3CA09
Intel I2xx/825xx 10/100/1000 Ethernet Network Drivers, 19.2.0.0, A09
General Usage:
Network_Driver_MXH3C_WN_19.2.0.0_A09.exe [/<option1>[=<value1>]] [/<option2>[=<v
alue2>]]...
See listing below for <option> and <value> information.
Option - Description:
---------------------
(none) - Display of graphical user interface for guided installation/update or e
xtraction.
/? or /h - Displays this Update Package usage information.
/s - Suppresses all graphical user interfaces of the Update Package.
/e=<path> - Extraction of update contents to a folder.
(NOTE: Requires /s option)
/drivers=<path> - Extraction of only driver components to a folder.
(NOTE: Requires /s option)
/passthrough ... - (Advanced) Sends all text following the /passthrough option d
irectly to the vendor install software of the Update Package. This mode suppres
ses any provided graphical user interfaces, but not necessarily those of the ve
ndor software.
/capabilities - (Advanced) Returns a coded description of this Update Package's
supported features.
(NOTE: Requires /s option)
/l=<path> - Define a specific path for the Update Package log file.
(NOTE: This option can NOT be used in combination with /passthrough or /capabili
ties)
Example(s):
---------------------
Update the system silently
Network_Driver_MXH3C_WN_19.2.0.0_A09.exe /s
Extract the update contents to the folder C:\mydir\
Network_Driver_MXH3C_WN_19.2.0.0_A09.exe /s /e=C:\mydir
Extract the driver components to the folder C:\mydir\
Network_Driver_MXH3C_WN_19.2.0.0_A09.exe /s /drivers=C:\mydir
Change from the default log location to C:\my path with spaces\log.txt
Network_Driver_MXH3C_WN_19.2.0.0_A09.exe /l="C:\my path with spaces\log.txt"
後はこのインストールコマンドバッチファイルを「FirstLogonCommands」の1つ目のOrderに、
C:\Drivers\NIC\SetupNIC_OP9020.bat
と記述すればOK。
もちろん直接、
C:\Drivers\NIC\Network_Driver_MXH3C_WN_19.2.0.0_A09.exe /s
でもOKです。
セットアップする機種ごとに無人応答ファイルを変えるのであれば、FirstLogonCommandsを変えて、SetupNICバッチファイルを使いまわすと便利かもしれません。
ドライバを仕込む方法の残りの、
- DISMツールでInstall.wimドライバを追加する
- WindowsSIMのOut-of-Box Driversに追加する
アプリケーションのインストールは?
まずはアプリケーションをサイレントインストールできるかどうかにかかっています。
これは地道に探すしか方法はありません。
必ず使うアプリケーション、Adobe Readerを例にとってみます。
通常であればネットワークインストーラなんですが、以下にちゃんとオフライン用のインストーラがあります。
PDF ファイルを開くために必要なソフトのダウンロードとインストール(Adobe Reader XI)
https://helpx.adobe.com/jp/acrobat/kb/cq10181859.html
ページの最後にちゃんと配布使用許諾について書かれています。
配布許諾契約がOKならページ下のFTPサイトからオフライン用インストーラをダウンロードします。
FTPをたどっていくとインストーラがあります。
「AdbeRdr11010_ja_JP.exe」ですね。
今回は Adobe Reader XI を使用しますが、10や9と使い分けてください。
でコマンドラインからおもむろに/?スイッチでサイレントインストールスイッチがあるか調べます。
ありますね。
/sAll か、/sPB を選べばOK。
あとはバッチファイルにセットアップをスイッチ付きで記述すればOK。
pushd P:\app\AdbeRdr11010_ja_JP
P:\app\AdbeRdr11010_ja_JP>start /wait AdbeRdr11010_ja_JP.exe /sPB /rs
popd
こんな感じ。
このバッチファイルをFirstLogonCommandsに付け加えるか、アプリケーションインストールのバッチに記述すればOKです。
ちなみにAdobe Reader XI をもう少しカスタマイズしてインストールしたい場合には、
Adobe Customization Wizard XI
を使用します。
この使い方の詳細はやっぱりここが詳しいです。
参考になります、ありがとうございます。
悩み多き文教市場のインフラ屋さん
カスタマイズした Adobe Reader を展開する
続きはまた次回。