システムイメージのチェックと修復
システムファイルチェッカーのページで紹介しているsfc.exeによるチェックと修復とは別に、Windowsシステムイメージのチェックと必要であればWindows Updateからデータをダウンロードしての修復を行う事ができるコマンドが存在する。
Windowsの挙動がどうにも怪しい場合はsfc.exeと合わせて実行すると改善する場合があるので、合わせて紹介しておく。
システムイメージのチェック
システムイメージのチェックはsfc.exeの時同様、コマンドラインにて行う。
コマンドプロンプトかPowerShellプロンプトを管理者権限で起動する。
とりあえずチェックだけ行えれば良いのであれば、
Dism.exe /Online /Cleanup-Image /ScanHealth
と入力・実行する。
システムイメージの修復
チェックだけではなく、修復も行う場合は次のコマンドを実行する。
なお、修復用のコマンドでも事前に破損チェックは行うので、システムがあやしいとわかっている場合は、いきなりこちらのコマンドを実行してしまって構わない。
Dism.exe /Online /Cleanup-image /RestoreHealth
ちなみに、実行後に「修復処理が行われたのか」がちょっとわかりにくい。
「復元操作が完了しました」と出たら、何らかの修復は行われていると考えて良い。
細かい情報が知りたい場合はC:\Windows\Logs\CBS\CBS.logに処理のログが出力されているので、確認するとわかる…かもしれないが、情報が細かく複雑なため、本職の人間でなければおそらく読んでもわからない。
インターネットアクセスが制限されている場合など
Dismコマンドでチェックと修復を行う場合、インターネット接続ができる状況でないとWindows Updateから必要なデータを取得することができないので、修復できなかったりする。
こういった場合は、Windowsのインストールメディアに含まれているデータを元にチェックや修復を行わせる事もできる。
例えば、DドライブにWindowsのインストールDVDが挿入されている状態であれば、
Dism.exe /Online /Cleanup-image /RestoreHealth /source:WIM:D:\Sources\Install.wim:1 /LimitAccess
とすることでDドライブのWindowsインストールメディア内のwimイメージを元にしてチェックと修復を実行してくれる。
起動中ではないシステムを対象とする場合
まず無いと思うが、「今起動しているシステムではないシステムイメージがある場合」に、そのシステムイメージのチェックを行うとしたら。
例えば、Cドライブのシステムで起動中に、Dドライブにもインストールされているシステムイメージをチェック・修復する、とするとイメージしやすいだろうか。
こういった場合の指定方法もある。
Dism.exe /Image:D:\Windows /Cleanup-image /RestoreHealth
/Onlineの部分を/Image:ターゲットのシステムイメージのパスとすると実行できる。
ログファイル
ログファイルはC:\Windows\Logs\DISM\DISM.logに記録される。
解析方法はよくわからん。。。