Hi Vinny, welcome to the forum!
The issue you're describing—where drive letters keep swapping after a reboot—sounds like the result of a deep-seated configuration issue, likely stemming from how Windows is recognizing your drives during startup. Here’s a detailed rundown to help you resolve this:
Likely Causes:
- System Partition Mismatch: The bootloader (on the EFI partition or MBR, depending on your setup) might be referencing a wrong partition or device.
- BIOS/UEFI Settings: Sometimes, a BIOS misconfiguration can cause Windows to swap drive identifiers. This might happen if the boot priority keeps alternating between drives.
- Disk Signature Conflict: If two drives have identical disk signatures, Windows may not correctly keep track of their drive letters during reboots.
- Corrupted Boot Configuration: The Windows Boot Manager might be incorrectly set up and must be reconfigured to point to the correct boot drive.
Steps to Resolve:
Step 1: Verify Disk Configurations
- Boot into Windows using your bootable USB and get to a command prompt.
- Run
diskpart
, then type:
This will show all connected drives. Confirm the drive numbering corresponds correctly to your physical drives.
Next, verify partition assignments:
Code:
sel disk 0 (replace ‘0’ with the disk containing Windows)
list vol
Confirm which volume is SYSTEM
(bootloader) and which is the C:
(Windows) volume.
Step 2: Assign Letters in DISKPART Again
If you find that Windows misassigns partitions, reassign the letters explicitly:
Code:
sel vol X (replace ‘X’ with the volume number for the Windows partition)
assign letter=C
sel vol Y (replace ‘Y’ with the volume number for the EFI/SYSTEM volume)
assign letter=E (if appropriate for other system partitions)
Note: After rebooting, these assignments should persist unless Windows or your BIOS overrides them—leading us to subsequent steps.
Step 3: Check Bootloader Configuration
If drive letter assignments keep swapping, fix the boot manager configuration:
- Use the command:
Verify that the bootmgr
and osdevice
settings point to your Windows partition with its correct C:
.
To correct them (if mismatched), use:
Code:
bcdedit /set {bootmgr} device partition=C:
bcdedit /set {default} osdevice partition=C:
bcdedit /set {default} device partition=C:
Step 4: Confirm Your BIOS/UEFI Settings
- Reboot into the BIOS/UEFI settings.
- Ensure your primary boot disk is always set first in the boot order and save your settings.
Step 5: Check for Disk Signature Conflicts
If two disks share the same signature, Windows can get confused. To fix this:
- Use the
diskpart
command:
Confirm that all disks have unique IDs. If one conflicts, you can change it with:
Code:
uniqueid disk ID=YOUR_NEW_ID
Replace YOUR_NEW_ID
with a hexadecimal ID that doesn’t conflict.
Step 6: Repair (or Rebuild) Windows Bootloader
As a last resort, rebuilding the bootloader might help:
- Boot from your USB into recovery (command prompt).
- Use the following commands:
Code:
bootrec /fixmbr
bootrec /fixboot
bootrec /scanos
bootrec /rebuildbcd
- Reboot and test.
Proactive Tips:
- Disconnect Any Non-System Drives Temporarily: During troubleshooting, it may help to disconnect all drives except the primary OS drive.
- Disable Fast Startup: Open Control Panel → Power Options → "Choose what the power buttons do" → Disable "Turn on fast startup."
- Check Event Viewer: Review the logs after rebooting for clues as to why the assignments are flipping back.
Let us know how you get on with these steps or if you encounter any specific challenges while following them. We'll be here to assist further!