sfc /scannowが実際にしていること
System File Checkerは、保護された各システムファイル——Windows自身が実行するDLLや実行ファイル——を、C:\Windows\WinSxSに保管されている既知の正常なコピーと照合します。ディスク上のファイルが参照コピーと異なればSFCが置き換えます。ストア内の参照コピー自体が壊れている場合は、SFCはそのファイルを報告するものの修復できず、まさにそのためにDISMが存在します。走査には管理者権限のコンソールが必要です:Win+X → ターミナル (管理者)。読み取るのはローカルディスクだけなので、インターネット接続は不要です。
SFCに頼るのは、Windows自身のファイルが壊れていると思われる場面です。失敗した更新、整備中の強制電源断、あるいは被害を残したマルウェア駆除の後など。このコマンドは個人データに完全に安全で、ユーザープロファイル、ドキュメント、アプリケーション自身のフォルダーは一切走査も変更もしません。
- Windows更新が途中で失敗する、または何度もロールバックを繰り返すとき
- CRITICAL_PROCESS_DIEDやIRQL_NOT_LESS_OR_EQUALなどのブルースクリーンが、ハードウェアの理由なく発生し始めたとき
- マルウェア駆除後、システムファイルが無事かどうかを確認するため
- 内蔵アプリ、スタート メニュー、設定が開いた瞬間にクラッシュするとき
- インプレース修復アップグレードの前に——20分の走査が1時間の再インストールを省いてくれるかもしれません
- DISMやWindows Update自身がストアの破損を報告したとき
SFCの実行と結果の読み方
Win+Xまたはスタートの右クリックでターミナル (管理者)を開き、sfc /scannowと入力してEnterを押します。走査は割合を表示し、通常5~20分で終わります(古いHDDでは顕著に長く)。完了までコンソールは開いたままにします。結果は4通りあり、それぞれ次の一手が異なります。
「Windows Resource Protection did not find any integrity violations」はシステムファイルが正常という意味で、故障の原因は別の場所を探します。「Found corrupt files and successfully repaired them」は勝ちです。修復されたファイルが実際に読み込まれるよう再起動します。「Found corrupt files but was unable to fix some of them」はコンポーネントストアの破損を示すので、DISM /Online /Cleanup-Image /RestoreHealthを実行してからSFCを再実行します。「Could not perform the requested operation」はほぼ常に保留中の整備操作を意味し、再起動して再試行します。
SFCが失敗するとき:まずDISM、それから再実行
SFCは修復元のコンポーネントストアと同じ健康度しか持てないため、機能するはしごはDISM RestoreHealth → sfc /scannow → 再起動です。修復の詳細はすべてC:\Windows\Logs\CBS\CBS.logに記録され、findstr /c:[SR] %windir%\Logs\CBS\CBS.logでSFC行だけに絞り込めます。特定のケース向けのバリアントもあります。sfc /verifyonlyは何も変更せずに照合だけを行い、sfc /scanfile=C:\Windows\System32\broken.dllは単一ファイルを狙い撃ちします。
SFCが依存するストアについて、警告を一つ。C:\Windows\WinSxS内を手動で削除しないこと、サードパーティの「クリーンアップ」ツールに刈り込ませないこと。中身を抉られたストアは、以後のSFC実行すべてを修復不能な破損の報告に変えてしまいます。代わりに公式のStartComponentCleanupの経路を使ってください。SFCを定期的に流す意味はありません。疑いのあるときや事件の後に起動するもので、予定表で動かすものではありません。
よくある質問
sfc /scannowにはどれくらいかかりますか?
SSDでは通常5~20分、古いHDDでは30分を超えることもあります。最終的な判定行が表示されるまで、コンソール画面は開いたままにします。
sfc /scannowはファイルやプログラムに安全ですか?
はい。SFCが触るのはシステムフォルダー内の保護されたWindowsファイルだけです。個人ファイル、ドキュメント、アプリケーションデータは読み取りも変更もされません。
SFCが破損ファイルを見つけたが修復できないとは、どういう意味ですか?
SFCが置き換え元にするコンポーネントストア自体が壊れているという意味です。DISM /Online /Cleanup-Image /RestoreHealthを実行し、再起動してからsfc /scannowを再実行してください。2回目で大抵は修復が完了します。
購入前にライセンスの内容をご確認ください。
一度限りの 30 分試用では基本ツールを利用できます。PRO 機能は有料ライセンスを有効にするまでロックされています。
次に読む記事
お問い合わせ: [email protected]