Поиск по сайту:

Узнайте, поддерживает ли процессор технологию виртуализации (VT)

Мы уже знали, как проверить, является ли ОС Linux 32-битной или 64-битной и как определить, является ли система Linux физической или виртуальной машиной. Сегодня мы собираемся изучить еще одну полезную тему: как определить, поддерживает ли процессор технологию виртуализации (VT) или нет. Это первый шаг, который вам следует сделать перед установкой приложений виртуализации, таких как KVM, Proxmox, Gnome Boxes, Quickemu. >, VirtualBox и VMWare для запуска виртуальных машин в вашей системе Linux. Теперь давайте продолжим и выясним, поддерживает ли наш процессор VT или нет.

Узнайте, поддерживает ли процессор технологию виртуализации (VT) в Linux

Мы можем проверить, поддерживает ли наш процессор VT различными способами. Здесь я перечислил четыре метода.

Способ 1: использование команды egrep

Egrep — это один из вариантов утилиты командной строки Grep, которая используется для поиска текстовых файлов с помощью регулярных выражений.

Чтобы узнать, поддерживает ли ваш процессор VT, используйте команду egrep, запустите:

egrep "(svm|vmx)" /proc/cpuinfo

Эта команда создаст файл /cpu/procinfo и покажет, поддерживает ли процессор VT или нет.

Пример вывода:

В выходных данных вы получите либо "vmx" (технология Intel-VT), либо "svm" (поддержка AMD-V).

flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer xsave avx lahf_lm epb pti tpr_shadow vnmi flexpriority ept vpid xsaveopt dtherm arat pln pts
[...]

Поскольку вывод очень длинный, может быть сложно найти слова «vmx» или «svm». Не беспокойся! Вы можете различать эти термины цветами, как показано ниже.

egrep --color -i "svm|vmx" /proc/cpuinfo

Пример вывода:

Узнайте, поддерживает ли процессор виртуализацию с помощью команды egrep в Linux

Если вы не получаете никаких результатов, это означает, что ваша система не поддерживает виртуализацию.

Обратите внимание, что эти флаги ЦП (vmx или svm) в файле /proc/cpuinfo указывают на то, что ваша система будет поддерживать VT. В некоторых моделях ЦП поддержка VT может быть отключена в BIOS по умолчанию. В таких случаях вам следует проверить настройки BIOS, чтобы включить поддержку VT.

Способ 2. Использование команды lscpu

Команда lscpu используется для отображения информации об архитектуре вашего процессора. Он собирает информацию из файлов sysfs, /proc/cpuinfo и отображает количество процессоров, потоков, ядер, сокетов и узлов неоднородного доступа к памяти (NUMA) вашего компьютера. хост-система.

Чтобы узнать, включена поддержка VT или нет, просто запустите:

lscpu

Узнайте, поддерживает ли процессор виртуализацию с помощью команды lscpu в Linux

Способ 3 — Использование утилиты CPU-checker

Cpu-checker — еще одна полезная утилита для проверки вашего процессора на поддержку виртуализации. Насколько я искал в Интернете, эта утилита доступна только для систем на базе Ubuntu. Чтобы установить его, запустите:

sudo apt-get install cpu-checker

После установки пакета cpu-checker выполните следующую команду, чтобы проверить, включена ли поддержка VT:

kvm-ok

Если ваш процессор поддерживает VT, вы получите следующий вывод:

INFO: /dev/kvm exists
KVM acceleration can be used

Узнайте, поддерживает ли процессор виртуализацию с помощью cpu-checker

Если ваш процессор не поддерживает VT, вы увидите вывод, подобный приведенному ниже.

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

Способ 4. Использование инструмента virt-host-validate

Этот инструмент специально предназначен для дистрибутивов на основе RHEL, таких как CentOS и Scientific Linux. Пакет libvirt-client предоставляет двоичный файл virt-host-validate. Поэтому вам необходимо установить пакет «libvert-client», чтобы использовать этот инструмент.

sudo yum install libvirt-client

Теперь запустите команду «virt-host-validate», чтобы узнать, включено ли VT в ваших системах на базе RHEL.

sudo virt-host-validate

Если вы получили прошел для всех результатов, ваша система поддерживает VT.

 QEMU: Checking for hardware virtualization : PASS
 QEMU: Checking if device /dev/vhost-net exists : PASS
 QEMU: Checking if device /dev/net/tun exists : PASS
 QEMU: Checking for cgroup 'memory' controller support : PASS
 QEMU: Checking for cgroup 'memory' controller mount-point : PASS
 QEMU: Checking for cgroup 'cpu' controller support : PASS
 QEMU: Checking for cgroup 'cpu' controller mount-point : PASS
 QEMU: Checking for cgroup 'cpuacct' controller support : PASS
 QEMU: Checking for cgroup 'cpuacct' controller mount-point : PASS
 QEMU: Checking for cgroup 'cpuset' controller support : PASS
 QEMU: Checking for cgroup 'cpuset' controller mount-point : PASS
 QEMU: Checking for cgroup 'devices' controller support : PASS
 QEMU: Checking for cgroup 'devices' controller mount-point : PASS
 QEMU: Checking for cgroup 'blkio' controller support : PASS
 QEMU: Checking for cgroup 'blkio' controller mount-point : PASS
 QEMU: Checking for device assignment IOMMU support : PASS
 LXC: Checking for Linux >= 2.6.26 : PASS
 LXC: Checking for namespace ipc : PASS
 LXC: Checking for namespace mnt : PASS
 LXC: Checking for namespace pid : PASS
 LXC: Checking for namespace uts : PASS
 LXC: Checking for namespace net : PASS
 LXC: Checking for namespace user : PASS
 LXC: Checking for cgroup 'memory' controller support : PASS
 LXC: Checking for cgroup 'memory' controller mount-point : PASS
 LXC: Checking for cgroup 'cpu' controller support : PASS
 LXC: Checking for cgroup 'cpu' controller mount-point : PASS
 LXC: Checking for cgroup 'cpuacct' controller support : PASS
 LXC: Checking for cgroup 'cpuacct' controller mount-point : PASS
 LXC: Checking for cgroup 'cpuset' controller support : PASS
 LXC: Checking for cgroup 'cpuset' controller mount-point : PASS
 LXC: Checking for cgroup 'devices' controller support : PASS
 LXC: Checking for cgroup 'devices' controller mount-point : PASS
 LXC: Checking for cgroup 'blkio' controller support : PASS
 LXC: Checking for cgroup 'blkio' controller mount-point : PASS

Если ваша система не поддерживает VT, вы увидите результат, как показано ниже.

QEMU: Checking for hardware virtualization : FAIL (Only emulated CPUs are available, performance will be significantly limited)
[...]

Заключение

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

Статьи по данной тематике