こんにちは。 Windows テクノロジー サポートの松田です。
Windows 7 や Windows Server 2008 R2 にて System のイベント ログに以下のようなイベント ログが記録されることがあります。
-------------------------------ログの名前: Systemソース: Microsoft-Windows-FilterManager日付: 2011/XX/XX X:XX:XXイベント ID: 3タスクのカテゴリ: なしレベル: エラーキーワード: ユーザー: SYSTEMコンピューター: XXXXXXX説明:フィルター マネージャーがボリューム '\Device\HarddiskVolumeXX' に接続できませんでした。このボリュームは、再起動するまでフィルターリングできません。最終状態は 0xc03a001c です。-------------------------------
イベント ログに記録されている 0xc03a001c は STATUS_VHD_INVALID_STATE でありVHD が無効な状態であることを意味しています。このイベントは、VHD を取り外したものの、引き続き VHD にアクセスを試みたプロセスがあり、そのアクセスが失敗 (取り外し済みなため当然失敗します) したことをフィルター マネージャーが検知していることを示しています。
このイベントが記録される状況として、以下のような状況が報告されています。 - Windows Server バックアップを実行した場合 - DetachVirtualDisk() 関数を利用して VHD を取り外した場合 - 管理ツールや Diskpart.exe を利用して VHD を取り外した場合
Windows Server バックアップもデータのバックアップを実施する際に VHD を内部で作成して処理を行うため、いずれの場合も VHD を取り外した際に記録されることがわかります。
アクセスしたプロセスは、以下の方法で確認することができます。
-- 該当プロセスの特定方法 --1. 該当のイベントログを開き、[詳細] タブを選択します。2. "XML" で表示を選択します。3. "Execution ProcessID" に記録されている PID を記録します。4. コマンドプロンプトを起動して以下のコマンドを実行します。> tasklist /SVC5. 手順 3 で確認した PID を保持するプロセスを特定します。
この手順を使うことで、取り外した VHD にアクセスを行っているプロセスを特定することができます。
なお、現在までには、以下のプロセスやサービスが、原因として報告されています。 - Windows Search サービス (Windows 7 で既定で有効) - ウィルス対策ソフト - その他の常駐のシステム監視ソフト
Windows Search では、該当ボリュームへのインデックスができなくなりますが、すでに取り外されている領域であるため、Windows Search サービス自体への影響はありませんので、イベントログ自体を無視していただいても問題はありません。
また、どうしても気になるという場合は、以下の手順で Windows Search サービスを停止する方法もあります。
-- Windows Search の停止手順 --1. [スタート] - [管理ツール] - [サービス] を選択します。2. [Windows Search] を右クリックし、[停止] を選択します。
なお、Windows Server バックアップの実行時や、きちんと VHD を取り外した際にもエラーとしてイベントに出力されてしまうので、本動作は好ましくない動作として、開発部門にフィードバックされていますが、今のところの回避策としてはイベント自体を無視していただくか、アクセスするプロセスやサービス自体を止める必要があります。
Windows Search 以外のソフトウェアやサービスについては、それぞれの製品の作成元にエラーが発生することによる影響を問い合わせていただく必要があるので、ご注意ください。