このページについて

Windows Vista/7/8/8.1/10 が起動しなくなった場合に、インストールDVDなどからPCを起動し、コマンドプロンプトでOSを復旧する方法の紹介です。sfc /scannowなど、コマンドプロンプト上から実行できる4種類の復旧方法を紹介しています。

 プライバシーポリシー / 免責事項
更新履歴 [ 全て表示戻す ]
2016.12.07: Windows10マシン (UEFI) でテストする機会ができたので追記

2016.10.18: サイト内リンクの整理と追加
2016.09.07: UEFIの補足および「まだ修復できない場合」を追記
2014.12.06: UEFI(GPT)インストールした場合の注意点を追記


Windows Vista/7/8/8.1/10 が起動しなくなった場合に、インストールDVDなどからPCを起動し、コマンドプロンプトでOSを復旧する方法の紹介です。

コマンドプロンプトでの操作は、XP以降どのOSでも殆ど変わりません。
(注意:ブート領域の復旧方法はかなり違います。)

OSが起動しなくなり、復旧オプションもうまく起動しない場合、通常は
「インストールDVD」
「システム修復ディスク」または
復旧用のUSBメディア」
などから起動します。

実際の手順はページ後半にあります。
※ページ前半は、注意事項や「システム修復ディスク」が上手く起動しない場合のチェックポイントです。

WindowsをUEFIでインストールした場合の注意点

インストールDVDや修復ディスクを起動する前
システムの復元
▲クリックで拡大

 

復旧メディア起動後
システムの復元
▲クリックで拡大
UEFIブートの場合、システムドライブがCドライブ以外で起動する場合がある のでドライブを間違えないよう注意する。

復旧メディアが上手く起動しない場合のチェックポイント

Windows8以降かつUEFIでインストールしたWindowsの場合は、いろいろと注意が必要です。

 

チェックポイントここまで。
以下、実際の手順です。

スポンサー リンク

はじめに

Windows 10や8.1の場合は、コマンドプロンプトの手順を試すより、まず先に「システム復旧ディスク」の「スタートアップ修復」を試してみましょう。
発生している問題が軽症の場合、その多くはこれで解決します。

スタートアップ修復
スタートアップ修復
▲クリックで拡大

スタートアップ修復で効果がなかった場合、以下を試してみましょう。

OS別の起動方法

以下は、OS別の起動方法です。

Windows XPの場合
回復コンソールを利用する
インストールDVDの「回復コンソール」を選択すると、コマンドプロンプトが起動できる。

Windows 7/Vistaの場合
※ページ冒頭で利用した画像の使いまわし
システムの復元
▲クリックで拡大
こんな感じで起動するので「コンピュータを修復する」や「スタートアップ修復の起動」を選択し、コマンドプロンプトを起動させる。

Windows 10/8.1の場合
詳細オプション
▲「詳細オプション」の中にコマンドプロンプトのメニューがある。
※通常、Windows 10/8.1/8 はF8起動できない。
※一定の回数(2~3回)連続して起動に失敗すると、この画面が表示される。

インストールDVDを使った場合
修復DVD
▲このように、画面左下の方に「コンピューターを修復する」という小さいメニューが表示されているので、そこから復旧メニューに進む。
(この先のメニューはシステム修復ディスクとほぼ同じ)

コマンドプロンプトで行える復旧方法(4種類)

このページの本題となる部分です。

お手軽なものから順に並んでいます。
  • 復元ポイントを使った復旧
    • コマンド・・・「rstrui.exe」
    • ダイアログ形式でWindowsを復元ポイントに戻す事が可能です。
    • Windows上で操作する「システムの復元」と同じ効果です。
    • 一番お手軽ですが経験上、セーフモードでも起動しない場合は、まず別の修復が必要です。
    • 一部のXPの場合で、このコマンドが実行出来ない場合があります。
  • システムの整合性チェック
    • コマンド・・・「sfc /scannow」
    • コマンド入力後は特に操作は必要ありません。
    • システムフォルダ内に不正なファイル書き換えが見つかった場合、これで元に戻せます。多くの場合、これが一番効果的です。
    • sfc /scannowが途中で止まってしまう場合は、下で紹介するchkdskを利用して見ましょう。その後、もう一度sfc /scannowを実行するとWindowsが復旧するケースがあります。
      ※ディスクチェックには、かなり時間がかかります。
  • ディスクのエラーチェック
    • コマンド・・・「CHKDSK c: /f」
    • コマンド入力後は特に操作は必要ありません。
      ディスクチェックには、かなり時間がかかります。
    • CHKDSK c: /f でエラーが発見された場合は、「CHKDSK c:/r」という、より強力なコマンドを使ってエラーを修復してみましょう。
      • 注意
        場合によっては、CHKDSK c: /r を複数回実行しないとエラーが修復できない場合があります。
        参考: CHKDSK を何度も繰り返すと、HDD/SSDが回復する場合が・・・あるみたい
      • 注意その2
        SSDドライブに対して「CHKDSK c: /r」を使うのは出来るだけ避けましょう。
        SSDに不良クラスタが発生している場合は、復旧時にSSDの「予備領域」を一気に消費してしまうケースがあるので覚悟しておきましょう。データを避難させた後にローレベルフォーマットなどで完全にフォーマットしなおしてから使い直す方が良いかもしれません。
  • MBRの復旧
    • 注意:
      MBRの修復は、旧BIOS(MBR形式)でOSをインストールした場合の復旧方法です。
      UEFI(GPT形式)でインストールしたWindowsに使ってはいけません。
    • コマンド・・・「bootrec /fixmbr」
      起動しない場合は「bootrec /Rebuildbcd 」
      それでも起動しない場合は「bootrec /fixboot」
    • MBR領域を誤って削除したり、何らかの原因でMBRが破壊された場合にのみ、有効です。
    • インストールDVDまたは修復DVDからPCを起動する必要があります。F8起動のコマンドプロンプトでは使えません。
    • Vista/7/8などの場合は「要素が見つかりません」などのエラーが出たらWindows7 でのMBR修復方法 | MEMO-LOGなどを参考に色々頑張る。
    • XPの場合は「起動しなくなったXPを救う「Rebuild」コマンド - GIGAZINE」などを参考に色々頑張る
    • 最終手段です。失敗するとWindowsが起動不可になります。
    • これを試す前に、インストールDVD付属のリカバリ機能「Windowsの自動修復」や「イメージからの回復」を選んでみましょう。
  • GPT形式の場合の復旧
    • まずは「スタートアップ修復」や「自動修復」を行う。
      効果がなければ以下
    • 「スタートアップ修復」で効果がなかった場合、コマンドプロンプトで以下を行う
      「bootrec /fixmbr」・・・・GPTの場合このコマンドは意味なし。
      「bootrec /Rebuildbcd 」・・・・有効
      「bootrec /fixboot」・・・・有効
      これらのコマンドが正常に実行できない場合は以下「さらに詳しい手順」を行う
      さらに詳しい手順
      • セキュアブート無効にする
      • 手順のみ、ざっくりまとめ
        1. インストールメディアから起動
          コマンドプロンプト起動
        2. ※この項目はBCDファイルを削除またはリネームする際に必要
          diskpartで隠しドライブ(ブート領域)を探し、ドライブレターを付ける
          > diskpart
          diskpart> list volume
          ※FAT32のパーティション(通常は100MB)が目的のボリューム
          ※「info: システム」となっているはず。

          diskpart> select volume X (ドライブ番号)
          diskpart> assign letter=b: (ドライブレター例)
          diskpart> exit
          > b:
        3. コマンドプロンプト上の操作
          b:> cd /d b:\EFI\Microsoft\Boot ※症状が重症な場合に必要
          b:> ren BCD BCD.bak ※症状が重症な場合に必要。「del bcd」でもOK
          b:> bootrec /Rebuildbcd
          b:> bootrec /fixboot
          b:> bcdboot c:\Windows /l ja-JP /s b: /f ALL
          ※bcdboot c:\Windows /l ja-JP だけでもいい
          b:> exit
        4. これらのコマンドを実行した後もスタートアップ修復を2回行う
        5. 補足
          ※全ての手順が終了した後は「del BCD.bak」でリネームしたファイルを削除しておく。
          ※必要に応じてセキュアブートも有効に戻す。
      • Windows10マシン (UEFI) でテストする機会ができたので追記
      • DISKPARTで隠しドライブを探し、ドライブレターを付ける
        DISKPARTで隠しドライブを探し、ドライブレターを付ける
        ▲クリックで拡大
      • bootrec /fixbootで修復。
        bootrec /fixbootで修復。
        ▲クリックで拡大
    • その他外部参考(今後自分が読み返す用リンク)
      uefi ※ページ中段
      MBRのWindows 7を、再インストールなしでGPTに変換する方法 - 苦労と試行
      Windows のブート修復に使うコマンド一覧 - Kerosoft : Modus Operandi
      Windows7のブートセクタを吹っ飛ばした - ひとりごと

上記の復旧方法を試す順序

完全に私の経験則だけど、以下の手順が効率的。
  1. 「sfc /scannow」
  2. 「1.」でエラーが出た場合は「CHKDSK c: /f」してもう一回「sfc /scannow」
  3. 「CHKDSK c: /f」でディスクにエラーが見つかった場合は、エラーが出なくなるまで「CHKDSK c:/r」を繰り返す。
  4. 修復DVDのメニューにある「Windowsの自動修復」など
    (OSにより呼び名が違う)
  5. 「rstrui.exe」またはOS上の「システムの復元」

「Windows の自動修復」や「システムの復元」が上手く実行出来ない場合でも、「CHKDSK c: /f」や「sfc /scannow」を実行後にもう一度「Windowsの自動修復」や「システムの復元」を行うと何故か治るというケースを(数回だけど)体験している。

MBRの復旧については、「明らかにMBRがおかしい」「ブート領域が破損している・みつからない」などの場合に試してみる。

復旧が中途半端で、まだWindowsが不安定な場合

とりあえずWindowsは起動できる (または起動できそうな) 状態になった場合は、一度セーフモードで起動し、原因となるドライバやソフトを削除してみましょう。
※この方法はドライバや常駐ソフト、セキュリティソフトが原因でWindowsが正常に起動しない場合に効果があります。

まだ修復できない場合