Windowsで「システム修復が保留中です」という問題を解決する方法



「システム修復が保留中です。完了するには再起動が必要です」という厄介なメッセージ、特にシステムファイルチェッカー(SFC)を実行しようとした際に表示されたメッセージに遭遇したことがある人は、あなただけではありません。何度も再起動したにもかかわらず、Windowsがまだ何かを完了する必要があると認識して固まってしまうような状態です。通常、このメッセージはシステムファイルのスキャンと修復を妨げ、Windowsが協力してくれないと正直言ってイライラします。通常は1、2回再起動すれば解消しますが、エラーが消えない場合は、より直接的な対処法が必要になります。幸いなことに、ほとんどの修正は非常に簡単で、いくつかのコマンドを実行するだけでこのハードルを乗り越えることができます。

基本的に、これはWindowsが自動的に消去しない、残存するシステム修復要求や破損した保留中のファイルに関するものです。何をするにしても、強制シャットダウンやハードウェアの取り外しは避けてください。よりクリーンな方法で対処できます。以下の方法は一般的な経験に基づいていますが、Windowsが勝手に動いているように感じることもあります。しかし、心配しないでください。1つの修正で解決しなくても、別の修正で解決できる場合がほとんどです。ただし、一部の修正では、Windowsが正常に起動しない場合は、セーフモードまたは回復環境で起動する必要があることに注意してください。Windowsは当然ながら、状況を複雑にする必要があるためです。

Windowsで「修復保留中」エラーを修正する方法

方法1:DISMコマンドを実行して保留中のアクションを修正する

このエラーが発生した場合、多くの場合、これが解決策として挙げられます。DISM(展開イメージのサービスと管理)はWindowsイメージの修復に役立ち、SFCをブロックする保留中のアクションをクリアするのに非常に効果的です。DISMが機能する理由は、Windowsコンポーネントストアをクリーンアップし、スタックしている可能性のある修復フラグをリセットして、通常の動作を復元するためです。

必要な手順は次のとおりです。

  • を押しWin + Rcmdと入力して を押すとEnter、管理者としてコマンドプロンプトが開きます。Windowsを起動できない場合は、回復メニューのトラブルシューティング > 詳細オプション > コマンドプロンプトからコマンドプロンプトを起動する必要があります。
  • まずこのコマンドを実行します:
    DISM.exe /Online /Cleanup-Image /Restorehealth

    (ネットワークまたはディスクに関するエラーが表示されても通常は問題ありません。再試行するか、先に進んでください)。

  • 完了するまでお待ちください。数分かかる場合がありますので、実行中はコーヒーでも飲んでください。完了したら、もう一度sfc /scannow を実行してみてください。通常は、保留中のエラーが表示されずに完了します。

それでもうまくいかない場合は、次のコマンドを追加してください。

DISM.exe /image:C: /cleanup-image /revertpendingactions

C:(異なる場合は、正しい Windows ドライブ文字に置き換えてください。システム予約済みやその他のパーティションによって問題が発生する場合があります。)

実行後、再起動してSFCが正常に動作するか確認してください。通常、1回の再起動でゴースト修復フラグはクリアされます。設定によっては、完全にクリアされるまでに数回の再起動が必要になる場合があります。

方法2: Pending.xmlファイルを削除する

これは一種の「核兵器」的な修正ですが、WinSxSフォルダ内のpending.xmlファイルが原因である場合もあります。このファイルが破損していたり​​、動作が停止していたり​​すると、Windowsは修復がまだ完了していないと判断し、削除することで問題が解決することがあります。ただし、システムファイルの削除は必ずしも推奨されないため、慎重に進めてください。ただし、この場合は手順に従えば通常は問題なく機能し、リスクもありません。

やるべきことは次のとおりです:

  • 管理者としてコマンドプロンプトを開きます ( Win + R、 と入力してcmdを押しますCtrl + Shift + Enter)。
  • pending.xml ファイルを削除するには、次のように入力します。
    del C:\Windows\WinSxS\Pending.xml

    (この場合も、C:Windows が別のドライブにある場合は調整してください)。

  • 削除後、次のように SFC コマンドを実行します。
sfc /scannow /offbootdir=c:\ /offwindir=d:\windows

c:\とをd:\windows実際のドライブとWindowsフォルダのパスに置き換えてください。D:が回復パーティションである場合もあります)。システムが起動できない場合は、回復モードで起動するか、Windowsメディアドライブから起動してこれを実行する必要があります。

フォルダ全体を削除することを検討する人もいますがWinSxS、正直なところ、それは極端な方法であり、通常は必要ではありません。pending.xmlファイルを削除してSFCを再実行するだけで、ほとんどの場合は問題が解決します。

方法3: ドライバーを確認して更新する

このエラーに加えて奇妙なバグや頻繁なクラッシュが発生する場合は、ドライバーに問題がある可能性があります。Windows Updateで通常は解決しますが、自動更新をオフにしている場合や念のため確認したい場合は、以下の手順をご確認ください。

  • 押すとWin + I設定が開きます。
  • Windows Update (Windows 11 の場合) または 更新とセキュリティ > Windows Update (Windows 10 の場合) に移動します。
  • 「アップデートを確認」 を押して、アップデートが表示されたらインストールしてください。場合によっては、大規模なドライバーアップデートにパッチが付属しており、再起動待ちの問題をサイレントに解決できることがあります。

更新しても問題が解決しない場合、またはディスプレイ ドライバーに疑問がある場合は、デバイス マネージャー ( Win + R、 と入力devmgmt.msc) に移動して、次の操作を行います。

  • ディスプレイ アダプター を展開し、グラフィック カードを右クリックして、デバイスのアンインストール を選択します。
  • その後、[アクション] メニューに移動し、[ハードウェア変更のスキャン] をクリックします。これにより、ドライバーが自動的に再インストールされ、多くの場合、最新バージョンが取得されます。

ドライバーの破損により Windows が修復サイクルを適切に完了できない場合は、これが役立ちます。

方法4: レジストリ設定を調整する

信じられないかもしれませんが、WindowsにはRebootPendingというレジストリキーがあり、これは再起動が必要なシステムを示すフラグとして機能します。Windowsは、実際には再起動が保留中でないにもかかわらず、再起動が保留中であると認識してしまうことがあります。レジストリの編集は難しそうに思えるかもしれませんが、手順を注意深く実行すれば、すぐに修正できます。

  • を押して、とWin + R入力し、 を押します。regeditEnter
  • 次の場所に移動します:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion
  • CurrentVersion を右クリックし、アクセス許可 を選択します。ユーザー名に フルコントロール 権限が付与されていることを確認してください。
  • 右側のペインでRebootPendingというキーを探します。存在する場合は、右クリックして削除してください。
  • Regedit を閉じて再起動し、SFC がエラーなしで実行されるかどうかを確認します。

場合によっては、そのキーを削除するだけで再起動フラグがリセットされ、保留中の修復アラートがクリアされます。

方法5:BIOSでSATAモードを変更する

これはいわば最後の手段です。BIOSでSATA設定をAHCIからIDEに切り替えると、修復保留の問題が解決したという報告もあります。これはおそらく、Windowsがディスクドライバーとやり取りする方法によるものと思われます。他の修正方法を試してから、この方法をお試しください。BIOSをいじると、やり方を間違えると起動に問題が生じる可能性があるため、慎重に行ってください。

  1. PCを完全にシャットダウンします。
  2. 電源ボタンを押し、起動したらすぐに、マザーボードで使用されている BIOS 入力キー (F2、Del、Esc、F10、F12) を繰り返し押します。
  3. BIOSメニューを操作してSATA設定を見つけます。通常は「ストレージ」または「メイン」タブにあります。
  4. SATA モードを AHCI から IDE に切り替えます (長期的には推奨されませんが、一部の古いシステムやデュアルブート セットアップでは必要です)。
  5. BIOS を保存して終了し、Windows を再起動します。

この方法はちょっと危険なので、不安な場合は、まず他の方法でWindowsを修復してみることをお勧めします。Windowsはこうした問題を複雑にしているからです。

システムファイルチェックのまとめ

最終的な目標は、Windowsが修復プロセスを完了する必要があると認識している原因を取り除くことです。pending.xmlファイルを削除するか、フラグをリセットすれば、sfc /scannowの実行は通常スムーズに行えます。場合によっては、忍耐力の問題になることもあります。これらの修正の多くは、実際に効果を発揮するまでに数回の再起動や再試行が必要になる場合があります。

まとめ

  • DISM コマンドを実行してイメージを修復し、保留中のアクションをクリアします。
  • `Pending.xml` が破損しているかスタックしている場合は削除します。
  • ハードウェアの問題が関連していると思われる場合は、グラフィック ドライバーを更新または再インストールします。
  • レジストリを編集して RebootPending フラグを削除します。
  • 最後の手段として、BIOS SATA 設定を微調整します (注意してください)。

まとめ

「システム修復保留中」エラーの修正は、ちょっとした手探り作業ですが、通常はDISMとpending.xmlの削除で解決できます。特に再起動を挟む場合は、多少の試行錯誤が必要になるでしょう。しかし、辛抱強く待つことで、ほとんどのPCでこのメッセージはクリアされ、問題なくSFCを再度実行できるようになります。この情報が、誰かのストレス解消に役立つことを願っています。確かに、いくつかのマシンでは多くの頭痛の種を解消できたはずです。



この記事は役に立ちましたか?