Есть ли способ узнать, работает ли Linux, который я запускаю (фактически устанавливаю), на машине VMWare. Мне нужно отключить настройки ntp, если автоматическая установка выполняется на виртуальной машине, но оставьте их включенными, если нет. При выполнении этой проверки инструменты VMWare не устанавливаются.
Если вы работаете как root, чтобы использовать dmidecode
не работает для ваших нужд, попробуйте lspci
:
$ /sbin/lspci |grep VMware
00:0f.0 VGA compatible controller: VMware SVGA II Adapter
Вам (вероятно) безразлично, что такое виртуальная видеокарта, но вы не найдете этого ответа в реальном оборудовании, поэтому вы можете использовать его в качестве идентификатора.
Я обычно использую dmidecode
чтобы сделать именно это (хотя для этого вам нужен root-доступ). Найдите раздел «Информация о BIOS», в нем обычно в полях «Производитель» или «Версия» установлено значение «VMWare», «VirtualBox» или что-то подобное.
Вы не говорите, какой подход вы используете для этого, но вы, безусловно, можете сделать это на C.
Вы можете проверить MAC-адрес ...
При установке на виртуальную машину MAC-адрес использует формат диапазона VMWARE.