Windows 7 VirtIO Drivers will not install


Recommended Posts

Hello,

I am trying to get a Windows 7 VM up and running on my Unraid.  I downloaded the VirtIO drivers that are linked all over the forms and every time I try to load them Windows rejects them because they are not signed.  If I try to install Windows 8.1 with the same drivers they work great.

 

Thanks for the help

Link to comment
  • 3 weeks later...

Did you follow the directions exactly when you installed your Windows 7 from scratch?

 

 

Here is what I did for my 2 32bit Windows 7 VMs:

[*]Set the VM to Window 7 / 2008

[*]Put the Win7 32Bit OS ISO image in correct box.

[*]Put the virtio driver ISO (virtio-win-0.1.96.iso) in correct box.

[*]Setup memory to 3GB (the highest I've found to not cause Windows to use PAE mode)

[*]Setup location and size of the boot hard drive and other parameters

[*]Start up the VM.

[*]When Windows 7 setup stops and give you the empty box where you would pick a drive to install to is where you install drivers.

[*]Install the balloon driver (in my case I used Balloon\w7\x86 directory because I'm using 32 bit Win7 even though the instructions tell you to pick AMD64) Windows tells you no drives were found but it DID install the balloon driver.

[*]Install the NetKVM driver (once again I used the NetKVM\w7\x86 directory because I'm on 32 bit Win7) Windows tells you no drives were found but it DID install them.

[*]Install the vioserial driver (once again I used the vioserial\w7\x86 directory because I'm on 32 bit Win7) Windows tells you no drives were found but it DID install them.

[*]Install the viostor driver (once again I used the viostor\w7\x86 directory because I'm on 32 bit Win7) Windows displays the boot drive now to install your OS to.

[*]Complete the install of windows.

 

I just setup a 64 bit Win7 and followed the method above except I used Balloon\w7\amd64, NetKVM\w7\amd64, vioserial\w7\amd64 & viostor\w7\amd64 drivers since this was a 64 bit Win7 OS.  Boots fine no driver problems with signing.  See attached image.

Win7x64_booted.png.3cd19c6569869fc19f6a5d7eea15c11d.png

  • Upvote 1
Link to comment
  • 3 weeks later...

I am trying to load a Windows 7 x64 VM.  The VirtIO drivers aren't working - I never have a drive to select on the "Where do you want to install Windows?" dialogue.

 

I've loaded the AMD64 drivers, but I don't get a drive to install to.

 

If I use the x86 drivers, I get a drive to install do - Windows installs.  Then it blue screens on boot.

 

I have tried both the current stable Fedora drivers and the newest (not stable).

 

Any ideas?

 

Thanks,

 

Russell

Link to comment

Hi Guys,

 

Continuing to work on this - if I use the x86 drivers, I am able to get a Windows 7 (non-64) up and running.

 

How can I get successful with Win 7 x64?

 

Thanks,

 

Russell

 

Where did you obtain your installation media for Windows 7?  If the installer is not giving you an option to load the x64 drivers, it may be because your installer is a 32-bit installer only.

Link to comment

Hi Guys,

 

Continuing to work on this - if I use the x86 drivers, I am able to get a Windows 7 (non-64) up and running.

 

How can I get successful with Win 7 x64?

 

Thanks,

 

Russell

 

Where did you obtain your installation media for Windows 7?  If the installer is not giving you an option to load the x64 drivers, it may be because your installer is a 32-bit installer only.

I had the exact same problem.  Win7 64 bit wouldn't work with the AMD64 drivers.  Win7 32 bit would work with the x86 drivers to install.  Since I was only going to give the VM a maximum of 4 gig anyways, I was actually better off installing as 32 bit anyways, so I didn't particularily care.  FWIW I was using a geniune an ISO created from a genuine Windows Ultimate 64 and a genuine Windows Ultimate 32.

 

Using the 32 bit OS and drivers the system installed and ran fine.  64 bit OS and 64 bit drivers wouldn't find the drive at all. 

 

Was just doing it as an experiment.  My useage case on the servers, etc doesn't require any form of VM at all.

Link to comment

I installed from a TechNet ISO Win7x64 pro and it went fine.  Boots up with no problems - at least for the next few days - until I have to activate it or reinstall again anyway.  I used the AMD64 drivers for it and installed like the wiki said balloon, net, vioserial and finally viostor order.  For my Windows7 32bit VMs I transferred from an ESXi box I used the 32 bit drivers.  They are working fine as well on same 6.0.1 unRAID server actually.  It is a SandyBridge CPU and Tyan S5512 MB with 16GB memory if that makes any difference.

Link to comment

Hi Guys,

 

Continuing to work on this - if I use the x86 drivers, I am able to get a Windows 7 (non-64) up and running.

 

How can I get successful with Win 7 x64?

 

Thanks,

 

Russell

 

Where did you obtain your installation media for Windows 7?  If the installer is not giving you an option to load the x64 drivers, it may be because your installer is a 32-bit installer only.

I had the exact same problem.  Win7 64 bit wouldn't work with the AMD64 drivers.  Win7 32 bit would work with the x86 drivers to install.  Since I was only going to give the VM a maximum of 4 gig anyways, I was actually better off installing as 32 bit anyways, so I didn't particularily care.  FWIW I was using a geniune an ISO created from a genuine Windows Ultimate 64 and a genuine Windows Ultimate 32.

 

Using the 32 bit OS and drivers the system installed and ran fine.  64 bit OS and 64 bit drivers wouldn't find the drive at all. 

 

Was just doing it as an experiment.  My useage case on the servers, etc doesn't require any form of VM at all.

 

Curious if this was older (pre-SP1) install media.

Link to comment

Hi Guys,

 

Continuing to work on this - if I use the x86 drivers, I am able to get a Windows 7 (non-64) up and running.

 

How can I get successful with Win 7 x64?

 

Thanks,

 

Russell

 

Where did you obtain your installation media for Windows 7?  If the installer is not giving you an option to load the x64 drivers, it may be because your installer is a 32-bit installer only.

I had the exact same problem.  Win7 64 bit wouldn't work with the AMD64 drivers.  Win7 32 bit would work with the x86 drivers to install.  Since I was only going to give the VM a maximum of 4 gig anyways, I was actually better off installing as 32 bit anyways, so I didn't particularily care.  FWIW I was using a geniune an ISO created from a genuine Windows Ultimate 64 and a genuine Windows Ultimate 32.

 

Using the 32 bit OS and drivers the system installed and ran fine.  64 bit OS and 64 bit drivers wouldn't find the drive at all. 

 

Was just doing it as an experiment.  My useage case on the servers, etc doesn't require any form of VM at all.

 

Curious if this was older (pre-SP1) install media.

Yes
Link to comment

I'm not sure if it's pre-SP1.  It's from my college.

 

I tried a Windows 10 ISO and have the same issue.  All four drivers seem to load, but for x64 solutions, I never have a drive I can install to.

 

I just bought my hardware - you can read about it here:  http://lime-technology.com/forum/index.php?topic=42159.60

 

I hope I didn't end up with something incompatible.  :-(

 

With my new hardware, I need to find at least one x64 that will work.

 

Russell

Link to comment

I'm not sure if it's pre-SP1.  It's from my college.

 

I tried a Windows 10 ISO and have the same issue.  All four drivers seem to load, but for x64 solutions, I never have a drive I can install to.

 

I just bought my hardware - you can read about it here:  http://lime-technology.com/forum/index.php?topic=42159.60

 

I hope I didn't end up with something incompatible.  :-(

 

Russell

 

This has nothing to do with your hardware.  These are virtual device drivers you are loading.  Almost guaranteed its something to do with the install media.  What version of the virtio drivers did you download?  If you follow the link to the fedora project, you can access the virtio driver archive and try to install 0.1.100 or 0.1.96 and see if that works for you.

Link to comment

Thanks Jon,

 

That's a sigh of relief...  It was a good chunk of change for me.

 

Maybe I'm totally going to the wrong place...

 

I have tried:

 

virtio-win-0.1.102.iso

and

virtio-win-0.1.109.iso

 

Should those work?

 

Russell

Not sure of they should work because I don't have your install media. Try the older ones I mentioned in looking through the archives.

Link to comment

Hi Jon,

 

I've now tried the 0.1.100 version... and a new ISO (the one from college was some kind of all in one thing).  I borrowed one from a friend that is just Windows 7 x86 and x64.

 

Same results - I load all the drivers from the 0.1.100, from the AMD 64 folder, in this order (from http://lime-technology.com/wiki/index.php/UnRAID_Manual_6#Creating_Your_Windows_VM):

 

Balloon

NetKVM

vioserial

viostor (be sure to load this one last)

 

In some cases (Balloon and vioserial, if I remember correctly), there's an x86 and x64 driver.  I've tried loading both - I presume the x64 is what is supposed to be loaded.

 

I still don't get a drive I can install on for x64 Windows.

 

Thanks,

 

Russell

Link to comment

Hi Jon,

 

I've now tried the 0.1.100 version... and a new ISO (the one from college was some kind of all in one thing).  I borrowed one from a friend that is just Windows 7 x86 and x64.

 

Same results - I load all the drivers from the 0.1.100, from the AMD 64 folder, in this order (from http://lime-technology.com/wiki/index.php/UnRAID_Manual_6#Creating_Your_Windows_VM):

 

Balloon

NetKVM

vioserial

viostor (be sure to load this one last)

 

In some cases (Balloon and vioserial, if I remember correctly), there's an x86 and x64 driver.  I've tried loading both - I presume the x64 is what is supposed to be loaded.

 

I still don't get a drive I can install on for x64 Windows.

 

Thanks,

 

Russell

You can try 0.1.96 if its still up there, but here's a fall back method.

 

Ok, let's do this just to get you going, since there is clearly something weird going on. Edit the XML of your VM.  Locate the <disk> section and look for the <target> part.  Change the bus from virtio to ide.  This will use an emulated storage controller.  Windows should install without prompting for any drivers.

 

I still think this has to be an issue with old installation media or something.

Link to comment

Hi Jon,

 

I tried - now I get an "Error: Internal Error: Unexpected address type for ide disk."

 

I think there's an issue with my "<Address" line for that disk, it is address type PCI, while the others are IDE.  I've tried copying and pasting one of the other lines, editing it a bit, and I don't know the right combination to get it working.

 

While I was waiting for assistance, I tried following the Atlas thread to try ESXi and I got two VMs up and running pretty quickly.  Before trying to get UnRaid as a client, I tried to get one USB device (Fujitsu ScanSnap ix500) up and running and failed after a couple hours of work.  My concern is that it's the easiest of the three USB devices I need - an old ScanJet 6300c and a Cintiq 1200W drawing tablet being the other two.  Maybe I'm just asking virtualization to do too much?

 

My main reason for trying the VM route is that I hope READ speed (hopefully write too) from my array will be much faster than I could get over the network - but I have no idea if that's likely.

 

Thanks for any advice/ideas/support you can offer.

 

Russell

Link to comment

Hi Jon,

 

I tried - now I get an "Error: Internal Error: Unexpected address type for ide disk."

 

I think there's an issue with my "<Address" line for that disk, it is address type PCI, while the others are IDE.  I've tried copying and pasting one of the other lines, editing it a bit, and I don't know the right combination to get it working.

 

While I was waiting for assistance, I tried following the Atlas thread to try ESXi and I got two VMs up and running pretty quickly.  Before trying to get UnRaid as a client, I tried to get one USB device (Fujitsu ScanSnap ix500) up and running and failed after a couple hours of work.  My concern is that it's the easiest of the three USB devices I need - an old ScanJet 6300c and a Cintiq 1200W drawing tablet being the other two.  Maybe I'm just asking virtualization to do too much?

 

My main reason for trying the VM route is that I hope READ speed (hopefully write too) from my array will be much faster than I could get over the network - but I have no idea if that's likely.

 

Thanks for any advice/ideas/support you can offer.

 

Russell

Ok, you can delete the address line when editing the XML, it will auto adjust.  You can also try changing the bus from IDE to SATA.

 

Another tweak for your USB devices would be to adjust the USB controller in the XML by adding the following to the <controller> element:

 

model='nec-xhci'

Link to comment

Hi Jon,

 

First and foremost, thank you for the great videos and all of the assistance you provide here - even on the weekends!  And thanks to everyone else who offered knowledge and assistance.

 

I did get Windows 7 x64 up and running as a VM following your tips - changing the <Address from PCI to IDE, deleting the address line following that entry, then loading Windows (for those following along, you still must install the drivers as described in the UnRaid 6 Manual, even though the drive is detected; I think they are later used to drive devices on your VM.)

 

I spent a ton of hours working on the USB devices - and while I could get one or two working, I never got all of them working (your suggestion didn't seem to work with Windows 7, FYI) - and the simplest of things would crash the whole damn thing (like connecting a new USB CD drive to load a driver).  Often this led to recreating the VM and reloading the OS.  I was also able to do a little testing while I had the VM up and running.  Instead of loading files over the gigabit network, having the array onboard the same machine was only about 10% faster than the network delivery - I had hoped they'd be much faster this way.

 

Regrettably, I've given up.  I bought a hexcore processor, 64GB of RAM, a new motherboard, a video card, and a few other things to seriously upscale one of my existing Unraids to do VMs - now I'm in the market for a new case and power supply to build a new machine instead.  My two scanners, drawing tablet, printers, and other USB accessories should work just fine that way.

 

I've rebuilt both my UnRaid machines to their pre-6 form, and they run 6 just fine (even if they are just Celerons with 2GB of RAM).  Hopefully I'll have the horsepower for a couple dockers (CrashPlan and Plex). 

 

Thanks again for all the assistance and coaching - sorry I couldn't put any more time into it,

 

Russell

Link to comment

Hi Jon,

 

First and foremost, thank you for the great videos and all of the assistance you provide here - even on the weekends!  And thanks to everyone else who offered knowledge and assistance.

 

I did get Windows 7 x64 up and running as a VM following your tips - changing the <Address from PCI to IDE, deleting the address line following that entry, then loading Windows (for those following along, you still must install the drivers as described in the UnRaid 6 Manual, even though the drive is detected; I think they are later used to drive devices on your VM.)

 

I spent a ton of hours working on the USB devices - and while I could get one or two working, I never got all of them working (your suggestion didn't seem to work with Windows 7, FYI) - and the simplest of things would crash the whole damn thing (like connecting a new USB CD drive to load a driver).  Often this led to recreating the VM and reloading the OS.  I was also able to do a little testing while I had the VM up and running.  Instead of loading files over the gigabit network, having the array onboard the same machine was only about 10% faster than the network delivery - I had hoped they'd be much faster this way.

 

Regrettably, I've given up.  I bought a hexcore processor, 64GB of RAM, a new motherboard, a video card, and a few other things to seriously upscale one of my existing Unraids to do VMs - now I'm in the market for a new case and power supply to build a new machine instead.  My two scanners, drawing tablet, printers, and other USB accessories should work just fine that way.

 

I've rebuilt both my UnRaid machines to their pre-6 form, and they run 6 just fine (even if they are just Celerons with 2GB of RAM).  Hopefully I'll have the horsepower for a couple dockers (CrashPlan and Plex). 

 

Thanks again for all the assistance and coaching - sorry I couldn't put any more time into it,

 

Russell

 

Sorry you couldn't get it working right for your needs.  With respect to USB support, there's another way to guarantee easier / more natural USB support, which is to purchase a USB controller as a PCIe card, add it to unRAID, then assign that card to the VM as a PCI device with another custom string of xml.  This would give you full hot-plugging support and all devices attached should work perfectly.  USB assignment is tricky when it comes to supporting a wide variety of devices.  It's getting better and better, but it's still got a ways to go to work universally with all device types.  USB controller pass through, however, is very solid, and can be very advantageous in giving you a more "native" experience.

 

As far as storage performance goes, I'm wondering how you went about getting the files onto the array from within the VM in the first place.  If you downloaded a file inside your VM, then copied it to the array from the VM, I wouldn't expect much improvement, as you're going through a virtual disk image layer.  You could potentially improve the performance there by passing through an entire block device (or perhaps even another add-on storage controller that is dedicated to the VM).  It also depends on the file systems you're using, how full those devices are, and a number of other conditions.

 

Lastly, Windows 7 is the worst of the currently supported Windows operating systems when it comes to performance as a virtual machine.  Windows 8/8.1/10 are far better performing as a VM.  Windows 7, while a tried and true OS, just doesn't have the optimizations that the later iterations have for running as a VM.  Does it work?  Yes.  Does it work fairly good?  Yeah, it does.  Is it as good as 8.1 or 10?  Not by a longshot IMHO.  And the virtual USB 3 controller I gave you as XML doesn't work with Windows 7, I know that.  It seems to work solid in 8.1/10 though, and even with USB cameras, although I am debugging some issues still there.

 

Right now, the primary use cases for VMs on unRAID are pretty simple and direct: 

 

1- replace a desktop PC / gaming rig with a NAS+Desktop combo system, where the NAS functionality rides at a level above the desktop, so desktop issues don't cause NAS issues. 

2 - run headless servers for Windows or other applications that aren't available/stable enough in Docker Containers.

3 - build a media player / NAS combo with OpenELEC

 

There are obvious other things you can do with virtualization beyond that, but we haven't fully implemented them all just yet, so this may be a case of expecting more from us than we're ready to deliver.  That said, for folks willing to work with us a bit, we can find ways through XML edits to deliver functionality, but again, Windows 7 can be a major drawback for us at times.

 

That said, I appreciate you giving it a shot and some time to work through your issues.  I do understand the need to move on though, but if you ever decide to give it another shot, we're here to help.

Link to comment
  • 2 weeks later...

Hi Jon and everyone else,

 

I think I'm going to jump into the VM on UnRaid pool again...

 

It turns out that the motherboard I have, a Gigabyte MU70-SU0 (http://b2b.gigabyte.com/products/product-page.aspx?pid=5133#ov) is not super friendly with Windows 7, bare metal.  It was hellish just to get it loaded - what they don't tell you is that you'll need a driver off the included CD for an Intel chipset just to get the install complete (see here for "Preinstall driver":  http://b2b.gigabyte.com/products/product-page.aspx?pid=5133#dl ).  The frustrating thing is that there was no documentation of this with the manual - and the install seems to work - it just hangs at random intervals.  And once you get it up and running, load that CD again, because without it, Windows 7 doesn't know anything about this hardware - in Device Manager there were 17 Unknown Devices.

 

So, I suspect I probably needed this driver when I was trying to do the install under UnRaid 6.  I'm going to try again, with this knowledge - and also try Windows 10, with Jon's recent advice.  This will save me buying another power supply, another case, and a few other accesssories - I really want a combined UnRaid/Desktop.  :)

 

I will definitely go down the separate USB controller route - since I need several USB devices to work (Wacom drawing tablet, flatbed scanner, sheetfed scanner, thumb drives, USB HDs, etc.).  Is there a specific card that is suggested or are they all about the same?  Then what do I do with the "custom string of XML" to make use of this card?

 

Thanks,

 

Russell

Link to comment
  • 1 year later...
  • 2 years later...

Windows 7 64-bit (PRE-SP1 ISO) VM Install.

 

  It took a while, it was easy to get the 32-bit Windows 7 VM running with a pre-SP1 ISO, but I was not able to get the 64-bit to see a drive to install to.  After reading many threads on many sites with many complaints of the same problem, this thread finally got me where I needed to go.

 

  Part of the problem I was having was I am running a much newer version of Unraid now compared with the age of the many threads I was reading.  There are similarities, and also differences that was making it a little harder to try to figure out what to do next.

 

  I tied installing the drivers where all I could do was try to load drivers and hope for a drive to finally show up where I could install to, but this does not seem to work with the pre-SP1 ISO media.

 

  I then saw the posts about editing the XML to change the bus for the <disk><target> from 2015 August, I thought that sounded like it may do what I needed,  but I kept reading on in case there was something about solutions for a newer Unraid version that would be closer to the 6.5.3 version I was working with.

 

  Then I lastly saw the post from "assassinmunky" posted 2017 May 05, about how he got it to work "by changing the vDisk bus to SATA (from VirtIO)"!  I had tried so many combinations of things, I was no longer sure what I had or had not tried, so I did this, and IT WORKED!  (the option was not quite in the same place, but I found it!)

 

  I am now happily installing a 64-bit Windows 7 VM!  I had tried the 32-bit since that was all I could seem to install, made all the updates to it, then launched the software I need to run, only to then be shown again why I needed the 64-bit version...  The software I need to run will only run under a 64-bit environment.  So now after the new 64-bit VM is running, I can go through all the updates on it, then install my programs, and it should be all set to run!  :-)


  Thanks everyone, even though I did not ask for help on this, as it was from all the great help provided over the years, that I was able to find the help I needed!

 

  My VM adventure has now officially begun!  :-)

  • Thanks 1
Link to comment
  • 1 year later...
  • 3 months later...

I had the same problem, i could only install win7 32BIT, but i found out that the virtio drivers were somehow "too" new. try using this one, it worked for me.

 

https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.141-1/virtio-win.iso

 

Hope this helped.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.