Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Issue

I have an HP server that came with an OEM copy of Windows Server 2008. I have installed CentOS 5.4 on the hardware and am trying to install Windows Server 2008 as a KVM guest. When I attempt to install Windows Server 2008 it complains that I am trying to install on unsupported hardware. This issue is caused because the hardware SMBIOS information is not being passed to the KVM guest.

Background

Before I go any further I want to state that what I am trying to do is within the license. HP offers a supported solution for VMWare but does not have an official solution for KVM. After much research the platform I am going to use is CentOS and KVM so please do not suggest other platforms.

I emailed the KVM developers mailing list and was told that this is possible and was given the advice that:

"You can dump SLIC table of your host bios and provide it to guest bios using -acpitable parameter."

I used dmidecode and got the parameters that need to be passed, but I do not know where to pass the parameters into.

Update

Looks like CentOS 5.4 uses virt-install instead of qemu. Qemu is in the package manager and I was able to install it after uninstalling qemu-img (they conflict and qemu contains the packages in qemu-img). So now I know how to pass the acpitable parameters, but I am having trouble mapping what came out of dmidecode into -acpitable.

share|improve this question

4 Answers 4

up vote 1 down vote accepted

you might also have to use the MS signed drivers with the KVM guest. http://www.linux-kvm.com/content/tip-how-setup-windows-guest-paravirtual-network-drivers http://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers

I know for certain the drivers provided with RHEV are signed, not so sure about CentOS

share|improve this answer
    
Accepting since this was the best answer I got. –  rancidfishbreath Nov 29 '10 at 22:13

Extract the SLIC tables from your motherboard and roll your own seabios using: https://github.com/ghuntley/seaslic

share|improve this answer

Unfortunately the answer involving the Windows signed drivers does not reflect the OEM / SLP activation. These drivers may improve performance but the Windows OEM / SLP activation strictly involves data stored in the BIOS, specifically the ACPI tables.

Michael Tokarev was able to do this himself through modifying the source to include the SLIC table in the whole table format but he also mentions that this can be done using several options to -acpitable (http://kerneltrap.org/mailarchive/linux-kvm/2010/3/24/6260060). The change he made to the source simply allowed him to include an entire ACPI table instead of passing several arguments to include different aspects of it on the command line.

I am looking into this myself now as I would like to implement this for testing purposes on some setups in our office. We have a lot of OEM machines and we can install fine on each machine but virtualization gives a lot of benefits for testing as well as very rapid deployment so I would like to see this through.

I would like to the OP of this post, rancidfishbreath, what he extracted from dmidecode, how he formatted this in the options he gave kvm, etc. If you can add any input the developers gave you on this, I would appreciate it.

share|improve this answer
    
I ended up just purchasing a new retail copy of Windows Server 2008. Although the principle of paying twice for something doesn't sit well, at the end of the day the extra license fee was small compared to the time and effort expended on this issue. –  rancidfishbreath Jan 31 '11 at 22:07

Check http://jamar.org/2012/09/28/installing-windows-2008-hp-oem-as-kvm-guest/

provide smbios info into guest xml conf file (/etc/libvirt/qemu) which can be dumped using dmidecode

more info at: http://libvirt.org/formatdomain.html#elementsSysinfo

It works do my win2k12

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.