Windows OS Hub
  • Windows
    • Windows 11
    • Windows Server 2022
    • Windows 10
    • Windows Server 2019
    • Windows Server 2016
  • Microsoft
    • Active Directory (AD DS)
    • Group Policies (GPOs)
    • Exchange Server
    • Azure and Microsoft 365
    • Microsoft Office
  • Virtualization
    • VMware
    • Hyper-V
  • PowerShell
  • Linux
  • Home
  • About

Windows OS Hub

  • Windows
    • Windows 11
    • Windows Server 2022
    • Windows 10
    • Windows Server 2019
    • Windows Server 2016
  • Microsoft
    • Active Directory (AD DS)
    • Group Policies (GPOs)
    • Exchange Server
    • Azure and Microsoft 365
    • Microsoft Office
  • Virtualization
    • VMware
    • Hyper-V
  • PowerShell
  • Linux

 Windows OS Hub / Windows 11 / Load Drivers from WinPE or Recovery CMD

April 8, 2025 Windows 10Windows 11

Load Drivers from WinPE or Recovery CMD

In some cases, to make the Windows installer or Windows recovery environment (WinRE) see the computer’s local disks, you must load additional disk controller drivers. This often occurs on computers with NVMe SSD controllers. In my example, after migrating a virtual machine from VMware ESXi to Proxmox, it turned out that the guest Windows OS was missing the VirtIO drivers that should provide access to the virtual hard disk controller.

As a result, the 0x0000007B (INACESSIBLE_BOOT_DEVICE) error occurred when booting the Windows guest in a virtual machine.

0x0000007B (INACESSIBLE_BOOT_DEVICE) in VM after P2V migration

In this article, we’ll look at how to load the disk controller drivers in WinPE or Windows Recovery Environment. Once you see the local hard disk, you can add the controller drivers to the offline Windows image on that disk.

In general, before performing a P2V or V2V migration, it’s essential to inject the necessary drivers supporting the new virtual hardware into the Windows image to avoid such issues. For example, this can be done by installing the VirtIO drivers in the guest Windows before starting the VM migration to Proxmox.

Download the necessary drivers that support the required hard drive controller. In the case of Proxmox, download the ISO image with the VirtIO drivers for Windows. If you are working with a physical computer, mount the ISO image on another computer and copy the driver folders to an external USB flash drive.

Boot the computer into the recovery environment (WinRE or WinPE) using a recovery disk or Windows installation media.  Open a command prompt. Run the diskpart command to ensure that WinPE doesn’t see local drives.

diskpart

DISKPART> list disk

There are no fixed disks to show.

DISKPART: There are no fixed disks to show

Mount the previously prepared driver media (USB flash drive or ISO image).

If you are using a Ventoy multiboot USB drive, you can use the injection plugin to mount the necessary drivers to the WinPE environment:

{
 "injection": [
  {
   "parent": "/ISO/win2k22.iso",
   "archive": "/drivers/virtio-win-drivers.zip"
  }
 ]
}

Run the following command to find out the drive letter assigned to the connected media:

wmic logicaldisk get caption, volumename

wmic logicaldisk get caption, volumename - check drive letters in WinPE

In my example, this is an image with VirtIO drivers for Windows, which is assigned the drive letter D:. Use the drvload.exe command to load a driver in the WinPE environment. I want to load the VirtIO SCSI driver for Windows Server 2025. Specify the full path to the driver INF file on the media:

drvload d:\vioscsi\2k25\amd64\vioscsi.inf

DrvLoad: Successfully loaded d:\vioscsi\2k25\amd64\vioscsi.inf

drvload INF file

When loading a driver, an error may occur:

DrvLoad: Unable to load D:\...\xxxxx.inf (Error 0x80070002)

Make sure you are loading a compatible driver if this happens. Also, check for other files in the driver directory besides *.INF (there must be at least *.CAT and *.SYS files).

list driver directory

Make sure that the SCSI adapter VirtIO driver is successfully loaded into the WinPE environment memory:

pnputil /enum-drivers

pnputil /enum-drivers - list loaded drivers in WinPE

Use diskpart to verify that the local disks are now visible and accessible.

Now, you can integrate the disk drivers into the offline Windows image (in this example, it is stored on the C: drive). You can add only one driver:

DISM /Image:C:\ /Add-Driver /driver:D:\vioscsi\2k25\amd64\vioscsi.inf

Or recursively install all drivers from the specified folder: :

DISM /Image:C:\ /Add-Driver /driver:D:\ /recurse

To reboot a computer from the WinPE environment, run

wpeutil reboot

The guest Windows should now boot normally, and you should see the Red Hat VirtIO SCSI disk device in the Device Manager.

Red Hat VirtIO SCSI disk device

0 comment
2
Facebook Twitter Google + Pinterest
previous post
How to Block Common (Weak) Passwords in Active Directory
next post
How to Prefer IPv4 over IPv6 in Windows Networks

Related Reading

How to Cancel Windows Update Pending Restart Loop

May 6, 2025

View Windows Update History with PowerShell (CMD)

April 30, 2025

Change BIOS from Legacy to UEFI without Reinstalling...

April 21, 2025

Remove ‘Your License isn’t Genuine’ Banner in MS...

April 21, 2025

Uninstalling Windows Updates via CMD/PowerShell

April 18, 2025

Leave a Comment Cancel Reply

join us telegram channel https://t.me/woshub
Join WindowsHub Telegram channel to get the latest updates!

Categories

  • Active Directory
  • Group Policies
  • Exchange Server
  • Microsoft 365
  • Azure
  • Windows 11
  • Windows 10
  • Windows Server 2022
  • Windows Server 2019
  • Windows Server 2016
  • PowerShell
  • VMware
  • Hyper-V
  • Linux
  • MS Office

Recent Posts

  • Cannot Install Network Adapter Drivers on Windows Server

    April 29, 2025
  • Change BIOS from Legacy to UEFI without Reinstalling Windows

    April 21, 2025
  • How to Prefer IPv4 over IPv6 in Windows Networks

    April 9, 2025
  • Load Drivers from WinPE or Recovery CMD

    March 26, 2025
  • How to Block Common (Weak) Passwords in Active Directory

    March 25, 2025
  • Fix: The referenced assembly could not be found error (0x80073701) on Windows

    March 17, 2025
  • Exclude a Specific User or Computer from Group Policy

    March 12, 2025
  • AD Domain Join: Computer Account Re-use Blocked

    March 11, 2025
  • How to Write Logs to the Windows Event Viewer from PowerShell/CMD

    March 3, 2025
  • How to Hide (Block) a Specific Windows Update

    February 25, 2025

Follow us

  • Facebook
  • Twitter
  • Telegram
Popular Posts
  • Upgrading to Windows 11 on Unsupported Hardware
  • Create a Custom Windows Image with Pre-installed Apps
  • How to Assign (Passthrough) a Physical GPU to a Hyper-V Virtual Machine
  • Fix: Windows Update Tab (Button) is Missing from Settings
  • How to Copy/Paste to MS Word without Losing Formatting
  • Fix: Your IT Administrator Has Limited Access to Virus & Threat Protection
  • Configuring RemoteApps Hosted on Windows 10/11 (without Windows Server)
Footer Logo

@2014 - 2024 - Windows OS Hub. All about operating systems for sysadmins


Back To Top