首頁  >  文章  >  系統教程  >  檢查 Linux 系統是運行在虛擬機器還是實體機器上

檢查 Linux 系統是運行在虛擬機器還是實體機器上

PHPz
PHPz轉載
2024-02-13 18:12:031035瀏覽

除了本機開發以外,我們平時使用 Linux 大部分是透過 ssh 連接到遠端伺服器上的,例如係統部署、維運等工作。

检查 Linux 系统是运行在虚拟机上还是物理机上

在目前虛擬化非常成熟的環境下,我們所部署的系統大部分都是運行在虛擬機器中的。但是也有部分是在物理機上。那麼,怎麼區分我們的系統是運作在虛擬機器上,還是實體機器上呢?

下面我們來詳細討論下這個問題。

有幾個指令可以用來區分系統運作環境是在虛擬機器還是實體機器。

1,使用 dmidecode 指令

區分虛擬機器和實體機,最簡單的方法是使用 dmidecode 指令。如下圖所示:

sudo dmidecode -s system-manufacturer

如果是實體機,你會看到機器製造商的名稱,例如 Dell,Lenovo 等;

如果是虛擬機,你會看到一些類似 QEMU, innotek Gmbh(for VirtualBox)等的輸出資訊。

dmidecode 命令用於查看計算機的 DMI 信息,該信息以人類可讀的方式輸出。

DMI 是桌上型管理介面(Desktop Management Interface)的縮寫,幾乎是所有系統製造商都遵守的標準。 DMI 框架用於管理和追蹤桌面、筆記型電腦或伺服器電腦中的元件。

由於有了 DMI,我們可以獲得有關係統硬體、系統製造商和設備序號的信息,而使用 dmidecode(DMI Decode)命令,可以獲得這些資訊。另外,使用 -s system-manufacturer 也可取得製造商的詳細資訊。

如果系統環境是實體機,那麼可以看到製造商的訊息,例如:

$ sudo dmidecode -s system-manufacturer
Dell Inc.

相反,如果是虛擬機,可以將虛擬機的資訊列印出來,如下所示:

$ dmidecode -s system-manufacturer
QEMU

這個指令用起來比較便捷。關於 dmidecode 命令的詳細信息,大家也可以查看 man 手冊。

如果想要查看 Linux 版本的信息,可以使用 uname 指令。因為 dmidecode 指令查看的是硬體訊息,對於軟體資訊來說不適用。

2,使用 virt-what

區分虛擬機器和實體機器的另一個方法是使用 virt-what

基本上,可以將其理解為是一個 shell 腳本,可以作為命令安裝在大多數 Linux 發行版中。安裝指令如下:

sudo apt install virt-what

如果系統運行在一個實體機上,virt-what 指令將不會傳回任何結果;相反,如果是運行在虛擬機器上,將會輸出虛擬機的一些信息,如下所示:

$ virt-what 
kvm

以上是檢查 Linux 系統是運行在虛擬機器還是實體機器上的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:lxlinux.net。如有侵權,請聯絡admin@php.cn刪除