天天看點

如何定制虛拟機smbios資訊

(文章來自作者維護的社群微信公衆号【虛拟化雲計算】) ( 目前有兩個微信群《kvm虛拟化》和《openstack》,掃描二維碼點選“雲-交流”,進群交流提問)

如何定制虛拟機smbios資訊

在某些需要給機器做認證和加密的場景下,會需要讀取機器的廠家和主機闆等資訊,這些資訊都存放在SMBIOS資訊中。在虛拟化場景下可以定制虛拟機的SMBIOS資訊。   SMBIOS是什麼 SMBIOS(System Management BIOS)是由工業化組織DMTF提出的通過系統固件傳遞管理資訊的标準。詳見 https://www.dmtf.org/cn/standards/smbios 在SMBIOS标準中規定了若幹的Type,每種Type都包含特定資訊。例如: BIOS Information (Type 0) System Information (Type 1) Baseboard (or Module) Information (Type 2) System Enclosure or Chassis (Type 3) Processor Information (Type 4) Memory Controller Information (Type 5, Obsolete) Memory Module Information (Type 6, Obsolete) OEM Strings (Type 11)   在libvirt中可以定制Guest的smbios資訊,首先填寫smbios的mode,然後定制sysinfo。   指定smbios mode 在<os>中指定<smbios mode='sysinfo'/>:   <os>     ......     <smbios mode='sysinfo'/>   </os> 這裡的mode有三種取值: "emulate": 讓qemu自動産生 "host"      :從主控端上拷貝SMBIOS的 Block 0和Block 1(UUID除外) "sysinfo"  :(使用sysinfo單元中指定的值)   填寫sysinfo單元 <sysinfo type='smbios'>    <bios>       <entry name='vendor'>myvendor</entry>     </bios>     <system>       <entry name='manufacturer'>manufacturer01</entry>       <entry name='product'>test</entry>       <entry name='version'>0.1</entry>     </system>     <baseBoard>       <entry name='manufacturer'>manufacturer02</entry>       <entry name='product'>0101010101</entry>       <entry name='version'>0202020202</entry>       <entry name='serial'>abcdefgh</entry>     </baseBoard>   <chassis>     <entry name='manufacturer'>Dell Inc.</entry>     <entry name='version'>2.12</entry>     <entry name='serial'>65X0XF2</entry>     <entry name='asset'>40000101</entry>     <entry name='sku'>Type3Sku1</entry>   </chassis>   <oemStrings>     <entry>myappname:some arbitrary data</entry>     <entry>otherappname:more arbitrary data</entry>   </oemStrings> </sysinfo> 其中: bios:對應SMBIOS标準中的 BIOS Information (Type 0) system:對應SMBIOS标準中的 System Information (Type 1) baseBoard:對應SMBIOS标準中的 Baseboard (or Module) Information (Type 2) chassis:對應SMBIOS标準中的 System Enclosure or Chassis (Type 3) oemStrings:對應SMBIOS标準中的 OEM Strings (Type 11) (chassis和oemStrings從libvirt4.1.0開始支援)   在虛拟機内部檢視 # dmidecode

如何定制虛拟機smbios資訊

可以看到在虛拟機中查詢到的每一個type和我們在libvirt的domain中定制的完全相同。

關注微信公衆号【虛拟化雲計算】,閱讀更多虛拟化雲計算知識,純技術幹貨更新不停。

如何定制虛拟機smbios資訊

繼續閱讀