Windowsが起動しない時のコマンドプロンプト使い方の概要
Windows11/Windows10が起動に失敗するような深刻なエラーが発生したときの修復方法として、スタートアップ修復、更新プログラムのアンインストール、システムの復元があります。そして”ひな形”や”定型文”ではないのですが、スタートアップ修復、更新プログラムのアンインストール、システムの復元の順番で作業していただければ、Windows起動トラブルを修復する知識や経験がなくても、これだけで多くのエラーを修復できます。
しかし、コマンドプロンプトはそのようなひな形と言いましょうか、これをやると修復できるみたいな手順や作業順が決まっているわけではありません。ケースバイケースで必要なコマンドを判断して使っていきます。そのため、コマンドプロンプトは知識と経験がないと正しい使い方ができない、いわゆるプロ向けです。
ちなみに、ページ冒頭でご紹介しました「chkdsk c:¥ /f
」と「bootrec /rebuildbcd
」だけはひな形のようなコマンドでして、コマンドの意味を知らなくても、とりあえず試してみようがOKなコマンドです。
コマンドプロンプトを使う前の準備編(Windowsが起動しない限定)
コマンドプロンプトを使うにあたり、お使いのパソコンの情報として事前確認が2点あります。BIOSなのかUEFIなのか(パーティションがMBRなのかGPTなのか)でコマンドプロンプトの使い方が変わります。それとWindows11/Windows10の起動トラブルを直しますので、Windowsフォルダのあるドライブレターを把握する必要があります。
まずはBIOSなのかUEFIなのかですが、コマンドプロンプトボタンと同じ画面にUEFIファームウェアの設定ボタンがあればUEFIです(パーティションはGPTです)。
次にWindowsフォルダのあるドライブレターを把握していきます。「dir c:¥
」と入力してください。この画像のようにProgram Files、Program Files(x86)、Users、Windowsがあれば、Windowsフォルダのあるドライブレターはc:¥です。
それらフォルダがない場合は、「dir d:¥
」と入力してください。見つかればドライブレターはd:¥です。見つからない場合は「dir e:¥
」と、ABC順で次のローマ字を入力して、Program Files、Program Files(x86)、Users、Windowsが見つかるまで探してください。
Windowsが起動しないコマンドプロンプトのヤバイ使い方
ここでご紹介するコマンドは、お客様よりお伺いしたWindows11/Windows10が起動しないときに試したコマンドプロンプトの話の中で、「よくわからないけどネットに書いてあるから試してみよう」というスタンスではキケンでヤバイものになります。具体的には「bcdboot c:¥Windows /l ja-JP
」コマンドになります。
bcdboot c:¥Windows /l ja-JP
昔から、このbcdbootを行ったら操作不能になりました。というご相談があり、当社の YouTubeチャンネル でテストしました。正常に起動するWindowsで試したところ、回復という青い画面になり、Windowsが起動できなくなりました。
起動できていたWindowsが起動できなくなるというマイナス効果もありますので、「ネットに書いてあるから試してみよう」がキケンなコマンドと言っても過言にはならないかと思います。ちなみに、bcdbootを実行する前にbcdのバックアップ(複製)を作っておきますと簡単に元に戻せます。そのため、バックアップは必ず作っていただきたいです。
ちなみに、私がbcdbootを使うとしましたら、bcdの書き換えができないときなど、かなり珍しく限られたものです。bcdのエラーでしたら「bcdedit /set
」で直接bcdを編集しています。
SSD換装でクローン元もクローン先もWindowsが起動しないトラブルの修復事例
こちらの記事は実際に「bcdedit /set
」で直接bcdを編集してWindows起動トラブルを直した事例です。こちらの記事のようなUnknownになっている項目を「bcdedit /set
」で編集して直す作業は比較的多いかと思います。
そのような感じで、なぜbcdbootを使いのか?という理由がとても重要です。ネットの記事はその方法で解決できたかもしれませんが、あなたのパソコンが同じエラーなのかどうか、症状だけでの判断はキケンです。症状が同じでも原因が違うのが一般的です。あくまでも症状ではなく、今起きているエラーの原因でコマンドの選択やメンテナンス方法が変わります。
そしてこれはコマンドプロンプト全般の注意点になりますが、情報を編集するコマンドを間違えて使うと、エラーを直すつもりで逆に壊してしまう恐れがあります。実際に「bcdboot c:¥Windows /l ja-JP
」を行ったら操作不能になりました。というご相談があります。
ちなみに、「dism /image:c:¥ /get-packages
」や「dir c:¥
」のように、情報を見るだけで情報を編集、修正しないコマンドでしたら状況は変わりません。編集をしないコマンドでしたらネットに書いてあるからという理由で作業しても、悪化してエラーが起きることはありません。
bcdbootや「bcdedit /set
」のような編集するコマンドは、失敗したときに元に戻せるようにバックアップしておくことがとても大切です。ただし、バックアップができない、失敗したらアウトみたいな、いわゆる片道切符のコマンドもありますので、そのコマンドを理解した上で使うかどうか判断することもかなり大切です。
Windowsが起動しない時のコマンドプロンプトを使った修復方法
お客様よりお伺いしたWindows11/Windows10が起動しないときに試したコマンドプロンプトの話を元に、よくあるスペルミスのような間違いでしたり、こうしたらもっと良いというアドバイスを注意点も含めてレポートしたいと思います。コマンドの並びは私のオススメ順になります。
chkdsk c:¥ /f
bootrec /rebuildbcd
ren
rmdir
dism /online /~
sfc /scannow
bootrec /fixmbr
bootrec /fixboot
rstrui
chkdsk c:¥ /f
「chkdsk c:¥ /f
」は、情報を管理するファイルシステムを修正するコマンドです。ファイルシステムのエラーはchkdskでしか直せません。想定されているエラーのひとつでして、Linuxなど他のOSでも同様のコマンドが準備されています。
エラーだけを直すコマンドのため、コマンドの意味を知らなくても、とりあえず試してみようがOKなコマンドです。悪化はしません。
ファイルシステムのエラーが原因のWindows起動トラブルは一定数あります。Windows起動トラブルが修復できる見込みがあるコマンドでして、試して損のないオススメのコマンドです。
ちなみに、chkdskで症状が悪化したと勘違いされる方もいらっしゃいます。これはchkdskでも100%直せないようなファイルシステムのエラーがあるためです。たとえば、50%あったエラーがchkdskで20%まで改善したとします。専門知識のない方からみれば改善しているその違いがわからないのと、まだエラーが20%残っている関係で症状が変わってしまうため、悪化しているように感じるというものです。
「c:¥」は上記 コマンドプロンプトを使う前の準備編(Windowsが起動しない限定) でメモしたドライブレターになります。もし「d:¥」でしたら「chkdsk d:¥ /f
」です。
それとこれはよくある間違いですが「/f」は必ずf指定です。ドライブレターと一緒にする勘違いが多いのですが、たとえば「chkdsk c:¥ /c
」は間違いです。必ず「/f」です。
Windowsクルクルと自動修復を準備していますクルクルが終わらないトラブルを直した事例研究
こちらの記事は実際に「chkdsk c:¥ /f
」でWindows起動トラブルを直した事例です。ファイルシステムのエラーが原因で、Windowsが起動できないトラブルが起きていました。ファイルシステムのエラーは、クルクルが終わらないという症状限定ではありません。ブルースクリーンなどのWindows起動トラブル全般が対象になったりします。
bootrec /rebuildbcd
「bootrec /rebuildbcd
」は、上記 Windowsが起動しないコマンドプロンプトのヤバイ使い方 で話題の中心にありました。bcdというファイルをrebuild(作り直す)コマンドです。
ちなみに、bcdはWindows Boot Managerがらみの設定ファイルでして、パソコンの電源を入れると、まずはパソコンがWindows Boot Managerを読み込んでWindowsがロードされます。bcdは、パソコンがWindows Boot Managerを読み込むという初動の部分で必要であり重要な設定ファイルです。
「bootrec /rebuildbcd
」は、bcdがないときに新規作成するだけのコマンドで、bcdがある場合は現状維持で余計な編集をしないため、コマンドの意味を知らなくても、とりあえず試してみようがOKなコマンドです。悪化はしません。
ただbcdのエラーは直してくれません。bcdがない原因のトラブル限定のため、このコマンドだけでWindows起動トラブルが修復できるのはかなり稀な頻度です。
ren
「ren
」は、ファイルをリネームするコマンドです。たとえば、〇〇.sysみたいなファイルを〇〇.bkにリネームしたりします。リネームすると無効になるため、削除と一緒の状態になります。もしリネームが不要な作業だった場合は、元のファイル名にリネームして復活です。元の状態に戻せるコマンドのため、悪化はしません。
お客様よりお伺いしたコマンドプロンプトの話としまして、昔はレジストリの書き換えでお聞きすることがありましたが、最近ではbcdの書き換えでよく聞きます。コマンドの用途として、事前のバックアップだけで使われがちですが、意外と使えるコマンドです。
古いドライバーのエラーでブルースクリーンにファイル名が表示されていることがありますが、そのファイル名をリネームして無効にするだけで、Windows起動トラブルを修復できるエラーもあります。「bootrec /rebuildbcd
」より「ren
」で修復できるWindows起動トラブルのほうが多いです。
問題が発生したため、PCを再起動する必要があります”ブルースクリーン”起動トラブルの事例研究
こちらの記事はエラーの起きているドライバーを「ren
」で無効にして、Windows起動トラブルを直した事例です。ドライバーのエラーで使う機会が多いかと思います。
rmdir
「rmdir
」は、フォルダを削除するコマンドです。たとえば、このPCを初期状態に戻すは、Windowsがインストールされているドライブに10%の空きがないと実行すらできません。そのような場合に、不要なフォルダを「rmdir
」で削除したりします。
代表的なのはゴミ箱($Recycle.Bin)、downloads、Apple(iPhoneのバックアップ)です。あとは「rmdir
」ではありませんが、dismコマンドの「/cleanup-image」でwinsxsフォルダを圧縮して空き容量を増やす方法もあります。
256GB未満のSSD搭載パソコンは意外と多く、容量がいっぱいになり、Windows Updateが失敗しているようなケースも珍しくありません。「rmdir
」も意外と役に立つコマンドだと思います。
注意点としましては、削除するコマンドですので間違えたらアウトです。削除したものを復活させるコマンドはありません。片道切符です。そのフォルダを削除しても良いのかどうか検討した上で実行してください。
dism /online /~
「dism /online /~
」はエラーの起きているWindowsのプログラムを調査したり直すコマンドです。Windows Updateの情報を確認したり、手動で削除することもできます。このdismコマンドは多くのオプションが提供されていて「dism /online /~
」の「/~」はいろいろなオプションがあるという意味です。
そしてdismはスペルミスのような間違いが多いのですが、実は「/online」は、Windowsが起動する状態だけでしか使えません。Windowsが起動しない状態では効果がありません。Windowsが起動しない場合は「/online」ではなく、代わりに「/image:ドライブレター」になります。上記コマンドプロンプトを使う前の準備編(Windowsが起動しない限定)でドライブレターをメモしました。仮にドライブレターがc:¥だったとします。その場合は「/online」を「/image:c:¥」に変えてください。Windowsが起動しない状態では「dism /image:c:¥ /~
」これが正解です。
自動修復を準備していますループでWindowsが起動しないトラブルを直した事例研究
こちらの記事は「dism /image:c:\ /get-packages
」とシステムの復元の復元ポイントから、Windows起動トラブルの原因を特定し直した事例です。この「/get-packages」は、Windows Updateの履歴を確認できます。
Windows UpdateはWindowsのプログラムを書き換えますから、昔からトラブルが起きやすいのが実際のところです。そんなWindows Updateのトラブルをdismコマンドはメンテナンスできますのでかなり重要なコマンドです。
Windowsが起動しないクルクルがループするトラブルの事例研究
こちらの記事はWindows Updateのエラーを「dism /image:c:\ /remove-package /packagename:〇〇〇
」で削除しようとしました。この「/remove-package」は、Windows Updateを削除できます。
ちなみに、こちらのコマンドでは削除できませんでした。切り分けながら、パソコン部品の設定エラーが原因で削除などのメンテナンスができないことがわかり、設定エラーを解消して無事Windowsが起動するようになりました。
ただ「chkdsk c:¥ /f
」と「bootrec /rebuildbcd
」はそのまま入力すれば良いだけですが、dismコマンドはケースバイケースで使い方が変わります。難易度が高いですから、dismコマンドはネットに書いてあることを試す前に、なぜそのコマンドを使うのか?自分の起きているトラブルでも作業する必要があるのかを深くお調べいただいたほうがベストかと思います。
sfc /scannow
「sfc /scannow
」もエラーの起きているWindowsのプログラムを調査して直してくれるコマンドです。ただWindows7のときからこのコマンドで、Windowsの起動トラブルが改善した事例を見たことがありません。経験上、効果は期待できないと思います。このコマンドで悪化することはないため試すのはありです。
ちなみに、Windows10で作成した回復ドライブ収録のコマンドプロンプトで「sfc /scannow
」を行っても、「Windowsリソース保護は要求された操作を実行できませんでした。」のメッセージしか表示されないため、正常に動作しているのか疑問です。Windows11で作成した回復ドライブ収録のコマンドプロンプトでしたら、「破損したファイルが見つかりましたが、それらは正常に修復されました。」などのメッセージが表示されるため、信頼性という意味でWindows11で作成した回復ドライブのコマンドプロンプトを使うのが良いかと思います。
注意点としましては「破損したファイルが見つかりましたが、それらは正常に修復されました。」というメッセージが表示されたときは、もう一度「sfc /scannow
」をお試しください。また再び「破損したファイルが見つかりましたが、それらは正常に修復されました。」というメッセージが表示されるかと思います。毎回「修復されました」表示は、正常に修復できていないという解釈になります。Windowsのエラーを見つけられないか、見つけても直せないという、そんなコマンドなのが実情です。
bootrec /fixmbr
パソコンの電源を入れると、まずはパソコンがWindows Boot Managerを読み込んでWindowsがロードされます。bootrecは、パソコンがWindows Boot Managerを読み込む処理をメンテナンスするコマンドです。
上記コマンドプロンプトを使う前の準備編(Windowsが起動しない限定)で、BIOSなのかUEFIなのか(パーティションがMBRなのかGPTなのか)をメモしましたが、UEFI(GPT)では仕組みが違うため効果がありません。/fix「mbr」のとおり、パーティションがMBRでしたら使えます。
ちなみに、Windows XPまでは、パソコンの電源を入れるとWindows Boot Managerではなく、ダイレクトにWindows XP(NTLDRがらみ)にバトンタッチしていました。XP時代までは、Missing operating systemやError loading operating systemといったエラーメッセージのときに「fixmbr」と「fixboot」は効果があったのですが、Windows7からは、同じMissing operating systemやError loading operating systemといったエラーメッセージでも「bootrec /fixmbr
」でWindows起動トラブルが修復したのを見たことがありません。
Windows7のときは、Windows Boot Managerのパーティションが非activeになるトラブルが珍しくなく、diskpartコマンドでactiveにして修復できるケースならありました。「bootrec /rebuildbcd
」コマンドも稀ですがあります。「bootrec /fixmbr
」でWindows起動トラブルが修復したのを見たことがありませんが、このコマンドで悪化することはありませんので試すのはありです。
bootrec /fixboot
上記の「bootrec /fixmbr
」と「bootrec /fixboot
」はワンセットのため、本来は別々に分けて紹介する必要がありません。ただ「bootrec /fixboot
」のほうは、アクセスが拒否されました。というメッセージが表示され、アクセスが拒否されない方法はありますか?というお問い合わせもあります。
実は、どのような状況でも、アクセスが拒否されました。しか表示されません。そもそも、Windows7から今まで「bootrec /fixmbr
」と「bootrec /fixboot
」でWindows起動トラブルが修復したのを見たことがありません。もし操作は正常に終了しましたメッセージが表示されたとしても効果は期待できません。
ちなみに、「bootrec /fixmbr
」と「bootrec /fixboot
」を実行して、悪化することはありませんので試すのはありです。
rstrui
「rstrui
」はシステムの復元を実行するコマンドです。コマンドプロンプトから起動しても、詳細オプション画面のシステムの復元メニューから起動しても同じです。
ちなみに、コマンドプロンプトからrstruiで起動するシステムの復元は別物と思われているお話を聞くことがあります。その違いはなく、詳細オプション画面のシステムの復元メニューから起動しても結果は同じです。