Proxmox Virtio Drivers Windows

  1. Proxmox Windows 2003 Virtio Drivers
  2. Proxmox Virtio Drivers Windows 7
Active4 months ago

Usually using VirtIO drivers you can maximize performances, but this depends on the availability and status of guest VirtIO drivers for your guest OS and platform. Windows OS support While recent Linux kernels already have those drivers so any distribution, running in a kvm VM, should recognize virtio devices exposed by the kvm hypervisor, all current Windows OS need special drivers to use virtio devices. The best way to install and setup a windows 10 vm as a daily driver or a Gaming VM - Duration: 28:33. Spaceinvader One 88,751 views. @DanielB: The VirtIO driver can be loaded in the installation process with a separate driver disc. If Windows 10 is installed with the VirtIO driver, there is no problem. It's just that the existing instructions on the Internet to switch Windows from IDE to VirtIO do not work for Windows 10 KVM virtual machines. – Deltik Apr 3 '16 at 10:51. Oct 18, 2017  In the screenshot above, Windows is installing the VirtIO Balloon Driver. This is a driver that allows Windows to report the correct amount of RAM being used to Proxmox; without it, the percentage of VM RAM being used as shown in the Proxmox dashboard’s machine summary can be. For the VirtIO drivers, upload the driver ISO (use the stable VirtIO ISO, get it from here) to your storage, create a new CDROM drive (use 'Add - CD/DVD drive' in the hardware tab), and load the Virtio Drivers ISO in the new virtual CDROM drive. Now your ready to start the VM, just follow the Windows installer.

I have installed a Windows 10 virtual machine using an IDE disk and would now like to change the disk to use the Virtio driver.

For other versions of Windows, the approach in this question seems to be sufficient - How to migrate an IDE VM to a virtio VM?

However with Windows 10, this leads to an INACCESSIBLE_BOOT_DEVICE issue.

I am aware that the preferred approach is the use the Virtio device from the start and install the appropriate virtio driver when prompted. Unfortunately I was having some separate issues with changing the CD in KVM (I couldn't get 2 CDROM devices to work either).

Is there any way to correct this issue without reinstalling?

Similar issue here - https://me.m01.eu/blog/2015/03/windows-10-kvm-and-iscsi/#comment-36090

Community
GraemeGraeme
2701 gold badge3 silver badges11 bronze badges

5 Answers

All the answers are correct but you may need to perform few additional steps after you have installed virtio drivers. Here are the steps I followed:

  1. Open an elevated command prompt and set the VM to boot into safe mode by typing

    bcdedit /set {current} safeboot minimal

  2. shut-down the VM and change the boot device type to virtio.

  3. boot the VM. It will enter in safe mode.

    Note: In Safe mode all boot-start drivers will be enabled and loaded, including the virtio driver. Since there is now a miniport installed to use it, the kernel will now make it part of the drivers that are to be loaded on boot and not disable it again.

  4. in the booted VM reset the bcdedit settings to allow the machine to boot into the Normal mode by typing (in elevated command prompt again):

    bcdedit /deletevalue {current} safeboot

  5. Done.

llegolasllegolas

A fairly simple answer is provided - and may work in many cases, along with hints at other options. If (like me) you're not able to switch to IDE and forced to use VirtIO, then the following alternative approach might work:

  1. Add both windows 10 DVD/CD ISO and virtio driver ISO to VM.
    • The latest driver ISO can be pulled out of the RPMs found at https://fedorapeople.org/groups/virt/virtio-win/repo/latest/
  2. Boot off windows 10 DVD/CD and get into a command prompt from repair mode option.
  3. Load the driver via the CLI e.g. drvload e:viostorw10amd64viostor.inf
    • In my case e: was where the virtio install ISO got assigned.
    • After loading the driver f: was where the windows install became mounted.
  4. Use the DISM command to inject the storage controller driver
    • E.g. dism /image:f: /add-driver /driver:e:viostorw10amd64viostor.inf
    • As above, change drive letter assignments according to your own environment.

Avoids needing to fiddle with making special windows boot CDs/Images and 'patches' the actual windows install image on the fly.

Note, for this niche case, I'd suggest avoiding startup repair (which failed for me). It didn't seem to know how to include vistor.inf after loading it, and if you do try it, be careful to avoid Windows 10's DVD eagerness to restore or reinstall everything..

Credit for DISM approach: Using dism to add drivers

JPvRielJPvRiel

The steps to follow in general are :

  1. Install the VirtIO drivers in the VM
  2. Set the system disk of the VM to use VirtIO
  3. If the VM does not boot, execute Startup Repair or even Repair Install

The procedure in detail is :

  1. Return the boot disk to IDE.
  2. Make sure the windows VM is shutdown.
  3. Download the VirtIO drivers ISO from here.
  4. Mount it on the CD drive for the VM.
  5. Add a storage device which is of the VirtIO type. The size allocation doesn't matter since you are using it to install the drivers.
  6. Start the Windows VM. It will try to install the drivers. If it doesn't, open the Device Manager and you should see the SCSI device listed with the exclamation point icon beside it. You can choose to update the driver and point to mounted ISO's appropriate directory. Once installed, don't reboot but shutdown the machine.
  7. In the virt-manager settings for Windows, change the storage type from IDE to VirtIO.
  8. You can remove the storage device you had created earlier. It is not longer needed.
  9. Start Windows, it should boot up and install the SCSI drivers. You will need to reboot after it does.
  10. If the VM does not boot but the drivers are installed, you might tryto do :

    1. Startup Repair that can fix certain system problems that might prevent Windows from starting.
    2. The last solution: Repair Install while booting from the Windows 10 ISO. This will keep all applications and user settings, just refreshing Windows and boot. Use a recent Windows 10 ISO.

If the last step is unfortunately required, one more difficulty that might beencountered is if the Windows boot CD cannot understand the VirtIO disk becausethese drivers were not included in it by Microsoft.In this case, one needs to create a custom boot CD/USB that containsthese drivers, but make sure that you start from a Windows ISO that isof the same level as the installation by getting the latest one (currently 1511).

Here are some tutorials on how to slipstream drivers in Windows :

harrymcharrymc
287k16 gold badges308 silver badges624 bronze badges

the answer from harrymc works fine for me.

Windows

the following steps I followed:

  1. Install the virtio driver in windows
  2. Add a additional 'dummy' virtio disk
  3. Switch the boot disk to virtio
  4. Reboot
  5. Remove the additional 'dummy' virtio disk
  6. ..
sdhdsdhd

It is unfortunately possible to have driver perfectly installed and STILL get 'inaccessible boot Device.' The reason is a bit shocking (I find): a Win 10 installation 'remembers' the drivers that were required when it was first installed, and by default WILL NOT load other storage drivers at boot time. This is done, it seems, to 'piracy' -- it makes it difficult to run the 'same' installation on different hardware. There is some great documentation on this 'feature' in this post from the gentoo forums. The essence is as follows:

Emachine e528 laptop specs. EasyNote NJ31. Gateway Nv4011c, Nv4204, Nv4406c, Nv4426c. AS09C31 AS09C70, AS09C71, AS09C75, BT.00603.078, BT.00603.093, BT.00607.072, BT.00607.073. EMachines E528 E728 Series.

The Drivers that are targeted for forbidden-to-load-at-boot can be determined as follows:Within the registry key ComputerHKEY_LOCAL_MACHINESYSTEMControlSet001Services there is one subkey for every driver known to the installation. The name of this subkey is just the name of the driver. Within each driver subkey, there will be a subkey 'STARTOVERRIDE' if that driver is to be prevented from loading at boot. In particular, within the STARTOVERRIDE subkey there is a parameter whose name is '0' . IF the value of this parameter is '3', it will not be loaded at boot time. Setting this value to 0 instead will 'override' behavior.

I myself just go to ComputerHKEY_LOCAL_MACHINESYSTEMControlSet001Services and search for 'STARTOVERRIDE'. Each time i find it, if there is name under it called '0' with value '3', I change to '0'. This seem to be overkill, you only need to change the drive that needs to load. In my case there are several of them, and I never remember which, so I just do an 'F3-search' within that 'services' section.

And one final tip which isn't needed for current, signed, virtio storage, but might be to someone else reading this if they want to use a more experimental driver that is not (yet) signed: I found that EVEN after doing the above trick, I ALSO needed to boot into the advanced options screen and choose F7 ('disable driver signature verification'). Annoyingly, it wasn't enough to set the bcd flag to disable driver verification, because the driver needs to load before the machine reads the BCD and finds out that it doesn't need to verify the signature.

Proxmox Windows 2003 Virtio Drivers

All in all, not Microsoft's most shining hour. You really have to hate your users if you'd rather give legit users a made-up artificial Blue-Screen than allow people to (say) replace a SATA disk with an NVMe disk and have it 'just work.'

Scott PetrackScott Petrack

Proxmox Virtio Drivers Windows 7

Not the answer you're looking for? Browse other questions tagged windows-10linux-kvm or ask your own question.