MS_SafeMode - NetDevInfraWGinOSSConsortium/NetDevInfraWiki GitHub Wiki

セーフモードで起動

概要

使用するファイルとドライバを制限して基本的な状態で Windows が起動。

詳細

セーフ モードで問題が発生する場合

セーフ モードで Windows を観察すると、問題の原因を絞り込むことができる。

セーフ モードで問題が発生しない場合

  • 既定の設定と基本的なデバイス ドライバ以外の問題を意味する。

  • とは言え、

    • クリティカルな問題の多くは、基本的な状態のスコープ外の問題。
    • 故に、このようなケースで、セーフモードは、あまり役に立たない。

補足(著者の評価は妥当): 「あまり役に立たない」という結論は
やや辛口だが、切り分けの道具としての性格を正しく捉えている。
セーフ モードは二分探索の 1 手目であって、

  • 問題が再現する → OS の中核か、ハードウェアの問題。範囲は絞れる。
  • 問題が再現しない → 「OS 中核以外のどこか」としか分からない。
    ドライバ、常駐ソフト、サービス、スタートアップのいずれか。

つまり、再現しなかった場合に得られる情報が少ない
著者の言う「クリティカルな問題の多くはスコープ外」とはこのことで、
業務アプリの不具合やサーバのミドルウェア障害には、まず効かない。

補足(セーフ モードより有効な切り分け手段): 「再現しなかった」場合に
次に取るべき手は、もっと細かい粒度で無効化していくことになる。

  • クリーン ブートmsconfig
    Microsoft 以外のサービスとスタートアップを止めて起動する。
    セーフ モードより実環境に近く、半分ずつ有効化して原因を二分探索できる
    常駐ソフトが原因のケースはこれで特定できる。
  • [前回正常起動時の構成]/システムの復元
    直前の変更が原因と分かっている場合。
  • イベント ログダンプの解析
    起動できる状態なら、こちらの方が原因に直接届く。
  • ドライバ検証ツール(verifier.exe
    ドライバが疑わしい場合。ブルー スクリーンを意図的に起こして
    原因ドライバを特定する。

実務では、セーフ モードは「起動すらしない」ときの入口として使い、
起動できるなら上記の手段に移るのが効率的である。

補足(現在の起動方法): Windows 8 以降、起動が高速化されたため
[F8]キーによるセーフ モードの選択は既定で無効になっている。
現在は次のいずれかで入る。

  • [設定]→[回復]→[PC の起動をカスタマイズする]
    → [トラブルシューティング]→[詳細オプション]→[スタートアップ設定]
  • [Shift]を押しながら[再起動]
  • msconfig の[ブート]タブで[セーフ ブート]を指定して再起動
    (※ 戻すときも msconfig で解除する必要がある点に注意)
  • 起動に 3 回連続で失敗すると、自動的に回復環境(WinRE)に入る

なお、bcdedit /set {default} bootmenupolicy legacy
[F8]を復活させることもできる。

参考

本 Wiki 内

移行メモ: 元ページの冒頭のフッタ表記は、他ページの
「「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,
「OSSコンソーシアム .NET開発基盤部会」によって運営されています。」ではなく、
「Open棟梁Project - マイクロソフト系技術情報 Wiki」という旧い形式だった。
移行時は他ページと同様に当該行を除去している。


Tags: インフラストラクチャ, Windows

⚠️ **GitHub.com Fallback** ⚠️