定期的に健康診断を受ける事によって身体の問題の早期発見、もしくは何事もなくて安心する材料になったりします。
Windowsでもそれは例外ではなく色々な方面から確認する事が大事ですが、Windowsの挙動がおかしかったりする時にシステムファイルチェッカー(SFC)を使用してWindowsを一つの側面からチェックできます。
そこでSFCを走らせた所ごくたまに以下のようなメッセージが出たりします。
保留中のシステムの修復があり、完了するには再起動が必要です。Windows を再起動して sfc を再度実行してください。
英語の場合は以下のメッセージになります。
There is a system repair pending which requires reboot to complete. Restart Windows and run sfc again.
本来ならばメッセージ通りに再起動すれば問題が解決しますが、解決しないときは何かが問題を起こしているのでその問題を取り除けば問題が消えます。
個人的な経験上、Windows 10等で半年ごとの大型アップデートを行ったときに出たりします。また、この大型アップデートをずっと行わずにWindowsを使い続け、その後アップデートを適用した時にも発生しています。
さて、問題の解決には以下のファイルを削除する必要があります。
c:\windows\winsxs\pending.xml
コマンドプロンプトで以下を行えば削除できると思いますが、
C:\WINDOWS\system32>del c:\windows\winsxs\pending.xml
c:\windows\winsxs\pending.xml
アクセスが拒否されました。
実はc:\windows\winsxs\のフォルダーはWindowsにとっての重要フォルダーなので管理者権限のコマンドプロンプトでも削除はできません。
方法は何個かあります。
- コマンドプロンプトの管理者権限でdism.exe /Online /cleanup-image /revertpendingactionsを行う。
- セーフモードでWindowsを作動し、c:\windows\winsxs\pending.xmlを削除する。
- Windowsインストール用のブートメディアで作動し、c:\windows\winsxs\pending.xmlを削除する。
コマンドプロンプトの管理者権限でdism.exe /Online /cleanup-image /revertpendingactionsを行う。
この方法が一番安全で確実です。
何をしているかといえば /revertpendingactions で保留中の何かしらをもとに戻すという事を指定しています。
/Online は実行中のWindowsに対して行うという指定。
/cleanup-image は指定したWindowsのイメージに対してきれいにしましょうという指定。
うまくいくと c:\windows\winsxs\pending.xml が削除され、再起動をして下さいと促されます。
もし上記を行ってもエラーがある場合は力づくで削除という形で以下を試しましょう。
セーフモードでWindowsを作動し、c:\windows\winsxs\pending.xmlを削除する。
まぁ、そのままです。PCを作動する時にF8を押してセーフモードで作動。その後コマンドプロンプトでサクッと削除。
ただし、この方法は非推奨です。できればdismを使う方式で身をきれいにした方がよろしいので。
Windowsインストール用のブートメディアで作動し、c:\windows\winsxs\pending.xmlを削除する。
セーフモードで削除せず、Windowsのブートメディアから作動して削除したい場合はブートメディアから作動し、コマンドプロンプトへ行き削除。
ただし、この方法は非推奨です。できればdismを使う方式で身をきれいにした方がよろしいので。
コメント