BIOS-Informationen an KVM-Gast durchreichen
BIOS-Informationen an KVM-Gast durchreichen
Getestet mit Ubuntu 14.04.2.
Gelegentlich ist es nötig, dem Gastsystem einige Infos bezüglich der Hardware des Hostsystem zukommen zu lassen. Sinn könnte das machen, wenn man eine OEM-Lizenz nicht auf dem Hostsystem, sondern stattdessen auf dem Gastsystem verwenden möchte (im Folgenden jedoch nur eine technische Betrachtung, keine rechtliche).
Auslesen kann man die Infos zum Hostsystem mit
sudo dmidecode
Interessant in der Ausgabe von dmidecode
ist hauptsächlich folgender Teil:
BIOS Information
Vendor: Dell Inc.
Version: A01
Release Date: 01/12/2012
[...]
System Information
Manufacturer: Dell Inc.
Product Name: Latitude A1122
Version: 0001
Serial Number: AB12AB1
UUID: eeeeeeee-ffff-1234-1234-aabbaabbaabb
[...]
SKU Number:
Family: Not Specified
Diese Angaben kann man dem Gastsystem namens win7
zur Verfügung stellen mit den fett hervorgegebenen Änderungen und
sudo virsh edit win7
<domain type='kvm'>
<name>win7neu</name>
<uuid>eeeeeeee-ffff-1234-1234-aabbaabbaabb</uuid>
<memory unit='KiB'>2097152</memory>
<currentMemory unit='KiB'>2097152</currentMemory>
<vcpu placement='static'>4</vcpu>
<sysinfo type='smbios'>
<bios>
<entry name='vendor'>Dell Inc.</entry>
<entry name='version'>A01</entry>
<entry name='date'>01/12/2012</entry>
</bios>
<system>
<entry name='manufacturer'>Dell Inc.</entry>
<entry name='product'>Latitude A1122</entry>
<entry name='version'>0001</entry>
<entry name='serial'>AB12AB1</entry>
<entry name='uuid'>eeeeeeee-ffff-1234-1234-aabbaabbaabb</entry>
</system>
</sysinfo>
<os>
<type arch='x86_64' machine='pc-i440fx-trusty'>hvm</type>
<boot dev='hd'/>
<smbios mode='sysinfo'/>
</os>
<features>[...]
Wenn man die uuid ändert, muss man auch den Namen ändern (hier win7neu
). virsh
legt dann eine zusätzliche VM an, welche auf das gleiche Image verweist wie die alte VM (hier win7
).
Die alte VM kann man nach einem Test der neuen VM löschen, wenn man die Image-Dateien unangetastet lässt.
Auf dem Gastsystem kann man nun testen, ob die Systeminfos angekommen sind:
wmic system get
wmic bios get
Hinweis: Im Labortest war die UUID unter Windows ähnlich, aber nicht gleich. Genau gleich war nur der letzte Block der UUID (im Beispiel aabbaabbaabb
). Gute Nachricht: Scheinbar ist etwas angekommen.