Qemu (KVM) and WINDOWS Vista.
Qemu (KVM) and Vista.
I wrote this article nearly a year ago, but never got around to finishing it. I have added the driver ISO, but otherwise it is little changed. I used the Kernel Virtual Machine (KVM) rather than QEMU itself, but what works for KVM, will usually work for QEMU, as KVM has QEMU as its foundation. If time permits, I will add a section on which CPUs are KVM capable and how to compile the latest version of KVM. Until then, I will point you to: http://kvm.qumranet.com/kvmwiki and http://fabrice.bellard.free.fr/qemu/ Copy your Vista installation disk to an iso image with: dd if=/dev/cdrom of=vista.iso Create a raw image with: /usr/local/kvm/bin/qemu-img create -f raw vista.img 10G The reason for using the raw format is that you can use ntfs-3g to mount the image. This makes copying files into the image a breeze. However, do not boot the image when it is mounted, or mount it when booted, as this will probably fry it. You need one of the following kvm kernel modules: /sbin/modprobe kvm-amd /sbin/modprobe kvm-intel Vista does not produce valid boot sector information, so partition and format the image, vista.img, with XP or Linux. For example, use: qemu-system-x86_64 -boot d -m 512 vista.img -cdrom xp.iso to format the image using an XP install disk (xp.iso). Stop after the partition is formated (with NTFS). KVM doesn't make a distinction between i386 and x86_64 so, even in i386, you should use qemu-system-x86_64. If your system cannot find qemu-system-x86_64, you might need to use the full path: /usr/local/kvm/bin/qemu-system-x86_64. Now install Vista with: qemu-system-x86_64 -boot d -m 512 vista.img -cdrom vista.iso The installation runs much faster from the iso image, but, you can also install from the CD with: qemu-system-x86_64 -boot d -m 512 vista.img -cdrom /dev/cdrom Now mount vista.img and copy the drivers into the image: mount -t ntfs-3g -o loop,offset=$((63*512)) vista.img /1 mkdir /1/drivers; cp -r ES1370 RTL8029 /1/drivers $((63*512)) = 32256, 63 sectors of 512 bytes. Or, use the tiny iso image, drivers.iso: bunzip2 drivers.iso.bz2 qemu-system-x86_64 -m 512 -soundhw es1370 -usb -usbdevice tablet vista.img -cdrom drivers.iso The option -soundhw es1370 has qemu emulate an Ensoniq AudioPCI ES1370 sound card. The default network hardware -net nic,model=ne2k_pci is a Realtek 8029 PCI Ethernet Card. Drivers for both, are on drivers.iso. Install them by right-clicking on the .inf files and choosing install from the menu. The complete default network option is -net nic,model=ne2k_pci -net user. The -net user option sets up a SLIRP connection (since it is modeled on the earlier SLIRP connections). It allows you to get on the internet and is naturally fire-walled. It is not a true network connection, e.g., ping does not work. Qemu can also emulate a Realtek 8139 Ethernet Card, which Vista does have a driver for, however, this does not recognize the SLIRP connection, the DHCP server, or the tap devices (so is essentially useless to you). To use the Realtek 8139 card use the option -net nic,model=rtl8139. Kvmwiki claims that rtl8139 now works with recent versions of KVM. You apparently need, the 0.9.0-cvs version of QEMU (check, e.g., kvm-58/qemu/VERSION). If you are still using QEMU 0.9.0, then you will need the rtl8029 driver. It should be noted, that the rtl8139 driver, always "worked", you just couldn't connect to the internet, or do anything useful, with it. Now run Vista with the command: qemu-system-x86_64 -m 512 -localtime -soundhw es1370 -usb -usbdevice tablet vista.img The -usb -usbdevice tablet option allows your mouse to escape from Vista to Linux by just moving outside the Vista window (without this, you have to press Ctrl-Alt to escape the mouse). The -m 512 option allocates 512 MB of RAM to KVM. Using the -no-acpi option can result in much faster installation and performance. However, I am told that Vista does not work with this option? |
The complete default network option is -net nic,model=ne2k_pci -net user. It allows you to get onto the internet and is naturally fire-walled. The -net user part sets up a SLIRP connection. It is not a true network connection, e.g., ping does not work. The SLIRP connection comes with its own DHCP server. Setting a static IP address will cause things not to work.
|
Does anyone know if Vista works with the -no-acpi option?
|
Please; Does anyone know if Vista works with the -no-acpi option?
|
Does anyone actually read these threads?
|
Why doesn't someone humor me and reply? Just to prove that at least one person has read (at least) some of this thread.
|
Why doesn't someone humor me and reply? A good question.
|
I think you turned us all off with your use of 'Vista' in the title: it's an ugly, obscure OS, the door of whom only the most self-hating among us dares to knock.
No idea. But this is a reply. |
Quote:
|
Thanks Ted, and here's me thinking that Vista might attract attention.
|
Quote:
As far as I know, Vista needs acpi support to install it. I never managed to run it qemu for this reason (acpi support in qemu is new and buggy). |
Quote:
XP Office extra run fine. And by the way, not kqemu, but Qemu and KVM. You use kqemu if you cannot run the kernel virtual machine (KVM). |
By the way, run XP, not Vista, if at all possible.
XP is all-round better. |
Quote:
I tried the instructions you posted above, but it still gives me the same old acpi error when booting... Did you try it in both kvm and qemu (and what 64 version are you using?)? |
Quote:
|
Quote:
By the way, QEMU version 0.9.1 is out. Using it may help. |
jens: did QEMU version 0.9.1 solve your problems?
|
Sadly, ... no.
Qemu seems to have some weird acpi problems (It did went a lot further though). I tried it with kvm and virtual box on my Slackware laptop and that did work (that system isn't powerful enough though). If everything else fails, I'll just try VB on Etch. PS: I only need vista to test some compatibility issues, so it doesn't even need to run perfect. I'd really like to stick with Qemu/KVM though... |
Quote:
|
Quote:
|
Quote:
|
What do you expect?
Nobody even knows what physical hardware vista works with for sure. |
Yeah. Although it runs with Vista, I use it with XP.
I just like XP better. |
Is this with the ultimate-super-duper edition?
Me thinks there is something in the EULA about the home and whatever else editions not being allowed to run in a VM.Or was it not being allowed to run VM's? |
Quote:
|
I was using the home edition. Does the ultimate-super-duper edition do anything extra for you as far as Qemu is concerned?
|
Quote:
Their license does mention your not allowed to use it as a VM. A license doesn't meant everything though. Stating something in *any* license doesn't make that automatically true. It still depends on local copyright law. |
I don't care much about licenses in that respect - way I see it what you do at home with your software is nobodys concern.
What I don't know is if they disabled some things you might need in order to use the home version in a VM. |
Quote:
|
Quote:
|
I was wondering where you get a virtual machine with 4 cores, 4 gig ram and an emulated gtx 8800 from :)
|
Quote:
You would give the virtual machine direct access to the video card :) |
Quote:
|
Quote:
(K)Qemu is the fastest (raw cpu) of them all but not for graphical stuff (It does have an OpenGL patch/option though). As far as I know, it doesn't "emulate" high end cards... Qemu (and kqemu/kvm) is not a good option if you're looking for graphical performance. (This could change though, KVM is getting better with every release). |
Quote:
About the speed thing: Dunno - last time I tried kqemu it was kind of sluggish for compiling. It's hard to say because reliable benchmarks of VM's are hard to find.I read that Vmware even expicitly prohibits publishing benchmarks in their license. |
Quote:
|
Quote:
I can't find anything anywhere about doing this. |
Quote:
I use it like that with RDP to avoid the sluggish graphics emulation. I find the speed difference very noticeable compared to VMWare. Virtual Box isn't bad for this either (but more aimed for desktop systems). |
Never used qemu headless - wouldn't make a difference either because I normally don't run a GUI in VM's.
Virtualbox (usuaslly run the headless either) was faster at the time which didn't make much sense since it shares a lot of code with qemu. |
Quote:
We mostly use Xen (RHEL, IBM), but that only makes sense for networking (xen beats everything here). We do have a number of servers (mostly running drupal) using kvm and I'm really happy with those. Qemu's best thing is its raw cpu performance (IMHO, still the most important part). |
If you do servers you might be interested in disk I/O which doesn't seem too great on any VM.
desides running any benchmark on VM's is funny business from my experience. I am wondering where M$ is going with their next VM - either they go halfbaked as usual or if they really want to get all the way they'll have to include 3d for vista. |
Quote:
|
Well? Two video cards. What do you think?
|
Never heard about anybody doing this - I know there is some prealpha software to get some 3d going but attaching a video card directly to the VM is news to me.
|
Quote:
|
Quote:
|
KVM and Vista on a real disk partition
just a question... I already have a dual boot PC, with Vista pre-installed on my 500GB SATA disk, and I’d like to boot kvm from the NTFS partition, not from a disk image. is it possible ???
|
Quote:
|
Hi ComputerGreek,
Your guide may help me out. Quote:
# kvm -m 1024 vista.img -cdrom /dev/scd0 -boot d to start the OS. It is working fine on the VM able connecting Internet w/o problem. Your comment abovementioned clears my doubt on mis-installation. Vista can't boot by itself on VM without some treatment. If I use linux.iso when shall I stop installing Linux on linux.iso? Please advise. TIA I'm prepared running Ubuntu8.04 amd64 desktop which is the Host OS on VM B.R. satimis Furthermore can I use 64bit OS on 32bit Vista? OR I have to run a 32bit Linux installer to do the job? Thanks |
Resurrecting an old thread
I had Vista working in a qemu VM at one point. I probably still have a screen shot. I wanted to get kqemu working and I was playing with Windows 7 RC so I rebuilt all of the pieces (kqemu, qemu, etc.) including the kernel (currently running the 2.6.30-rc6 kernel). W7 works fine now as does Windows Server 2008 and both with kqemu but Vista is giving me the STOP: 0x000000A5 BSOD. Supposedly this is an ACPI problem but that doesn't explain Server 2008 and W7 working.
I've tried going back to the configuration that had previously worked with Vista (qemu 0.9.1 with or without kqemu, previous kernel, etc.) but I still get the same BSOD. This includes using a gzipped image that used to work and trying a clean install into a new VM. Just for sanity's sake, does anyone have Vista running in a qemu VM (with or without kqemu)? If so, what if anything did you do to get Vista running (which version of qemu, etc. are you using)? Any suggestions as to how to troubleshoot/debug this are welcome. I'd like to have Vista working "for completeness" so, please, no suggestions to just abandon Vista. I've started taking some classes on network security and being able to run any OS I want in a VM is really handy. Thanks, Dave |
All times are GMT -5. The time now is 06:11 PM. |