bootrec /fixbootで「アクセスが拒否されました」が出た時の対処 – Windows10

  • このエントリーをはてなブックマークに追加
  • Pocket

bootrec /fixbootは、ブート領域の破損でWindowsが起動しない問題を修復できるコマンドです。Windowsが起動できない状態でも、回復環境のコマンドプロンプトから実行することができます。

しかし、ブート領域の破損状況によっては、コマンド実行時に「アクセスが拒否されました」のエラーが出るケースがあります。

本記事では、Windows10でbootrec /fixbootコマンドを実行した時に、「アクセスが拒否されました」エラーが出る時の対処法を紹介します。

準備: インストールメディアを作成する

対処を行うためにWindows10のインストールメディアを使用します。そのため、事前にインストールメディアを作成してください。

インストールメディアを作成するには、8GB以上の容量がある空のUSBメモリまたはDVDが必要です。

また、Windowsが起動しない状態であれば、インストールメディアを作成するパソコンとインターネット環境も必要になりますのでご注意ください。

インストールメディアの作成ツールは、以下のリンク先にある「ツールを今すぐダウンロード」ボタンから入手できます。

作成の手順については、上記ページの「このツールを使用して、別のPCにWindows 10をインストールするためにインストールメディアを作成する」の内容を参考にしてください。

インストールメディアが作成できたら、次の対処をおこなってください。

対処1: CHKDSKを実行する

システムドライブの不良セクタが原因で、bootrec /fixbootのコマンドで「アクセスが拒否されました」が出るケースがあります。

そのため、CHKDSKを実行し、システムドライブのセクタエラーを検査してみてください。

  1. パソコンにインストールメディアをセットしてからパソコンを起動します。
  2. 回復環境が起動します。言語設定画面が表示されたら「次へ」をクリックし、その後「コンピューターを修復する」をクリックします。
    • 起動しない場合は、BIOS設定画面でデバイスの起動順序を変更して下さい。
  3. 「オプションの選択」画面が表示されたら、「トラブルシューティング」→「詳細オプション」→「コマンドプロンプト」と進みます。
  4. コマンドプロンプトが表示されたら、次のコマンドを入力してエンターを押します。
    chkdsk c: /r

chkdskによってファイルシステムを修復できたら、もう一度bootrec /fixbootを実行して問題が解決したか確認します。

対処2: bootrecコマンドを使って修復する

bootrecコマンドで先にBCDの再構築とMBRの修復を実行してから、bootrec /fixbootを実行すると「アクセスが拒否されました」のエラーが解決する場合があります。

そのため、次の手順でシステムのスキャン及びブート情報の修復を行ってみてください。

  1. パソコンにインストールメディアをセットしてからパソコンを起動します。
  2. 回復環境からコマンドプロンプトを起動します。
  3. 次のコマンドを入力してブート可能なシステムをスキャンします。
    bootrec /scanos
  4. Windowsのインストールが認識されたら、次のコマンドを実行してBCDを再構築します。
    bootrec /RebuildBcd
  5. 実行後、「ブート一覧に追加しますか?」と確認画面が表示されるので、「Y」を入力して承認します。
  6. 次のコマンドを実行してMBRを修復します。
    bootrec /fixmbr

最後にbootrec /fixbootを実行してエラーが解消されたことを確認します。

対処3: ブート領域を再構築する

ここまでの対処方法で解決しない場合は、diskpartコマンドを使ってブート領域を再構築します。

Windowsのブートモードにより手順が異なるため、操作を行う前にお使いのWindowsのブートモードがUEFIか、それともレガシーBIOSかを確認しておく必要があります。

新しいモデルのPCであれば「UEFI」モードであることが多いです。

ブートモードは、多くの場合BIOS設定画面を調べることで判断することができます。PC起動時にBIOS画面を表示して、次の設定を確認してみてください。

  • 「Boot Mode」「Boot Sequence」等の設定項目を確認し、「Legacy」「UEFI」のどちらが設定されているか調べてください。
  • 「CSM」が無効になっていれば、ブートモードは「UEFI」になります。
  • 32bit版Windowsは、必ずレガシーBIOSモードになります。
  • パソコンによってはUEFI・レガシーBIOSのどちらか片方しかサポートしていない機種もあります。メーカーサイト等でパソコンのスペック情報も確認してみて下さい。

ブートモードを確認したら、実際にブート領域を修復します。お使いのパソコンのブートモードに合った手順でdiskpartコマンドを実行します。

UEFIの場合

  1. 回復環境からコマンドプロンプトを開きます。
  2. diskpartを起動します。次のコマンドを入力し、エンターキーを押して下さい。
    diskpart
  3. 続いて次のコマンドを入力し、ボリュームリストを表示します。
    list volume
  4. リストが表示されたら、リストの中からEFIシステムパーティションの番号を確認します。
    • EFIシステムパーティションは「Size」が100MB~500MBであり、「Fs(ファイルシステム)」がFAT32であることが特徴なので、該当するボリューム番号を探して下さい。
  5. 続いて、次のコマンドを入力します。末尾にある「?」の部分は、手順7で確認したEFIシステムパーティションのVolume番号に置き換えてください。
    select volume ?
    • 例: EFIシステムパーティションがVolume 1であれば、select volume 1と入力してエンターキーを押します。
  6. EFIシステムパーティションにドライブレターを割り当てるため、次のコマンドを入力します。
    assign letter=V:
  7. exitと入力してdiskpartを終了します。
    exit
  8. EFIシステムパーティションをフォーマットします。次のコマンドを入力してください。
    format V: /FS:FAT32
  9. 最後に次のコマンドを入力してブートローダーの修復を実行します。
    bcdboot C:\windows /s V: /f UEFI

すべてのコマンドを入力したら、ブート領域の再構築は完了です。もう1度bootrec /fixbootコマンドを実行して、エラーが解消されたか確認します。

レガシーBIOSの場合

  1. 回復環境を起動し、コマンドプロンプトを開きます。
  2. 次のコマンドを入力してdiskpartを起動します。
    diskpart
  3. 続いて、次のコマンドを入力します。
    list disk
  4. パソコンが認識しているディスク一覧が表示されるので、サイズ情報等を参考にWindowsがインストールされているハードディスク(SSD)をリストから探します。
  5. 次のコマンドを入力します。ただし、コマンドの?部分は手順4で確認したディスクのディスク番号に置き換えてください。
    select disk ?
    • 例: Windowsのインストールされているディスクがディスク0であれば、select disk 0と入力してエンターを押します。
  6. 成功すると「ディスク(数字)が選択されました」と表示されます。続いて、次のコマンドを入力します。
    list partition
  7. 認識されているパーティションのリストが表示されるので、「システムがインストールされているパーティション」を選択します。
    • 通常システムパーティションは100MB~500MB程度なので、不明な場合はSizeの情報を参考に探して下さい。
  8. システムパーティションを確認したら、次のコマンドを入力します。
    select partition ?
    • ?の部分は確認したシステムパーティションの番号に置き換えてください。
    • 例: システムパーティションがPartition 1であれば、select partition 1と入力します。
  9. 「パーティション(数字)が選択されました」と表示されたら、「active」と入力してシステムをアクティブにします。
    active
  10. 次のコマンドを入力し、システムがインストールされているドライブを確認します。Cドライブに割り当てられることがほとんどですが、念の為確認しておきます。
    list volume
  11. システムドライブを確認したらexitと入力してdiskpartを終了します。
    exit
  12. 最後に次のコマンドを入力します。
    bcdboot C:\Windows /l ja-JP /s C: /f ALL
    • 確認したシステムドライブがCでない場合は、コマンド内の2箇所の「C」をお使いのパソコンのシステムドライブレターに置き換えて下さい。

以上でレガシーBIOSのブート領域の再構築は完了です。bootrec /fixbootコマンドを実行してエラーが解決したか確認します。

対処4: ブートセクタを修復する

ブートセクタに問題が起きており、bootrec /fixbootのコマンドで「アクセスが拒否されました」のエラーが出るケースがあります。

そのため、次の手順でブートセクタの修復コマンドを実行してみて下さい。

  1. 回復環境を起動し、コマンドプロンプトを開きます。
  2. 次のコマンドを入力します。
    bootsect /nt60 sys
  3. 上記のコマンドでエラーが出る場合は、次のコマンドを試して下さい。
    bootsect/nt60 all /force

以上で、ブートセクタの修復は完了です。bootrec /fixbootを実行してエラーが解消されたことを確認します。

解決しない時は

  • インストールメディアのバージョンによってはバグが原因で一部の修復コマンドが正常に動作しないことがあります。
    • 古いインストールメディアを使用している場合はインストールメディアを作成し直してみてください。
  • BIOSの設定で「Fast Boot」と「Secure Boot」の機能を無効化すると、エラーが解決する場合があります。

コメントを残す

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)