Windows 11 へのアップグレードを実行したところ、「SECOND_BOOT フェーズで失敗しました」「0xC1900101 – 0x40021」「0xC1900101 – 0x4000D」といったエラーでロールバックしてしまうケースが増えています。この記事では、実際に再起動+再実行で解消した事例をベースに、なぜ SECOND_BOOT で失敗しやすいのか、どのように対処・再発防止を行えばよいかを、コマンド例やチェックリストを交えながら詳しく解説します。
Windows 11 アップグレードが SECOND_BOOT で失敗する症状
まずは、今回の事象の全体像を整理します。Windows 10 から Windows 11 へのアップグレード途中で、下記のようなエラーを伴いロールバックするパターンです。
| エラーコード | フェーズ | 操作 | 概要 |
|---|---|---|---|
0xC1900101 - 0x40021 | SECOND_BOOT | SYSPREP_RESPECIALIZE | 新しい OS イメージに対してハードウェアやサービス構成を適用する工程で失敗 |
0xC1900101 - 0x4000D | SECOND_BOOT | MIGRATE_DATA | ユーザーデータや設定を新しい環境へ移行する工程で失敗 |
0xC1900101 (共通) | 複数フェーズ | – | 典型的にはドライバー/サービス起因のロールバックコード |
いずれのパターンも共通して、インストールがかなり進んだ段階で再起動が入り、最終的に「以前のバージョンの Windows を復元しています」と表示されてアップグレードが取り消されます。
SECOND_BOOT フェーズとは?なぜここでコケるのか
Windows 10 / 11 のアップグレードは、大きくいくつかのフェーズに分かれています。その中の一つが SECOND_BOOT です。
| フェーズ名 | おおよその内容 |
|---|---|
| DOWNLEVEL | 既存 OS 上でセットアップを開始。ファイルのコピーや互換性チェックなどを実施。 |
| SAFE_OS | 最低限のドライバー構成でのセットアップ実行。ブートローダーや基本コンポーネントを更新。 |
| FIRST_BOOT | 新 OS での初回起動。基本的な構成を適用。 |
| SECOND_BOOT | 本格的にドライバーやサービスを適用し、ユーザーデータを移行する山場の工程。 |
SECOND_BOOT では、具体的に次のような処理が走ります。
- SYSPREP RESPECIALIZE:ハードウェア構成に合わせたドライバーの適用やサービス構成の再構築
- MIGRATE_DATA:ユーザープロファイルやアプリ設定、データの移行
このタイミングで古いドライバーや不安定な常駐サービスが存在すると、
- カーネルモードドライバーのクラッシュ
- サービスの応答停止や異常終了
- セーフモードや一部サービス停止状態のままアップグレードを走らせていることによる整合性不良
などが原因となり、0xC1900101 系のロールバックコードが返されやすくなります。
まず試すべき「最小の有効策」:再起動してからセットアップをやり直す
今回の事例でも、最終的にもっともシンプルな対処で解決しました。それが次の手順です。
- Windows を一度通常通り再起動する。
- 再起動直後に、もう一度 Windows 11 セットアップを実行する(更新アシスタント、インストールメディア、いずれでも可)。
- もし前回の作業時に
・セーフモード起動
・クリーンブート(msconfig からサービスを無効化)
などを行っていた場合は、アップグレード完了後に必ず msconfig を開き「通常スタートアップ」に戻す。
たったこれだけで通るケースが意外と多く、SECOND_BOOT の直前または途中で半端な状態になっていたドライバーやサービスが、再起動によって綺麗にロードし直されることが理由と考えられます。
とはいえ、再起動+再実行だけで解決しない場合や、別の PC でも同じエラーが出る場合は、根本的な原因に踏み込んでおく方が安全です。次の章からは、再発防止も兼ねた実践的な手順を解説します。
0xC1900101 系エラーのよくある原因パターン
0xC1900101 はドライバーやサービスがらみで発生することが多く、特に Windows 11 へのアップグレードでは以下のような要因がよく見られます。
| 原因カテゴリ | 具体例 | SECOND_BOOT への影響 |
|---|---|---|
| 古いデバイスドライバー | 古い LAN / Wi-Fi ドライバー、ストレージコントローラ、チップセットドライバーなど | 新しいカーネルやドライバーモデルと噛み合わず、RESPECIALIZE 中にクラッシュ |
| 常駐型セキュリティソフト | Norton、McAfee、ESET などのサードパーティ製ウイルス対策ソフト、ファイアウォールソフト | ファイル/レジストリエントリの監視がセットアップと競合し、MIGRATE_DATA 中にエラー |
| バックアップ/チューニング系ツール | ディスクイメージング、SSD 最適化、システムクリーンアップツール等 | フィルタードライバーやサービスがセットアップ中の I/O と競合 |
| セーフモードや一部サービス停止状態 | msconfig でサービスを停止したまま、またはセーフモードのままアップグレードを実行 | 必要なサービスが存在せず、SECOND_BOOT で構成の適用に失敗 |
| 周辺機器 | USB オーディオ、古いプリンタ、TV チューナー、特殊なゲームデバイスなど | 対応していないドライバーが読み込まれ、カーネルエラーの引き金になる |
これらを踏まえ、できるだけシンプルな構成でアップグレードを実行することが成功の近道になります。
確実に通すための実践手順(再発防止込みのフルコース)
前提条件の整備:バックアップとストレージ空き容量
まずは、どの PC でも共通の前提条件を整えます。
- 重要データのバックアップ
・ユーザーフォルダー(ドキュメント、ピクチャ、デスクトップ など)を外付け HDD やクラウドにコピー
・業務 PC の場合は、社内ルールに沿ってバックアップを取得 - C ドライブの空き容量確保
Windows 11 のインプレースアップグレードでは、最低でも 20 GB 程度は欲しいところです。目安として 30 GB 以上の空き容量を確保しておくと安心です。 - 不要な外付け機器は外す
USB ストレージ、外付けドライブ、TV チューナー、ゲームパッドなど、アップグレードに不要なものは一旦すべて取り外しておきます。
常駐ソフトの見直し:セキュリティソフトは一度アンインストール
SECOND_BOOT での失敗要因として多いのが、「しぶとく常駐し続ける」サードパーティ製セキュリティソフトです。
- ウイルス対策ソフト(Norton、McAfee、ESET、Kaspersky など)
- サードパーティ製ファイアウォール
- 常駐型の保護・監視ツール(レジストリ監視、挙動監視など)
これらは単に「無効化」するだけではドライバーが残ることが多く、アップグレードエラーの原因になり得ます。可能であれば、アップグレード前にアンインストールし、完了後に最新バージョンを入れ直す方が安全です。
クリーンブートでアップグレードを実行する
次に、Windows をセーフモードではなく、クリーンブートで起動してからアップグレードを行います。
msconfig での設定手順
Win + Rキーで「ファイル名を指定して実行」を開き、msconfigと入力して Enter。- [サービス] タブを開く。
- [Microsoft のサービスをすべて隠す] にチェックを入れる。
- [すべて無効] をクリックして、Microsoft 以外のサービスを一括で無効化。
- [スタートアップ] タブを開き、「タスク マネージャーを開く」をクリック。
- タスクマネージャーの [スタートアップ] タブで、不要な項目をすべて [無効] にする。
- PC を再起動。
再起動後は、最小限のドライバーとサービスだけが起動した状態になります。この状態で Windows 11 セットアップを実行することで、常駐ソフトがアップグレードプロセスに干渉するリスクを大きく減らせます。
アップグレード完了後は、必ず msconfig を開き、「通常スタートアップ」に戻すことを忘れないでください。戻し忘れると、「サービスがほとんど起動しない謎の軽い Windows」が出来上がってしまいます。
ドライバーの健全化:メモリ整合性と不要ドライバーの整理
ドライバーまわりの健全性をチェックするには、Windows セキュリティの「コア分離(メモリ整合性)」機能を活用するのが有効です。
メモリ整合性(コア分離)で互換性のないドライバーを洗い出す
- [スタート] メニューから「Windows セキュリティ」を開く。
- [デバイス セキュリティ] を選択。
- [コア分離の詳細] をクリック。
- [メモリ整合性] をオンにする。
もし互換性のないドライバーが存在する場合、ここで特定のドライバー名が表示されて有効化できないことがあります。その場合、そのドライバーは Windows 11 環境でも問題を起こす可能性が高いので、最新版への更新・不要なデバイスの削除・ドライバーの削除などを検討してください。
コマンドで不要・古いドライバーパッケージを整理する
次に、古いドライバーの一覧を採取し、未使用のドライバーを整理します。以下は管理者権限のコマンド プロンプトで実行してください。
rem ドライバー一覧を取得(テキストファイルに出力)
dism /online /get-drivers /format:table > C:\drivers.txt
rem 現在のドライバーパッケージをバックアップ
md C:\Drivers
pnputil /export-driver * C:\Drivers
rem 未使用・古いドライバーパッケージをクリーンアップ
rundll32.exe C:\Windows\System32\pnpclean.dll,RunDLL_PnpClean /DRIVERS /MAXCLEAN
dism /get-drivers:インストール済みドライバーの一覧を取得。pnputil /export-driver:現在使用中のドライバーをバックアップ。pnpclean.dll:使われていない古いドライバーを削除し、ドライバーストアを整理。
ドライバーがごちゃごちゃしている環境では、この操作だけでアップグレードが通るようになるケースも少なくありません。
システムファイルの整合性チェック(SFC / DISM)
OS 側のシステムファイルが破損していると、SECOND_BOOT での構成変更やデータ移行処理に失敗することがあります。以下のチェックも、できれば実行しておきたいところです。
rem システムファイルチェッカー
sfc /scannow
rem コンポーネントストアの修復
DISM /online /cleanup-image /restorehealth
いずれも完了まで時間がかかる場合がありますが、途中で中断せず完走させることが重要です。完了後は PC を再起動し、その後に Windows 11 へのアップグレードを再実行します。
準備ができたら、改めてアップグレードを実行する
ここまでの準備が整ったら、改めて Windows 11 セットアップを実行します。
- PC を再起動(クリーンブート状態ならそのまま再起動で OK)。
- 再起動直後に、Windows 11 のセットアップ(インストールアシスタントまたは ISO からのセットアップ)を開始。
- セットアップ中は PC を操作せず、フタを閉じたりスリープに入れたりしないようにする。
無事にアップグレードが完了したら、
msconfigを開き、[通常スタートアップ] に戻す。- 必要な常駐ソフトを再インストール、または有効化する(特にセキュリティソフト)。
- 周辺機器を再接続し、公式サイトから Windows 11 対応ドライバーを入れ直す。
これで、SECOND_BOOT での失敗はかなりの確率で回避できます。
それでも失敗する場合:ログから原因を特定する
対策を一通り行ってもなお SECOND_BOOT で失敗する場合は、ログ解析によって問題のドライバーやサービスを特定していきます。
Rollback フォルダーのセットアップログを確認する
アップグレードに失敗した PC には、次のフォルダーが作成されています。
C:\$WINDOWS.~BT\Sources\Rollback\
この中にある以下のログファイルが重要です。
setuperr.log:エラー情報が重点的に記録されるログsetupact.log:セットアップ全体の動作ログ
ファイルサイズが大きい場合は、メモ帳ではなく「メモ帳以外のテキストエディタ」やログビューアを使うと読みやすくなります。特に、SECOND_BOOT 直前やエラーコードが出ている付近に、
- 特定のドライバー(
.sysファイル名) - 特定のサービス名
- 特定のプロセス名
が繰り返し登場していないかを探します。それが問題の原因になっている可能性が高いです。
サードパーティツールでの詳細解析(FRST など)
環境によっては、Farbar Recovery Scan Tool(FRST)などの診断ツールで詳細ログを採取し、専門家に見てもらうというアプローチもあります。社内の情報システム部門や、信頼できるサポート窓口がある場合は、
C:\$WINDOWS.~BT\Sources\Rollback\のログ- FRST などの診断結果
をセットで共有することで、問題のドライバーやサービスをかなりの精度で絞り込めます。
ひと目でわかるチェックリスト
最後に、SECOND_BOOT での 0xC1900101 系エラーを回避するために、どこまで対応したかのチェックリストをまとめます。
| 項目 | 実施状況 | ポイント |
|---|---|---|
| PC を再起動し、セットアップをやり直した | □ / ■ | 最小の有効策。これだけで直るケースも多い。 |
| サードパーティ製ウイルス対策ソフトを一時的にアンインストールした | □ / ■ | 無効化ではなくアンインストールが理想。完了後に最新バージョンを再導入。 |
| クリーンブートでアップグレードを実行した | □ / ■ | セーフモードではなく、msconfig+タスクマネージャーでのクリーンブート。 |
| メモリ整合性(コア分離)を有効化して互換性のないドライバーを確認した | □ / ■ | 有効化できない場合は表示されたドライバーが要注意。 |
| ドライバー一覧の採取とクリーンアップ(pnputil / pnpclean)を実行した | □ / ■ | 古い不要ドライバーが多い環境ほど効果的。 |
| SFC / DISM によるシステム整合性チェックを行った | □ / ■ | OS 側の破損が疑われる場合は必須。 |
| 失敗時に Rollback フォルダーのログを採取した | □ / ■ | 継続的にトラブルが起きる場合の「最後の切り札」。 |
用語メモ(日本語寄りの意訳)
| 用語 | 意味 |
|---|---|
| SECOND_BOOT | アップグレードの第 2 段階。新しいドライバー・サービスを本格適用し、ユーザーデータを移行する重要フェーズ。 |
| SYSPREP RESPECIALIZE | ハードウェア構成やサービス構成を再適用する処理。PC ごとに最適化された状態に仕上げる工程。 |
| MIGRATE_DATA | ユーザーアカウントやプロファイル、設定、各種データを新しい OS 環境へ移行する処理。 |
| クリーンブート | Microsoft 製サービスと最低限のドライバーだけを起動し、サードパーティ製常駐をほぼ無効化した状態で Windows を起動する方法。 |
| メモリ整合性(コア分離) | 仮想化ベースのセキュリティ機能。互換性のないドライバーがあると有効化できないため、ドライバーの健全性チェックにも使える。 |
まとめ:SECOND_BOOT の山を越えるために
SECOND_BOOT フェーズで発生する 0xC1900101 - 0x40021 や 0xC1900101 - 0x4000D は、多くの場合ドライバーかサービスの整合性が取れていないことが原因です。今回紹介した事例では、
- 一度 PC を再起動し、
- 改めて Windows 11 セットアップを実行する
という最小の有効策だけで問題が解消しました。
しかし、同じエラーが何度も出る場合や、複数台の PC で再現する場合は、
- セキュリティソフトなどの常駐を一度外す
- クリーンブートでセットアップを実行する
- ドライバーの整理とシステム整合性チェックを行う
- 必要に応じて Rollback ログから原因ドライバー/サービスを特定する
といった手順を組み合わせることで、SECOND_BOOT の山を安定して越えられるようになります。
「何度やっても 0xC1900101 で戻される…」という状況でも、焦らずに環境をシンプルにしてから再チャレンジしてみてください。多くのケースでは、この記事で紹介した手順のどこかに突破口があるはずです。

コメント