This is how I currently do installs of Windows with virtio drivers at install:

  1. Create the new VM with a genuine Windows installation ISO image. I cannot guarantee that anything will work if you use a pirated copy of Windows or if your ISO image download is incomplete or corrupt.

    Create a new virtual machine

  2. Choose to customize the machine configuration before install.

    Customize machine configuration before install

  3. Select the IDE hard drive, and change its type to VirtIO. Click Apply.

    Change IDE hard drive to Virtio

  4. Select the IDE CDROM, and change its type to SATA. Click Apply.

    Change IDE CDROM to SATA

  5. Click Add Hardware, then add a second SATA CDROM drive with the virtio-win.iso image.

    Add a SATA CDROM with virtio-win.iso

  6. (Optional) Also change your virtual NIC to VirtIO. You'll be able to install its drivers after Windows is installed, and this will prevent you from having an annoying "Ethernet 2" later.

    Click Begin Installation and begin installing Windows.

    When Setup asks you where to install Windows, click Load Driver.

    Windows setup Load Driver

  7. On the next page. click Browse, and browse to the \viostor\2k12R2\amd64 folder on the second CD drive, virtio-win-0.1.xx.

    Select E:\viostor\2k12R2\amd64

  8. The Red Hat VirtIO SCSI Controller will appear. Click Next.

    Use the Red Hat VirtIO SCSI Controller driver

  9. Now your virtual disk is successfully detected. Enjoy!

    Windows finds the virtual disk

When installation is complete, you can use the virtio-win CD to install drivers for the remaining hardware, such as your NIC, balloon driver, etc. Open up Device Manager to see which devices need to have drivers loaded. And when you're done with installing drivers, you can remove the second virtual CDROM drive from the virtual machine.

Finally, if you intend to sysprep this image, e.g. to create a golden master, press CtrlShiftF3 here to go directly to audit mode.

Press Ctrl-Shift-F3 when Windows starts for the first time to enter audit mode

Windows Server 2012 R2 audit mode

(And to upgrade the video driver, see another answer I wrote).


The main problem I had was getting the drivers. I downloaded mine from here https://fedoraproject.org/wiki/Windows_Virtio_Drivers and was successful in getting win 2012 r2 working on KVM

I put a video up showing the entire process I used https://youtu.be/9SPCa4TKues