先日、64ビット版の Windows Server 2008 を Windows Server 2008 R2 にアップグレードしましたが、一見何の問題もなく成功したかのように思われたアップグレードも、イベントを見てみると結構エラーが出ていました。
特に気になったのが、別サーバで運用している Active Directory ドメインコントローラから今回アップグレードした Windows Server 2008 R2 マシンがうまく対話しなくなってしまったので、一度 Active Directory のメンバから外して再登録をしてみたところ、ログイン不能となってしまいました。
結論から言うと、OS のアップグレードを行うと Active Directory とクライアントマシンとのセキュアチャネルの一部に不整合が生じるため、これをリセットすると解決するようです。
良い例
OS をアップグレードした後に、Active Directory ドメインコントローラを運用しているマシンから Active Directory ユーザーとコンピュータを開き、アップグレードを行ったコンピュータを右クリックし、サブメニューから「アカウントのリセット」を選択します。
すると、アカウントがリセットされたコンピュータの再度起動時に認証情報の再同期が行われ、ログイン可能な状態となります(セキュアチャネルが修復されるので、認証絡みのエラーや警告がイベントログに記録されなくなる)。
悪い例(当方の失敗例)
Active Directory ユーザーとコンピュータを開き、アップグレードを行ったコンピュータを右クリックし、サブメニューから「削除」を選択し、再度同名のコンピュータを登録すると、再起動時にセキュアチャネルが破損した状態となり、ログインできなくなります。
よほどのことがないかぎり、コンピュータは削除しないようにしましょう。
万が一、この手順でコンピュータを削除してしまったために、ドメインにログインできなくなってしまった場合は、下図のようにコンピュータを一度ドメインから外し(任意のワークグループに参加させるなど)てコンピュータを再起動し、再度ドメインに参加させるように構成するとセキュアチャネルが再構築されるようになります。
重要
対象のコンピュータが証明書サーバ(証明書サービスをインストールしている)の場合、ドメイン変更やコンピュータ名の変更ができなくなるため、アカウントのリセットやコンピュータの削除を行う前に証明書サービスを一旦アンインストールする必要があります。
ドメインセキュアチャネルが破損しているかどうか調べる方法
ドメインにログインしようとしたときに「サーバーのセキュリティ データベースにこのワークステーションの信頼関係に対するコンピュータ アカウントがありません。」というメッセージが表示されてログインできなくなっている場合には、セキュアチャネルに何らかしらの問題がある可能性があります。
クライアントマシンのコマンドラインからセキュアチャネルのリセットを試みることで、セキュアチャネルが破損しているかどうか判断できます。
a. netdom コマンドを使ってリセット
netdom reset /d:[ドメイン名]
例:netdom reset /d:local.jp
このコマンド実行が失敗する場合は、セキュアチャネルが確立されていない(破損している)可能性があります。
b. nltest コマンドを使ってリセット
nltest [ローカルマシン名] /SC_Reset:[ドメイン名]
例:nltest MyMachine /SC_Reset:local.jp
このコマンド実行が失敗する場合はセキュアチャネルが確立されていない(破損している)可能性があります。
2010-09-15
ドメインにログインできなくなって泣かされる
Windows Server 2008 サーバーマネージャの役割が表示されないときの対応方法
さて困った...役割追加したいだけなのになぜか真っ白
Windows Server 2008 のサーバーマネージャから新しい役割を追加をしようしたところ、画面にさり気なく「エラー」と表示され、役割欄は真っ白いままという状況が起こりました。
こうなってしまってはインストール済みの役割を参照することも、役割を追加したり削除したりすることもできません。
以下の画面は、画面下の「エラーの詳細」リンクをクリックしたときに表示されたエラーメッセージです。
サーバー マネージャーの更新中に予期しないエラーが発生しました:
リモート プロシージャー コールに失敗しました。(HRESULT からの例外: 0X800706BE)
このエラーはイベント ID1601 として記録されています。
エラーの詳細はイベントビューアより、「アプリケーションとサービス ログ」→「Microsoft」→「Windows」→「Server Manager」→「Operational」の順に辿ることによって確認できます。
この画面のように、イベント ID1601 が大量に記録されている場合は、おそらく当方が遭遇した障害とほぼ同じと考えても良いのではないかと思います。
Microsoft 技術情報を頼りに対応してみる
この現象については回避策が Microsoft 社で提示されているのですが、自動翻訳があまりにも酷いため英語版を参考に対応してみました。
参考ページ:You receive an error message in Windows Server 2008 if you click Roles under the Server Manager console(Windows Server 2008 のサーバー マネージャーコンソールの役割をクリックするとエラーが返る)
1. 「スタート」→「ファイル名を指定して実行」の順に選択し、表示されたボックスに dcomcnfg.exe と入力して OK を押すと、コンポーネントサービスが開きます。
2.左ペインのツリーより、「コンポーネント サービス」→「コンピュータ」の順に展開すると、右ペインに[マイ コンピュータ]というアイコンが表示されるので、それを右クリックしてプロパティを表示させてから、「既定のプロパティ」タブを選択します。
下図のように、設定の確認と変更を行います。
[既定の認証レベル] --- 接続(「なし」に設定されていたときのみ。)
[既定の偽装レベル] --- 識別する
3.“OK”をクリックしてプロパティシートを閉じ、コンポーネントサービスを閉じます。
これでもう一度サーバー マネージャを開いて役割が参照できるか試してみてください。
(因みに当方ではこれでは解決しませんでした)
騙されたと思って当ててみようパッチ
前述の方法を試してみてもエラーが再現する場合は、システム更新準備ツールという名前のパッチが Microsoft 社から出ていますので、それを当ててみます。
(注意:アップデート関連作業は予期しない不具合を引き起こすことがあります。あくまでも自己責任でお願いします。)
Windows Server 2008 R2 x64 Edition 用システム更新準備ツール(KB947821) [2010 年 4 月]
このパッチを当てたところ、サービス マネージャがサクサクと役割情報を表示するようになり、この問題は一気に解決してしまいました。
当方の場合は Windows Server 2008 R2 x64 環境でこの現象が発生しましたが、ID1601 や同様のエラーが他の OS で発生している場合は、それらの環境に応じたパッチも出ているようですので、試してみると良いかもしれません。
その他 OS 向けパッチ:
Windows Vista 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows Vista for x64-based Systems 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows Server 2008 用システム更新準備ツール(KB947821) [2010 年 4 月]
システム更新準備ツール (Windows Server 2008 for Itanium-based Systems 用) (KB947821) [2008 年 8 月]
Windows Server 2008 x64 Edition 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows Server 2008 R2 for Itanium-based Systems 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows 7 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows 7 for x64-based Systems 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows Server 2008 のサーバーマネージャから新しい役割を追加をしようしたところ、画面にさり気なく「エラー」と表示され、役割欄は真っ白いままという状況が起こりました。
こうなってしまってはインストール済みの役割を参照することも、役割を追加したり削除したりすることもできません。
以下の画面は、画面下の「エラーの詳細」リンクをクリックしたときに表示されたエラーメッセージです。
サーバー マネージャーの更新中に予期しないエラーが発生しました:
リモート プロシージャー コールに失敗しました。(HRESULT からの例外: 0X800706BE)
このエラーはイベント ID1601 として記録されています。
エラーの詳細はイベントビューアより、「アプリケーションとサービス ログ」→「Microsoft」→「Windows」→「Server Manager」→「Operational」の順に辿ることによって確認できます。
この画面のように、イベント ID1601 が大量に記録されている場合は、おそらく当方が遭遇した障害とほぼ同じと考えても良いのではないかと思います。
Microsoft 技術情報を頼りに対応してみる
この現象については回避策が Microsoft 社で提示されているのですが、自動翻訳があまりにも酷いため英語版を参考に対応してみました。
参考ページ:You receive an error message in Windows Server 2008 if you click Roles under the Server Manager console(Windows Server 2008 のサーバー マネージャーコンソールの役割をクリックするとエラーが返る)
1. 「スタート」→「ファイル名を指定して実行」の順に選択し、表示されたボックスに dcomcnfg.exe と入力して OK を押すと、コンポーネントサービスが開きます。
2.左ペインのツリーより、「コンポーネント サービス」→「コンピュータ」の順に展開すると、右ペインに[マイ コンピュータ]というアイコンが表示されるので、それを右クリックしてプロパティを表示させてから、「既定のプロパティ」タブを選択します。
下図のように、設定の確認と変更を行います。
[既定の認証レベル] --- 接続(「なし」に設定されていたときのみ。)
[既定の偽装レベル] --- 識別する
3.“OK”をクリックしてプロパティシートを閉じ、コンポーネントサービスを閉じます。
これでもう一度サーバー マネージャを開いて役割が参照できるか試してみてください。
(因みに当方ではこれでは解決しませんでした)
騙されたと思って当ててみようパッチ
前述の方法を試してみてもエラーが再現する場合は、システム更新準備ツールという名前のパッチが Microsoft 社から出ていますので、それを当ててみます。
(注意:アップデート関連作業は予期しない不具合を引き起こすことがあります。あくまでも自己責任でお願いします。)
Windows Server 2008 R2 x64 Edition 用システム更新準備ツール(KB947821) [2010 年 4 月]
このパッチを当てたところ、サービス マネージャがサクサクと役割情報を表示するようになり、この問題は一気に解決してしまいました。
当方の場合は Windows Server 2008 R2 x64 環境でこの現象が発生しましたが、ID1601 や同様のエラーが他の OS で発生している場合は、それらの環境に応じたパッチも出ているようですので、試してみると良いかもしれません。
その他 OS 向けパッチ:
Windows Vista 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows Vista for x64-based Systems 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows Server 2008 用システム更新準備ツール(KB947821) [2010 年 4 月]
システム更新準備ツール (Windows Server 2008 for Itanium-based Systems 用) (KB947821) [2008 年 8 月]
Windows Server 2008 x64 Edition 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows Server 2008 R2 for Itanium-based Systems 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows 7 用システム更新準備ツール(KB947821) [2010 年 4 月]
Windows 7 for x64-based Systems 用システム更新準備ツール(KB947821) [2010 年 4 月]
ラベル:
Windows Server 2008,
Windows障害,
イベントID
2010-09-13
IIS 運用中のマシンでイベント ID 115 のエラーが発生したらポート番号を疑ってみる
Windows Server 環境で IIS による Web サーバを運用している場合、マシン起動時や WWW サービス起動時にイベント ID 115 のエラーが出ることがあります。
エラー内容:
「サービスはインスタンス 2 をバインドできませんでした。このデータはエラー コードです。
このメッセージに関する追加情報については、以下のマイクロソフト オンライン サポートのサイトを参照してください: http://www.microsoft.com/contentredirect.asp」
上記ではインスタンスが 2 になっていますが、1 や他の番号が返されることもあります。
これは IIS に設定されている Web サイトに対応する番号になっています。たとえば、Windows Server 2000 の IIS はインストール時に「既定の Web サイト」と「管理者 Web サイト」の 2 つのサイトを生成します。
よって、サイトとインスタンスの関係は次のようになります。
「既定の Web サイト」--- インスタンス 1
「管理者 Web サイト」--- インスタンス 2
今回のエラーはインスタンス 2 (= 管理者 Web サイト)で発生していたことになります。
管理者 Web サイトの場合、IIS が 2000 ~ 9999 の範囲内で勝手にポート番号を自動割り当てするようになっているそうで、割り当てられたポート番号が別のアプリケーションにすでに使用されている場合は当然競合エラーが起こります。
このサーバに自動割当されていたポート番号は 5900 で、これが VNC ポートと競合していました。
ポート番号を任意の番号に変更して IIS を再起動したところ、エラーは解消しました。
イベントビューアで同じようなエラーが発生している方は、一度ポート番号の競合を疑ってみると良いかもしれません。
参考サイト:
Web サイトおよび FTP サイトについて
エラー内容:
「サービスはインスタンス 2 をバインドできませんでした。このデータはエラー コードです。
このメッセージに関する追加情報については、以下のマイクロソフト オンライン サポートのサイトを参照してください: http://www.microsoft.com/contentredirect.asp」
上記ではインスタンスが 2 になっていますが、1 や他の番号が返されることもあります。
これは IIS に設定されている Web サイトに対応する番号になっています。たとえば、Windows Server 2000 の IIS はインストール時に「既定の Web サイト」と「管理者 Web サイト」の 2 つのサイトを生成します。
よって、サイトとインスタンスの関係は次のようになります。
「既定の Web サイト」--- インスタンス 1
「管理者 Web サイト」--- インスタンス 2
今回のエラーはインスタンス 2 (= 管理者 Web サイト)で発生していたことになります。
管理者 Web サイトの場合、IIS が 2000 ~ 9999 の範囲内で勝手にポート番号を自動割り当てするようになっているそうで、割り当てられたポート番号が別のアプリケーションにすでに使用されている場合は当然競合エラーが起こります。
このサーバに自動割当されていたポート番号は 5900 で、これが VNC ポートと競合していました。
ポート番号を任意の番号に変更して IIS を再起動したところ、エラーは解消しました。
イベントビューアで同じようなエラーが発生している方は、一度ポート番号の競合を疑ってみると良いかもしれません。
参考サイト:
Web サイトおよび FTP サイトについて
ラベル:
IIS,
Windows Server 2000,
Windows障害,
イベントID
登録:
投稿 (Atom)