歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 檢測Linux虛擬化平台類型的幾種方式

檢測Linux虛擬化平台類型的幾種方式

日期:2017/2/28 13:53:49   编辑:Linux教程

要想找出 Linux 系統運行在虛擬化平台中還是硬件服務器上,有多種方式可供大家選擇,這主要取決於你的 hypervisor 或 container 環境。不同的虛擬化或容器技術會在其實例中引入不同的識別指紋,如:處理器廠商、特殊的 /proc 文件或虛擬網卡名稱等。 另外通過 dmesg 顯示啟動序列,也可以找出 Linux 或 VPS 所使用虛擬化平台類型的一些線索。

下面我們將介紹幾個命令行工具,讓大家可以非常容易地檢測到 Linux 所使用的虛擬化平台類型。

方法一:dmidecode

要檢測 Linux 底層的虛擬化類型首選的就是 dmidecode 命令,它最初設計來顯示系統 BIOS 和硬件組件的相關信息。使用如下命令便可以檢測相關虛擬化信息:

sudo dmidecode -s system-manufacturer

系統極客網站運行在 Microsoft Azure 平台上,所以檢測出來是微軟的 Hyper-V。如果你的系統運行在物理服務器上,輸入的將是硬件制造商的實際名稱(如 Dell Inc.)。如果你的 Linux 是運行在虛擬化平台中,則會顯示所使用的虛擬化技術相關名稱,如 「Microsoft Corporation」「QEMU」「Xen」「VirtualBox」「VMware, Inc」等等。

注意:該方法不適用於基於容器的虛擬化技術。

方法二:systemd

對於使用 systemd 的 Linux 系統,可以使用 systemd-detect-virt 命令來進行檢測,該命令目前可以同時檢測到基於 hypervisor 的虛擬化技術(例如 KVM、QEMU、VMware、Xen、Oracle VM、VirtualBox、UML)和基於容器的虛擬化技術(例如 LXC、Docker、OpenVZ)。

systemd-detect-virt

注意:在物理服務器上使用該命令會輸出「none」。

方法三:virt-what

我們介紹的最後一種檢測 Linux 所使用虛擬化類型的方法是 virt-what 命令,virt-what 實際上是一個 Shell 腳本。它通過各種啟發式方法來識別虛擬化環境類型,可以檢測出 QEMU/KVM、VMware、Hyper-V、VirtualBox、OpenVZ/Virtuozzo、Xen、LXC、IBM PowerVM 以及 Parallels 等平台類型。

在使用之前,大家需要先通過 apt-get 或 yum 安裝 virt-what,再執行如下命令進行檢測:

sudo virt-what

Copyright © Linux教程網 All Rights Reserved