Published 2026-03-12 by TechNet New England
After a Windows update installed overnight, a Hyper-V Generation 1 VM running Windows Server 2019 failed to boot with error 0xc0000001 and INACCESSIBLE_BOOT_DEVICE. Here's the complete troubleshooting process and the fix that finally worked.
Environment
- Platform: Hyper-V Generation 1 (Legacy BIOS)
- OS: Windows Server 2019 (Build 17763)
- Disk layout: C: System Reserved (549 MB), D: Windows OS partition
- Trigger: Automatic Windows Update overnight
What We Tried (All Failed)
1. Bootloader Repair
bootrec /fixmbr
bootrec /fixboot
bootrec /rebuildbcd
bcdboot D:\Windows /s C: /f BIOS
Result: Bootloader rebuilt successfully, but system still failed to start.
2. System File Checker
sfc /scannow /offbootdir=C:\ /offwindir=D:\Windows
Result: Found corrupt files but couldn't fix them due to pending update state.
3. DISM Repair with ISO Source
DISM /Image:D:\ /Cleanup-Image /RestoreHealth /Source:wim:E:\sources\install.wim:2 /ScratchDir:D:\Scratch /LimitAccess
Result: Completed but didn't resolve boot issue.
4. Pending Update Rollback
DISM /Image:D:\ /Cleanup-Image /RevertPendingActions
del D:\Windows\WinSxS\pending.xml
Result: Cleared pending state but system still failed.
5. Registry Backup Restore (RegBack)
cd /d D:\Windows\System32\config
mkdir backup
copy *.* backup
copy RegBack\*.* .
Result: Restored but no change in boot behavior.
The Actual Fix: Registry Control Sets
Windows maintains multiple "control sets" in the SYSTEM registry hive as fallback configurations:
- ControlSet001 - Usually the current/default boot configuration
- ControlSet002 - Usually the "Last Known Good" configuration
- The Select key determines which control set to use at boot
Step 1: Load the Offline Registry
Boot from Windows Server ISO → Repair your computer → Command Prompt:
reg load HKLM\OFFLINE D:\Windows\System32\Config\SYSTEM
Step 2: Check Which Control Set Is Active
reg query HKLM\OFFLINE\Select
Output showed:
Current REG_DWORD 0x1
Default REG_DWORD 0x1
LastKnownGood REG_DWORD 0x2
Windows was trying to boot from ControlSet001 (corrupted by the update), while a working configuration existed in ControlSet002.
Step 3: Switch to Last Known Good
reg add HKLM\OFFLINE\Select /v Default /t REG_DWORD /d 2 /f
Step 4: Unload and Rebuild
reg unload HKLM\OFFLINE
bcdboot D:\Windows /s C: /f BIOS
Step 5: Reboot
Remove the ISO and restart. The VM booted successfully.
Why This Happened
The Windows update modified or corrupted services within ControlSet001, likely affecting boot-critical storage drivers. Because Windows always loads the control set referenced in the Default value, the system attempted to boot with a broken configuration.
The working configuration remained intact in ControlSet002 (LastKnownGood). Switching the default control set restored the last working driver and service configuration.
Why Standard Repairs Didn't Work
Tools like bootrec, sfc, and DISM repair the bootloader and system files, but they don't check whether the active control set is corrupted. The registry hives load before most repair tools run, so if the SYSTEM hive points to a broken control set, Windows fails before repairs can help.
Key Commands Summary
# Load offline registry
reg load HKLM\OFFLINE D:\Windows\System32\Config\SYSTEM
# Check current control set
reg query HKLM\OFFLINE\Select
# Switch to LastKnownGood (ControlSet002)
reg add HKLM\OFFLINE\Select /v Default /t REG_DWORD /d 2 /f
# Unload and rebuild boot
reg unload HKLM\OFFLINE
bcdboot D:\Windows /s C: /f BIOS
Prevention Tips
- Snapshot VMs before updates - A checkpoint before patching makes recovery trivial
- Avoid automatic reboots - Schedule update reboots during maintenance windows
- Monitor cumulative updates - Server 2019 has a history of problematic updates
- Test updates in staging - Especially for critical production servers
When to Call for Help
Registry editing in a recovery environment requires precision. If you're not comfortable with these steps, or if the server contains critical business data, a qualified IT professional can diagnose and repair the system without risking further damage.
Reference: Microsoft Learn - Windows Boot Failure Troubleshooting