Проверить включена ли виртуализация linux

check if VT-x is activated without having to reboot in Linux?

I have a laptop with Intel Core i5 M 450 @ 2.40GHz which apparently has VT-x but not VT-d. I have Ubuntu 12.04 32bit but would like to have a virtual 64bit terminal-based Linux running on it. How do I know if the BIOS has this VT-x feature activated without having to reboot?

8 Answers 8

You can use rdmsr from msr-tools to read register IA32_FEATURE_CONTROL (address 0x3a). The kernel module msr has to be loaded for this.

sudo modprobe msr sudo rdmsr 0x3a 

Values 3 and 5 mean it’s activated.

Installing msr-tools package on Ubuntu 16.04 (Xenial Xerus) is as easy as running the following command on terminal: sudo apt-get update sudo apt-get install msr-tools

from cpu-checker. On Intel, which has the most complicated logic, kvm-ok checks that if bit 0 of rdmsr 0x3a (the lock bit) is set, bit 2 (which allows virt use outside of SMX mode, something to do with trusted boot) must also be set. If the output of rdmsr 0x3a is anything but 1 or 3, you will be able to use kvm. kvm will set bit 2 of the msr if necessary, I expect virtualbox and the rest have the same logic.

Install cpu-checker and run «kvm-ok»

If the CPU is enabled, you should see something like:

INFO: /dev/kvm exists KVM acceleration can be used 
INFO: /dev/kvm does not exist HINT: sudo modprobe kvm_intel INFO: Your CPU supports KVM extensions INFO: KVM (vmx) is disabled by your BIOS HINT: Enter your BIOS setup and enable Virtualization Technology (VT), and then hard poweroff/poweron your system KVM acceleration can NOT be used 

on Ryzen Fedora 36 virt-host-validate says «Checking if device /dev/kvm exists : FAIL (Check that the ‘kvm-intel’ or ‘kvm-amd’ modules are loaded & the BIOS has enabled virtualisation). Which doesn’t completely clarify whether I need to re-boot to check the BIOS (although kvm-amd is not loaded according to lsmod)

sudo apt-get update sudo apt-get install cpu-checker kvm-ok 

In linux you can check cpuinfo:

cat /proc/cpuinfo| egrep "vmx|svm" 

Are you sure? When I’m inside my vm it give me an empty line but my cpu supports amd-v? In cpu-z I can see amd-v even when I disabled secure virtual machine in the bios?

Читайте также:  Метод конечных элементов linux

@Betterdev I’m not sure the virtual CPU is relevant. Anyway, by saying a CPU info tool reports the presence of AMD-V, despite it being unusable because you disabled SVM in the firmware, you’re proving scai’s point.

This only shows if the CPU has one of those particular extensions; it won’t show anything relevant to the BIOS configuration. Check out the full output without grep to see what it’s about.

I found that scai’s answer doesn’t work on my AMD Ryzen systems.

This however works really well for me, even on Intel:

if systool -m kvm_amd -v &> /dev/null || systool -m kvm_intel -v &> /dev/null ; then echo "AMD-V / VT-X is enabled in the BIOS/UEFI." else echo "AMD-V / VT-X is not enabled in the BIOS/UEFI" fi 

( systool is found in the sysfsutils package on most distros.)

For Intel’s VT-D / AMD’s IOMMU, I came up with this solution:

if compgen -G "/sys/kernel/iommu_groups/*/devices/*" > /dev/null; then echo "AMD's IOMMU / Intel's VT-D is enabled in the BIOS/UEFI." else echo "AMD's IOMMU / Intel's VT-D is not enabled in the BIOS/UEFI" fi 

(It even worked for me if the iommu kernel parameters are not set.)

Note: This requires the sysfsutils package, but does not return an error if you don’t have it (it just returns «you don’t have virt stuff»).

A simple approach to confirm that Vt-D is enabled in the BIOS is through the Linux system. If the VT-D is enable in the BIOS and Iommu=on in the grub.cfg then the below folder structure is created automatically to hold the Virtual devices.

Whereas if either one of the options VT-D or Iommu is not configured/enabled then the above mentioned folder structure is not created. This behavior is confirmed in CentOS 7.4 and Ubuntu. Hopefully this behavior is similar for other operating systems as well but this would need to be confirmed.

Источник

Проверьте, какая технология виртуализации поддерживается вашим процессором в Debian

Технология виртуализации позволяет вашему процессору действовать как нескольким независимым компьютерным системам. Это позволяет нескольким операционным системам работать на одной машине одновременно. Если вы хотите установить на систему Debian приложения виртуализации, такие как VMware Workstation, VirtualBox и т.д., сначала проверьте, поддерживает ли ваша система виртуализацию и включена ли она. Только после этого вы сможете запускать виртуальные машины, используя один процессор.

В статье описаны следующие методы проверки того, поддерживается ли виртуальная технология вашим процессором в системе Debian:

  • команда lscpu
  • утилита cpu-checker
  • файл /proc/cpuinfo
  • клиентская утилита Libvirt

Вы можете повторить команды и процедуры, упомянутые в этой статье, на системе Debian.

Читайте также:  Команда линукс просмотр процессов

Поскольку мы будем использовать командный лин Debian для проверки VT на нашем процессоре, вы можете открыть Терминал через поиск приложений следующим образом:

Открытие терминала

Проверьте, включен ли VT в процессоре

Здесь мы объясним вам 4 простых способа проверить, включен ли VT в вашем процессоре:

1. Метод: С помощью команды lscpu

Команда lscpu является популярным методом извлечения информации об архитектуре вашего процессора. Эта команда извлекает информацию об аппаратном обеспечении из файла /pro/cpuinfo в sysfs. Эта информация включает в себя количество процессоров, режим работы процессора, сокеты, ядра, потоки, название модели, информацию о виртуализации и многое другое.

Просто выполните следующую команду в Терминале:

Вот формат вывода, который вы обычно видите:

lscpu command

Перейдите к выводу Virtualization; результат AMD-V здесь гарантирует, что виртуализация действительно включена в нашей системе.

2. Метод: Через утилиту cpu-checker

Утилита cpu-checker — это еще один способ проверить технологию виртуализации, помимо многих других вещей. Поскольку большинство систем Linux не имеют этой утилиты по умолчанию, вы можете установить ее, выполнив следующую команду от имени sudo:

sudo apt-get install cpu-checker

Установка CPU Checker

Обратите внимание, что только авторизованный пользователь может добавлять/удалять и настраивать программное обеспечение в Debian.

После того, как вы ввели пароль sudo, система может предложить вам ввести y/n, чтобы проверить, хотите ли вы продолжить установку. Пожалуйста, введите y и нажмите Enter, после чего cpu-checker будет установлен в вашу систему.

Следующая команда из этой утилиты поможет вам проверить, поддерживается ли виртуализация вашим процессором или нет:

команда kvm-ok

Приведенный выше результат указывает на то, что VT включена в вашей системе. Однако если вы получите следующее сообщение, это означает, что вам необходимо включить виртуализацию, чтобы использовать приложения, работающие на этой технологии:

INFO: Your CPU does not support KVM extensions
KVM acceleration can NOT be used

Ваш процессор поддерживает расширения KVM

Раздел HINT на скриншоте выше объясняет, как вы можете включить VT на вашей системе.

3. Метод: Из файла /proc/cpuinfo

Мы также можем вручную извлечь соответствующую информацию из файла /proc/cpuinfo с помощью команды egrep. Например, поскольку мы хотим извлечь информацию, связанную с виртуализацией, мы можем использовать команду egrep следующим образом, чтобы извлечь информацию, связанную с svm или vmx:

В выводе вы увидите одну из следующей информации, которая подтвердит, что виртуализация включена в вашей системе:

Svm: Информация о поддержке AVM-V

Vmx: Информация о поддержке технологии Intel-VT

Вот вывод вышеупомянутой команды на моей системе:

Check CPU Info

Признак vmx и информация в выводе указывают на то, что виртуальная технология Intel-VT включена и поддерживается моей системой. Если вы не найдете никакого вывода для этой команды, это означает, что /proc/cpuinfo не содержит никакой информации о VT, и она либо недоступна, либо отключена в настройках BIOS.

Читайте также:  Rescue disk for linux

4. Метод: Через клиентскую утилиту Libvirt

Существует инструмент проверки виртуальных хостов под названием virt-host-validate. Для его использования необходимо, чтобы в вашей системе был установлен пакет libvert-clients. Поскольку большинство систем Linus не имеют этого пакета по умолчанию, вы можете установить его, выполнив следующую команду от имени sudo:

sudo apt-get install libvirt-clients

Установка Libvirt

После того, как вы введете пароль sudo, система может предложить вам ввести y/n, чтобы проверить, хотите ли вы продолжить установку. Пожалуйста, введите y и нажмите Enter, после чего cpu-checker будет установлен на вашу систему.

Следующая команда virt-host-validate из этой утилиты поможет вам проверить, поддерживается ли виртуализация вашим процессором или нет, а также многое другое:

Результат проверки процессора

Вы можете видеть, что «QEMU: checking for hardware virtualization» (проверка аппаратной виртуализации) показывает статус результата как PASS на моей системе. Это указывает на то, что VT действительно включена на моем процессоре. Если статус результата «FAIL» в любом выводе, это означает, что виртуализация либо не поддерживается, либо не включена.

Итак, теперь у вас есть не один, а четыре очень простых способа проверить, поддерживает ли ваше оборудование виртуализацию. В этом и заключается сила Linux: с помощью всего одной команды вы можете выполнить, казалось бы, сложную задачу.

Похожие записи:

Источник

Linux Check If CPU Supports Virtualization

This post will guide you how to check if your processor support Intel-VT or AMD-V hardware virtualization in Linux. How do I find out if my system CPU supports virtualization under Linux operating system.

Linux Check If CPU Supports Virtualization

To Check if CPU supports virtualization in Linux, you need to check the /proc/cpuinfo file to see if it contain virtualization flag.

For AMD CPU, issue the following command to verify that if your CPU support AMD-V virtualization technology:

For Intel CPU, issue the following command to verify that if your CPU support Intel VT CPU virtualization.

You can also use the lscpu tool to get more information about the CPU architecture. It will gathers CPU architecture information from sysfs and /proc/cpuinfo. So it also can be used to check if your system support virtualization.

Type the following command:

[root@devops ~]# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 1 On-line CPU(s) list: 0 Thread(s) per core: 1 Core(s) per socket: 1 Socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 42 Model name: Intel(R) Core(TM) i3-2350M CPU @ 2.30GHz Stepping: 7 CPU MHz: 2294.792 BogoMIPS: 4589.58 Hypervisor vendor: KVM Virtualization type: full L1d cache: 32K L1i cache: 32K L2 cache: 256K L3 cache: 3072K NUMA node0 CPU(s): 0

Источник

Оцените статью
Adblock
detector