
Я хочу узнать, есть ли способ определить, является ли текущий сервер, который я использую, физическим устройством или виртуальной машиной Hyper V.
Есть ли что-нибудь в Windows, что могло бы мне об этом сказать? Любая настройка, ключ реестра в Windows? Или какой-нибудь скрипт, который мог бы мне это сказать?
У меня нет физического доступа к серверу, могу только войти на сервер.
решение1
Используйте wmic (или самостоятельно напишите скрипт с помощью wmi). Используйте команду wmic baseboard get manufacturer,product
и проверьте значения.
Если производитель читает Microsoft (или vmware или Oracle), это, скорее всего, vm, а хост VM назван как продукт. У меня сейчас нет hyper V box, но virtualbox идентифицирует себя как произведенный oracle, а virtualbox как продукт.
На моем ноутбуке Lenovo указан как производитель, а полный SKU как модель. Вы, вероятно, обнаружите похожее поведение между программным обеспечением VM и фактическим оборудованием. На моем настольном компьютере Asustek указан как производитель, а модель материнской платы как продукт
Этого должно быть достаточно, чтобы определить, находится ли ваша система в виртуальной машине или нет.
решение2
Вы можете открыть msinfo32.exe
и проверить сводку системы.
Системная модельпоказывает, является ли Машина Виртуальной/Физической.
Физические машины:
Виртуальные машины: