オペレーティングシステムが仮想環境で実行されていることを確認する

オペレーティングシステムが仮想環境で実行されていることを確認する

私が実行している(実際にインストールされた)オペレーティングシステムがVMWareシステムで実行されていることを確認する方法はありますか?仮想マシンでサイレントインストールが実行されている場合は設定を無効にする必要がありますが、ntpベアメタルにインストールする場合は有効にしておく必要があります。

答え1

Linuxは、カーネルがある種のハイパーバイザーが実行中であることを検出すると、このhypervisorフラグを追加します。/proc/cpuinfo

答え2

Linuxでは、次のコマンドを使用できます。virt-what

[root@myhost]# virt-what
vmware

Windows上のLinuxのサンプル出力スーパーV

[root@linuxvm11~] # virt-what
hyperv

centos8の出力例仮想デバイス

CentOS:root@box003:~/CM/bin/tools# virt-what
vmware

答え3

これは、メーカーと製品名に関する具体的な情報を提供するので、私にとってより効果的です。

dmidecode -t system|grep 'Manufacturer\|Product'

Dellサーバーの出力:

Manufacturer: Dell Inc.
Product Name: PowerEdge C5220

Virtualbox 仮想マシンの出力:

Manufacturer: innotek GmbH
Product Name: VirtualBox

KVM/QEMUの出力:

Manufacturer: QEMU
Product Name: Standard PC (i440FX + PIIX, 1996)

これは、サーバーをよりよく識別するためにそれを解析できるスクリプトに役立ちます。ただし、インフラストラクチャでChefを使用している場合は、Virtualization -> systemChefサーバーでノードのプロパティを確認できます。

答え4

dmidecodeorlshwとingを使用することgrepがわかる最善の方法のようです。

関連情報