Допустим вы не знаете, работаете ли вы на физической или виртуальной машине.
Не всегда имеется физический доступ к вашим серверам и вы даже можете не знать, где находится сервер.
Как это проверить в Linux?
Утилита Dmidecode предустановлена в большинстве дистрибутивов Linux. Если ее нет то установите.
В терминале Ubuntu:
sudo apt-get install dmidecodesudo dmidecode -s system-manufacturer
HP — физическая система.
innotek GmbH — виртуальная система, созданная с помощью Virtualbox.
QEMU — виртуальная система, созданная с помощью KVM/QEMU.
sudo dmidecode | grep ProductС помощью утилиты dmesg.
sudo dmesg | grep "Hypervisor detected"[ 0.000000] Hypervisor detected: KVM
Так же можно посмотреть с помощью команды hostnamectl.
hostnamectl statusв терминал выплюнет описание то что у вас на борту.
Инструмент systemd-detect-virt обнаруживает технологию виртуализации и может отличить полную виртуализацию машины от аппаратной или контейнерной виртуализации.
systemd-detect-virt#### Для физической машины ####
none
#### Для виртуальной машины ####
kvm