KVM-Qemu Virtio storage and network drivers for 32-bit/64-bit Windows 7, Windows Vista, Windows XP and Windows 2000

…bundled as ISO images, so that you can easily mount and use them in a KVM guest.


Download locations follow:

These are static ISO images, and I’ve built them by downloading the ZIP sources dated 24.09.2009 from the official WindowsGuestDrivers KVM page and then converting them to ISO image files by using K3b.

Note that Virtio provides noticeably faster disk and network access.

Please review the official page of Virtio for sample KVM command line arguments which set up Virtio storage and network devices. You may notice that there is an (undocumented) parameter “boot=on” specified for the “-drive” option. This “boot=on” parameter is vital for the “-drive” option, or else Windows 7 won’t like your drive and won’t install on it.

Note about Virtio storage drives and the Windows 7 installer
I was able to install Windows 7 right from the start by using a Virtio storage drive within the KVM guest. At first the Windows installer didn’t see the Virtio disk at all but there is an option to install additional storage drivers. I installed the Virtio Windows drivers from the above ISO images, the Windows installer detected the Virtio storage disk properly and everything went quite smooth afterwards.


Resources:


8 Responses to “KVM-Qemu Virtio storage and network drivers for 32-bit/64-bit Windows 7, Windows Vista, Windows XP and Windows 2000”

  1. Super, thanks for the images!

  2. Steve says:

    I just tried this on server 2008 x64 and it says the drivers are not signed and refuses to use them during the install. Am I doing something wrong?

    • The official WindowsGuestDrivers KVM page says that drivers should be signed for Windows 64bit platforms. There are some links at that page which you can follow, in order to sign the drivers yourself. I haven’t tried it myself. If you manage to sign the drivers, please send me a mail with instructions and I’ll publish them, as well as an ISO image with the signed drivers. Thanks.

  3. I have followed the links, however even after signing the drivers myself, Windows 64-bit doesn’t want them. The only solution that I have found is:
    - Install your Windows with 1 normal device (ide) and 1 virtio drive.
    - When Windows is successfully installed, add virtio driver for the second disk.

    I don’t know if it is really necessary but in cmd.exe:

    Bcdedit.exe -set TESTSIGNING ON

    See: http://msdn.microsoft.com/en-us/library/dd419910.aspx

    Shutdown VM.
    Change the first disk from ide to virtio, Windows knows the driver from the second drive and use it for the first which have just been changed.

    There is probably a better solution to install but I don’t know it.

    HOW SIGN YOURSELF:
    Download Windows SDK for makecert and signtools: http://download.microsoft.com/download/7/A/B/7ABD2203-C472-4036-8BA0-E505528CCCB7/winsdk_web.exe

    Generate certificate:

    In C:\Program Files\Microsoft SDK\…….\bin
    MakeCert -r -pe -ss TestCertStoreName -n “CN=CertName” CertFileName.cer

    Sign driver:
    SignTool sign /v /s TestCertStoreName /n CertName /t http://timestamp.verisign.com/scripts/timestamp.dll viostor.sys

    Now if you right click on viostor.sys, you can see certified by “…”.

    Sorry for my English ;-)

  4. Arthur Pemberton says:

    Any idea on how to change the storage controller drive in Windows AFTER install with IDE?

  5. Sanjay says:

    Hi,
    I am trying to find information about porting virtio drivers for 2.4.18-3 linux. Do you kinow if any work has been done on linux 2.4.18-3… will appreciate any help in this direction.

    -Sanjay

Leave a Reply