久しぶりのブログの更新とあまり深くない技術ネタですが、とうとうWindows7 と Windows Server 2008(R2)のサポートが切れようとしています。
遅ればせながら、ここひと月程作業を行いサーバーの移行がやっと終わったので記念に書いています。2019年中に終わったので何とも言えない感慨深いものがあります。
また、プロジェクトからはもう離れたのですが、私の思い出に残る最大の仕事がこのOSでやったのですがその後がちょっと気になります。
Windows Server 2008 R2ですが、こちらは仕事でよく使いました。個人的には使いやすいOSだったと思います。R2が発売になってあまり間を置かずに購入した覚えがあります。移行のメモもこのブログで書いてあるのですが、日付をみますと約9年にわたって使ったことになります。途中ハードディスクが壊れて2回入れ替えたり電源を交換したことが1回ありましたが、OSの方は元気に動いていました。それまで2003を使っていてIISの設定方法やバックアップの方法が変わったりで戸惑ったことが昨日のことのようですが、この辺りは一度設定すればあまり頻繁に行わないので移行に際してはブログが役に立ちました。
次のサーバーOSはWindows Server 2012 R2ですが、こちらはサポート期限から考えて短命で終わりそうです。実はとっくに2012に移行を済ます予定でしたがガイドの方の仕事に神経を使っていたので期限切れギリギリになりました。
その次のOSはWindows Server 2019かその後継になるかと思いますがどうもWindows 10 系のOSは好きになれないところがあります。半年毎のアップデートは何とかならないかマジで思っているのですが、マイクロソフトさんは方針を変えてくれないでしょうかね。
ちなみに、Windows7の方は早々に移行していました。私の個人のPCは、Hyper-Vを使いたい関係で8 → 8.1 → 10とほぼ間を置かずに移行しました。その他のデスクトップOSは、無料アップデート期間中にWindows10に移行しました。まぁタダには弱かったです。しかし、あの半年のアップデートは辞めてもらえないですかねー。
しつこくWindows2008R2ネタですが、覚書ということで、
Windows2008R2に付属のDNSサーバーで、IPアドレスの一部が逆引きができずにイベントビューアーにID:5504が記録されました。また一部で逆引きが通ったりするので厄介でした。
いろいろ探しましたが、結局以下のページ
Forum FAQ: How to troubleshoot DNS Event 5504 error
の4番目の解決策の
dnscmd /Config /EnableEDnsProbes 0
でOKでした。
ネットを探すと他にも、
DNS event 5504 - server encountered an invalid domain name in a packet
というのがあったのですが、このページにあるShilpesh Desai MSFTさんの『Accordig to KB 198410, it should have non-zero value. - KB198410によるとこのレジストリの値を0以外にする。』に対して、Jharris1993さんが
『Huh? Did you read the KB article? (head in hands, shaking head in wonder) - はぁ、ちゃんとKB読んだ?』
『The correct statement is: According to KB-198410, it should have a zero value if the key exists. - 正しくは:KB198410によるとキーが存在するときはこのレジストリの値を0にする。』
とShilpesh Desai MSFTさんをバカにしていますが、私もKBを読みましたが、Shilpesh Desai MSFTさんの説明は、間違いではないでしょう。なぜなら通常はこのレジストリキーは存在せず、その場合、値zeroと解釈されるので、トラブルシュートを行うならzero以外の値にすべきでしょう。もっともそれでトラブルが解決するとも思えなかったのでこの方法は試しませんでしたが・・・
さらにWindowsネタが続きますが、まぁ覚書ということで。
IIS6(Windows2003)では、マッピングを追加すれば、クラッシクASP(VBScriptで記述するASP)のファイル拡張子をasp以外(例えばcgiとか)にすることができましたが、Windows2008R2に付属のIIS7.5でかつアプリケーションプールを32ビットで動作させた場合、単純なハンドラの追加以外にちょっとしたひと手間が必要になります。
(1)ハンドラの追加
ハンドラーマッピング『管理ツールから、役割→Webサーバー(IIS)→インターネットインフォメーションサービス(IIS)マネージャ 』から、『サーバー名→サイト→WEBサイト名』で、右ペイン『(機能ビュー→)ハンドラーマッピング』でASPClassicと同様にハンドラを追加します。
ここまでは普通の手順になります。

(2)preCondition設定
続いて、同機能ビューから『構成エディタ』を起動します。構成エディタ画面の『セクション→system.webServer/hander』で『コレクション』の行にあるボタンをクリックします。
上のペインで、追加したハンドラを選択し、下のペインにあるpreCondition設定の値を空欄にします(bitness64を削除します)。
ここしばらく、Windowsネタが続きますが、サーバー移行の覚書ということで。
Windows2008(R2) では、NTBACKUPからWindows Server Backupというソフトに置き代わり、バックアップの使い方もかなり変わったのですが、昔のNTBACKUPを使いたいとう欲求に駆られるでしょう。私もその一人だったのですが、残念ながらNTBACKUPを使うことができませんでした。
ちなみに、リストアのみでしたらリストア用のNTBACKUPがダウンロードできるので使えます。ただ、R2の方はインストールにはまるかと思います。以下のサイトをご参考に、
NTBackupバックアップファイルをWS2008 & R2で復元
上記サイトのリンク先
Running NT Backup under Windows 7にありましたが、Windows2003からNTBACKUP.EXEを持ってきてNTBACKUPをバックアップとして使う方法を試してみましたが、Windows 2008 R2ではNTBACKUPでバックアップはできないようです。以下試したことを列挙します。
- Windows 7 64ビット版では動作した(Windows 2003SP2 32ビット版のNTBACKUP使用)。
- Windows 2008 R2では、「シャドーコピーを使ってバックアップを準備中」で止まる。イベントビューアにVSSのエラーが出力される。
- Windows 2003SP2 32ビット版のNTBACKUPの場合、イベントID:20(ボリューム シャドウ コピー サービス エラー: ボリューム シャドウ コピー インフラストラクチャをセーフ モードで使用することはできません。)、8193(ボリューム シャドウ コピー サービス エラー: ルーチン CoCreateInstance の呼び出し中に予期しないエラーが発生しました。hr = 0x80040154)が出力される。
- Windows 2003SP2 64ビット版のNTBACKUPの場合、イベントID:8205(ボリューム シャドウ コピー サービス エラー: IVssCoordinator から IVssShim に QueryInterface を呼び出している最中にエラーが発生しました。hr = 0x80004002。)が出力される。Running NT Backup under Windows 7でも同様のエラーが出た人がいるようで、質問している人がいましたが返答はありませんでした。
- ダメ元で、http://support.microsoft.com/kb/940032/jaを試してみたが、やはりダメだった。
- Windows 7 x64でNTBACKUPが動作していたので、Windos 7にインストールしていたアプリ(Visual Stduio 2010、SQL Server 2005、を入れてみたがダメ
日本では嵌ったという方がいらっしゃらないようなので報告まで。
私の場合は、結局NTBACKUPを使うのをあきらめてWindows Server Backupを使うようにしました。
Windows7続きの記事です。
Windows7がらみのトラブル(
kernel-power41病)を調べようと
Windows 7 Forumsをみましたら、
Windows 7 Service Pack 1 (SP1) Download Availableとありましたので、リンクを読みましたところ、OEM向けに最終バージョンがリリースされたとのことです。Windows Server 2008 R2のSP1も含まれているそうです。
上のURLからはSP1がダウンロードできるようですが、記事によるとリリースが差し迫っているそうなので、マイクロソフト社から正式にリリースが出てからインストールした方がよいでしょう。