先日、WindowsNT ServicePack 6aをNTサーバへインストールした。そのときのむかつく罠について書いてみることにする。みなさんの中にも、NT SP6aをこれから入れる方もおられると思うので、小生が行った方法を書き記してみる。
元々、小生のNTサーバは、SP5が入っておりSP6aなど入れるつもりはなかったが、必要なアプリをインストールしようと思ったときに”SP6aを入れないとだめよー!”なんて言うけしからんメッセージがでたので、やむなくインストールする事にした。
1.SP6aの在処
SP6aは、言わずとしれたマイクロソフトのサイトからゲットしてくる。ここ にある。
sp6full_i386.exeという一個の団子ファイルになっていて、自己解凍して使う。ファイルのサイズは、56MB程度である。
2.いきなりむかつく
まず、sp6full_i386.exeをダウンロードしてから、この実行ファイルをクリックすると自己解凍が始まる。
解凍が終わると、そのままインストールが始まる。解凍したupdate.exeが実行されソフトウェア承諾書に同意画面がでる。
さらに、同意した後、ファイルの読み込みが始まる。その後になんと”標準の暗号化バーションの Service Packを、高度な暗号化のシステムにインストールするよう選択しました。これはサポートされていません。このバージョンの ServicePack をインストールするには、高度な暗号化バージョンをインストールする必要があります。この Service Pack の高度な暗号化バージョンの入手方法については、[ヘルプ] をクリックしてください。Service Pack セットアップを終了します。 ”みたいな表示が出てそのままOKボタンでインストールが終了してしまうではないか。む・か・つ・く!そこで、いろいろ調べてみたら原因が解った。
3.高度暗号化の IE があると Service Pack 6a をインストールできない
の問題は、Microsoft Internet Explorer 高度暗号化パックと Internet Explorer 5.5 によってインストールされた Schannel.dll ファイルを、サービスパックのインストール プログラムが上書きすることができないために発生するらしい。最近、米国政府は強力な 128 ビットの暗号化を使用する製品を輸出することを企業に許可したため、Internet Explorer5.5 には、デフォルトで 128 ビットの暗号化が含まれている。 Windows NT 4.0 Service Pack 6 および 6a は、この決定が下される前にリリースされた。したがって、Service Pack 6 および 6a のローカライズされたバージョンは 40 ビット版で、これらのサービスパックの 40 ビット版は、より高度な暗号化レベルを検出し、これらのサービスパック自体のインストールを許可しない。と言うことらしい。
俺としては、そんなこと知ったこっちゃない。そもそも、この件を調べた記事がMSのサイトのQ&Aのコーナーの回答文であるからふざけている(爆)。まあね、MSさんは一人舞台だから何しても許されるんだろうが、使わなければならない俺たちは、大変なんだぜ!!
4.回避方法
回避方法が、まためんどくさい。
● まず、sp6full_i386.exeを実行して、解凍が終わり、ソフトウェア承諾書が出た時点で解凍先のフォルダを適当な場所へコピーする。そして、実行しているインストーラはいったんキャンセルする。(コピーしておかないと、キャンセルした時点で解凍したファイルが消えてしまうので注意!)
● 次に、コピーしたSP6aのディレクトリの中のupdateフォルダのupdate.ini(現在は、 __update.infの可能性有り <= 親切な読者の情報による)を編集する。編集内容は以下に記述する。
省略
; CheckSecurity.System32.files=11 ; %windir%\system32 (warn if 40-bit replacing 128-bit)
省略
; SCHANNEL.DLL
省略
; SCHANNEL.DLL
省略
; SCHANNEL.DLL = 1
省略
以上のように、表記の部分を” ; “でコメントする。
● それが終わった時点で、update.exeを実行すれば、インストールが始まり無事に終わるはずである。
iniファイルをユーザに編集させるようなパッチなど最低である。みなさんも、SP6aの罠には気をつけましょう(笑)!
終わり!(だから、MSきらいなんだよーん!)
以上
コメント