treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

※https化しました。その影響でしばらくリンク切れなどがあるかもしれませんが徐々に修正していきます。 リンク切れなどのお気づきの点がございましたらコメントなどでご指摘いただけますと助かります。

WU適用後メモリ使用率100%、ディスクアクセス100%となる

今日は予定を変更してWindowsUpdateが疑わしい障害を一件ご報告します。
ホントはIEサポート終了の話をタイムリーに掲載予定だったのですが、同日はWindows Updateの配信日ということで同じ症状に出会った方の助けとなれば幸いです。

発端はユーザからの電話でした。
「Group Policy Clientってなんですか?」
ずいぶんと突然な質問です。いったい何があったんでしょうか?
「画面に”Group Policy Clientサービスに接続できませんでした。システム管理者に問い合わせてください。”とメッセージが表示されているんですよ。」
詳しく聞くと、Windowsがアイドル時間を超えてワークステーションのロックが動作してしまったので、画面のロックを解除するために利用ユーザIDのパスワードを入力してログオンしようとしたところ上記のメッセージが出力されてOKボタンしか押せない状態になった、ということでした。
「なんだか、ちょっと前から動きが遅くて何を使うにも待ちになってしまって、そのうち使えなくなってきたんですよね。」
早速、デスクトップにアクセスして調査開始です。

環境はレッツノートCF-AX2、OSがWindows8.1 ProのノートPCです。

タスクマネージャが見たことない状態に

タスクマネージャを開くと(開くのにも数分かかるのですが)リソースが食い潰されていることが見て取れました。
図:発生時のタスクマネージャ

f:id:treedown:20160114012553p:plain
CPUはほどほどでいいのですが、メモリとディスクをよくご覧ください。
メモリは4GB搭載中3.8GB使用されています。図では97%となっていますが、100%使い切られていました。こんなの見たことない。
同じくディスク0のゲージも100%になっています。ディスク(C:単一)はSSDなので100%の負荷でもなんとか動いているレベルですがHDDならもうフリーズなのかかろうじて動いているのかなんてわからないレベルだったでしょう。こんなの見たことない。
リソースモニタでちょっと確認してみました。
図:リソースモニタで確認してみた図

f:id:treedown:20160114012621p:plain

「lsass.exe」というプロセスでメモリ9GB食っているのが見て取れます。(※コミットチャージの容量ですが)
とりあえず画面下部棒グラフで緑=使用中、にて一杯一杯なのはご確認いただけるかと思います。

原因を探る

探ろうにもPCが応答しないから探り切れないので困ってしまいました。
なんだか分からんがWindows Updateが動作した後から起きているようだ、ということがユーザとの会話とデスクトップにリモートアクセスした際にちらっと見えた画面から見て取れました。
特に世の中では話題になっていないようですが、2016年1月分(今月)のWindows Updateも何か一癖あるKBが含まれているのかもしれません。
感覚的なものですが「システムの復元」を使ってWindows Update前に巻き戻せば解消しそうに思えました。感覚的なものなので非常に危うい決断ですが、何しろ普段使いのユーザのデスクトップを開けば思うように動きませんので管理者用のアカウントで再度ログインしなおしてシステムの復元を開くことにしました。(※管理者アカウント(Administratorsグループ)でログインすると通常利用が可能でした。標準ユーザ(いわゆるローカルグループUsersグループ所属のアカウント)と何か違いがあるのかもしれません。)

対処はシステムの復元で

とりあえず正常状態に戻します。
システムの復元画面を掲載します。何かの参考になさってください。
まずは削除されるプログラムとドライバー欄をスクロールしたすべての画面です。
図:システムの復元画面「削除されるプログラムとドライバー」欄

f:id:treedown:20160114012812p:plain

f:id:treedown:20160114012831p:plain

f:id:treedown:20160114012852p:plain

f:id:treedown:20160114012943p:plain

続いて「復元が見込まれるプログラムとドライバー」欄のスクロールし全体の図です。
図:システムの復元画面「復元が見込まれるプログラムとドライバー」欄

f:id:treedown:20160114013007p:plain

f:id:treedown:20160114013027p:plain

早速システムの復元を実行してみました。
今日の11:31適用されたWindows Updateによる復元データですね。
図:システムの復元画面

f:id:treedown:20160114013047p:plain

復元を実行したのち、自動的に復元のためのOS再起動(とその前に復元データ&初期化)が動作し始めます。
図:復元動作実行中の画面

f:id:treedown:20160114013105p:plain

このあたりのタイミングは何も操作することはありません。ひたすら祈りながら待つしかありません。

復元が完了しOSが再起動してくると、何事もなかったかのようにログオン画面が表示されました。

復元完了後動作を確認してみます

実はシステムの復元、という機能はいままでに2・3回しか使ったことがなくて…(ただし、幸いなことにいずれも成功しました)いま一つ自信はなかったのですが、ログオン画面が表示されるということはシステム状態の書き戻しを実行して(ユーザデータはそのままに)以前の状態に戻った、ということなのでしょうか?恐る恐るユーザIDでログオンしてもらいます。

ユーザIDでログオンすると、特に復元前に発生していたメモリ使用率100%もディスクアクセス100%も発生しないように見受けられました。しばらく状態を見守りましたがちょっと使ってもらった感じではメモリ使用率100%もディスクアクセス100%も発生していません。

では再現性があるかどうかによってWindows Updateの問題かどうか、を切り分けできますよね。早速Windows Updateを実行してシステムの復元で削除したKBたちを再度適用することにしました。

この際に、「Microsoft Visual C++ 2012 Update 4 再頒布可能パッケージの更新プログラム」は同一バージョンがインストールされているとWindows Updateがループする不具合がある、という情報を見かけたので「Microsoft Visual C++ 2012」だけはチェックを外してWindows Updateを実行しました。いやでも同一バージョンはインストールされていないんだけどなぁ…(Microsoft Visual C++ 2010まではインストールされています。)

Updateは無事完了し再起動が動作しました。ドキドキしながらまた対象のユーザIDでログオンします。

ログオン後、メモリ使用率100%もディスクアクセス100%も発生しないかどか見守りましたが、

発生しませんでした。


と、いうことはやはりMicrosoft Visual C++ 2012が原因なのか?と思い、急ぎWindows Updateを確認したところ、更新履歴に「Microsoft Visual C++ 2012=成功」となっており、自動更新が動作してすでに適用された後でした。もう後の祭り…。
しかし、

やっぱり現象は発生しませんでした。

こうなるともう後は推測の話にしかなりません。

モヤモヤする結論(何もはっきりしなかった…)

再現性がないのでWindows Updateのせいかどうか、という点はいま一つはっきりしませんでした。別の要因なのかもしれませんね。
あるいは、WU適用時にレジストリ破損が発生するような動作があった可能性があります。と、いうのも冒頭の「”Group Policy Clientサービスに接続できませんでした。システム管理者に問い合わせてください。”というメッセージ」はWindows Updateなどでレジストリ破損が発生した場合によく発生する事例のようです。

今回復活に使用したシステムの復元はデフォルトでC:には有効化されていますので、なにかあった時には準備なしで復元できる軽いシステムバックアップのように使えます。

いま一つ詳細な調査ができなかった本インシデントですが、何か使えそうな(参考になりそうな)ことがあれば幸いです。