2017.09.26: 全面改訂。雑多になり過ぎていたのでわかりやすくまとめなおし
2016.09.06: 書きかけだった項目を補完。解決方法を追記。
2016.08.28: Windows10関連の記述を追記
2014.12.09: HDDのバックアップの項目を追加
2014.12.07: 初出
トラブル発生時の状態
- Windows が起動しなくなった。
- 「Windows 回復環境 (WinRE)」「システムの修復Disc」「メーカー製PCのレスキューモード」などでPCを起動する。
- 「PCのリフレッシュ」や「システムの復元」「イメージでシステムを回復」などを選択する。
- 「Windowsがインストールされているドライブがロックされています。ドライブのロックを解除してやり直してください」というメッセージが出て修復できない。
このような問題が発生した時の原因と対処方法を記載したページです。
まえおき長めです。
まえおき不要、原因や手順のみ知りたい、という場合はこちら
→ このエラーが発生する主な原因へジャンプ
→ 対処方法の項目へジャンプ
「ドライブがロックされています。」という言葉に騙されない
まずはじめに。
このエラーが発生する場合、そのほとんどのケースは「Windowsのブート領域に問題が発生している、またはWindowsシステムを見失っている」という状態です。本当にロックされているケースは非常に稀だと思われます。
- 「ドライブがロックされています。」や「ドライブのロックを解除してください。」というエラーメッセージに惑わされないようにしましょう。
- 「ドライブのロック」に心当たりがない場合は、まずはブート領域の修復を試してみます。
「ドライブがロックされています」のエラーを再現してみる
今回、(スクリーンショットを撮るため、という目的も含め) 以下の手順でこのエラーをむりやり再現してみました。
以下2種類の方法で確認しました
- 「BCD」というWindowsのブートローダーとブートマネージャーの情報が保存されたファイルを削除した。
- WindowsのインストールメディアでPCをブートし、むりやり上書きインストールを行なった (以前のブート情報を削除せずインストール) した。
この状態で Windows8.1 のUSB回復環境でブートし「PCのリセット」を行った所、「ドライブがロックされています。」というエラーが確認できました。
(Windowsのシステムフォルダが見つからない、という状況を作っただけ。Windowsがインストールされたドライブにロックをかけるような操作は一切おこなっていません)
このエラーが出るのは Windows 8、8.1だけ?
実はWinddows10では、同じ症状が出た時に 全く異なるエラーメッセージ が出ます。
- Windows10の場合
▲クリックで拡大
- エラーメッセージ
「PCを初期状態に戻す時に問題が発生しました。変更は行われませんでした」
- エラーメッセージ
- 前項の再現テストで「ドライブがロックされています」とエラーが出たPCを Windows10 のシステム修復ディスク や 回復パーティション で復旧すると、上図のエラーが出ます。(RS1とRS2で確認)
問題の発生状況によってはWindows10でも「ドライブがロックされています」というエラーが出るのかもしれませんが、少なくとも私が試した範囲では「ロックされています」系のエラーは確認できませんでした。
何故こんな事になっているのか
※この項目は個人的な予測です。
Windows 8 / 8.1 の時代
- ウイルス感染などが原因でブート領域が書き換えられるケースや、セキュアブートが異常を検知してOSがブートできなくなるケースを想定して「ロックする」というエラーメッセージを用意していた。
Windows 10の時代
- Windows 8/8.1をリリースしてみたら、実際には、ウイルス感染などでブート領域が書き換えられるケースよりも「別の理由」でブート領域が破損するケースの方が多かった。
- ※「別の理由」について
- Windowsをアップグレードしても、PC購入時の回復環境が残ったままになっている (Windows 8/8.1 時代の一部メーカー製PCで発生しやすい)
- アップグレード失敗時に発生しやすい/OSインストール時に手順を間違えると発生しやすい。
- UEFIブートとレガシーブートを間違えると発生しやすい/UEFI の設定(特にCSM設定) を間違えていると発生しやすい。
こんな理由でエラーメッセージが変更されたのだと思います。
まえおきおわり。以下、本題に入ります。
このエラーが発生する主な原因
まえおきに書いた内容とやや重複する部分がありますが、このエラーが発生する主な原因として、以下のようなものがあります。
- (UEFIの場合) セキュアブートが Windows を不正なOSと認識している。
- ウイルス感染でブート領域が不正に書き換えられた
- セキュアブート有効なままシステムドライブを取り外した
- 復旧メディアのブートで、UEFI / レガシーBIOSを間違えている
- レガシーBIOS でインストールした Windows 10/8.1を、UEFIブートの復旧メディアで修復しようとしている。もしくはその逆。
- IRST (またはハイブリッドHDD) を利用している
- IRSTが有効になっていると、システム修復ディスクは正しく作動しない。
- HDD/SSDハイブリッドにしている場合、設定を無効にしてから復旧を開始する。
- Windowsが起動できる場合は IRST を無効にする。
(※SSHDの場合の対処方法は私は良く知らない。経験なし)
- Windowsのブート領域が正しく認識できていない。
- BCDが破損している、これが一番多い。
エラー0xc000021a、0xc0000001、 0xc0000034、0xc000000f など - OSアップグレード時、何か手順を間違えた、ブート領域が正しく修正されなかった、アップグレード前の回復環境が残ってしまった。
- Cドライブ以外のドライブに ブート情報を持ったストレージが接続されている (過去Cドライブとして利用していたHDDをデータ用に使っている)
- メーカー製PCの場合、Windowsをアップグレードしても古いOSのリカバリ領域が残っており、これが悪影響を与えるケースもある。
- BCDが破損している、これが一番多い。
- 注意: Windows 10でこのエラーが出ている場合は以下を確認する
- 復旧にWindows8.1のUSB回復ドライブを利用している場合は問題なし。そのまま復旧してOK
- 何らかの理由で正しくアップグレードできておらず、Windows 8.1 の回復環境が残っており、かつ有効な状態になっている。
- あと (再現テストしてないけど) 高速スタートアップが有効な状態 → 復旧メディアからコールドブート → 「PCのリセット」という手順の場合も、似たような症状が出るんじゃないか・・・と思います。
思い当たる原因から先に対処していくと、解決が早くなります。
対処方法
このエラーを解消するには、ブート領域の復旧を行います。
※上記「4.Windowsのブート領域が正しく認識できていない」場合の対処法です。
※自己責任で行ってください。
※メーカー製PCの場合、専用のリカバリ領域が使えなくなる場合があります。
※手順はかなり複雑なるケースがあるため、このページではざっくり紹介し、詳細は別ページで紹介しています。
※1.~3. のいずれか1つで直る場合もあれば、複数の手順が必要な場合もあります。
1.余計なハードは取り外す/マザーボードの設定を確認する
- 特にストレージ (HDD/SSD) を複数接続している場合は注意する。
- Cドライブに利用しているストレージのみ、という状態にする。
- かつてCドライブとして利用していたドライブをデータ用として接続している場合は注意。ブート領域が残ったままになっていると、ブートローダーやブートマネージャーがそれを誤認識して復旧できなくなるケースがある。
- マザーボードのBIOS画面を開き、復旧メディアが正しくブートできているか (UEFI / レガシーBIOSどちらで起動しているか) を確認する。
2.バックアップがある場合、それを利用して復旧する
- 以下で紹介する手順(3-1~3-3)は、かなり面倒な手順です。
- PC操作に不慣れな場合、バックアップがあるならそこから復旧した方が早く復旧できます。
- ※ただし、↑はサードパーティ製ツールでバックアップした場合の話です。
このエラーが発生している場合、Windows 標準のイメージバックアップからの復旧は正常に作動しない場合もあります。
3-1.セキュアブート有効な状態でシステム用のHDD/SSDを取り外してしまった場合
- UEFI画面に入り、セキュアブートキーのリセットを行います
- 例: AsRock
▲クリックで拡大
上図の「Install default Secure Boot Keys」を選択、続いて表示される「Load Default Secure Variables」で「Yes」を選択します。 - 選択後の画面
▲クリックで拡大
マザーボードによって操作は異なりますが「Load Default Secure Variables」などの表現がある項目を選んで「Yes」や「OK」を選択します。
これでダメだった場合、次項 3-2. の Windowsの「ブート領域」の復旧を行います。
- 例: AsRock
3-2.UEFIでインストールしたWindowsの場合の復旧手順
- ざっくりした手順
- 復旧メディアでコマンドプロンプトを起動
bootrec /fixboot
bootrec /Rebuildbcd - ただし上記だけでは解消するケースは少なく、ブート領域の削除と再作成が必要なケースが多い。
- 復旧メディアでコマンドプロンプトを起動
- これでダメなら以下の手順を行う。
UEFI/GPTインストールしたWindowsの「ブート領域」の復旧方法 - GPT Windowsのクローンに失敗しない手順3 - クローン後のチェック、ブート領域の再構築と復旧方法
※2つめのリンクは、復旧手順としてはノイズが多いけどさらに詳しく手順を書いたページです
3-3.レガシーBIOSでインストールしたWindowsの場合の復旧手順
- ざっくりした手順
- 復旧メディアでコマンドプロンプトを起動
bootrec /fixmbr
bootrec /fixboot
bootrec /Rebuildbcd - ただし上記だけでは解消するケースは少なく、ブート領域の削除と再作成が必要なケースが多い。
- 復旧メディアでコマンドプロンプトを起動
- これでダメなら以下の手順を行う。
MBRでインストールしたWindowsの「ブート領域」の復旧方法
おもな解決策は以上ですが、まだ続きがあります。
Windowsが起動した後は 必ず 以下の確認を行います。
注意: 復旧が終了した後の手順
Windows回復パーティションを再認識させておきましょう。BCDの削除と再作成を行ったWindowsは、回復パーティションを見失った状態になっています。
Windows回復パーティションを再認識させる手順
このページの情報は以上です。
まだ解決できない場合
このページの改定前の情報(このページと重複していない部分)を以下ページに残しています。
→ 2014年版(情報整理前)「Windowsがインストールされているドライブがロックされています。」の原因や対処方法
上リンクは まとまっていない雑多なページとなっていますが、メーカー製PCの特殊なケースなど、さまざまな情報や参考リンクが掲載してあります。このページの手順で解決できなかった場合でも、なにかヒントになる情報があるかもしれません。