GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So finden Sie heraus, ob eine CPU die Virtualisierungstechnologie (VT) unterstützt

Wir wussten bereits, wie man prüft, ob ein Linux-Betriebssystem 32-Bit oder 64-Bit ist und wie man herausfindet, ob ein Linux-System eine physische oder virtuelle Maschine ist . Heute lernen wir noch ein weiteres nützliches Thema kennen, nämlich wie man feststellt, ob eine CPU die Virtualisierungstechnologie (VT) unterstützt oder nicht. Dies sollte das erste sein, was Sie überprüfen sollten, bevor Sie Virtualisierungsanwendungen wie KVM installieren oder VirtualBox oder VMWare Workstation, um virtuelle Maschinen auf Ihrem Linux-System auszuführen. Lassen Sie uns nun herausfinden, ob unser Computer VT unterstützt oder nicht.

Finden Sie heraus, ob eine CPU Virtualization Technology (VT) in Linux unterstützt

Wir können mit verschiedenen Methoden überprüfen, ob unsere CPU VT unterstützt. Hier habe ich vier Methoden aufgelistet.

Methode 1:Verwenden des "egrep"-Befehls

Egrep ist eine der Varianten von Grep Befehlszeilenprogramm, das zum Durchsuchen von Textdateien mit regulären Ausdrücken verwendet wird.

Um herauszufinden, ob Ihre CPU VT mit dem Befehl egrep unterstützt, führen Sie Folgendes aus:

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

Dieser Befehl grep /cpu/procinfo/ Datei und zeigt an, ob die CPU VT unterstützt oder nicht.

Beispielausgabe:

Sie erhalten entweder "vmx" (Intel-VT-Technologie) oder "svm" (AMD-V-Unterstützung) in der Ausgabe.

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
[...]

Da die Ausgabe sehr lang ist, kann es etwas schwierig sein, die Wörter "vmx" oder "svm" zu finden. Keine Bange! Sie können diese Begriffe mit Farben wie unten unterscheiden.

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

Beispielausgabe:

Finden Sie heraus, ob eine CPU Virtualisierung unterstützt, indem Sie den Befehl egrep in Linux verwenden

Wenn Sie keine Ausgabe erhalten, bedeutet dies, dass Ihr System keine Virtualisierung unterstützt.

Bitte beachten Sie, dass diese CPU-Flags (vmx oder svm) in der /proc/cpuinfo Datei gibt an, dass Ihr System VT unterstützt. Bei einigen CPU-Modellen ist die VT-Unterstützung möglicherweise standardmäßig im BIOS deaktiviert. In solchen Fällen sollten Sie Ihre BIOS-Einstellungen überprüfen, um die VT-Unterstützung zu aktivieren.

Methode 2 - Verwendung des "lscpu"-Befehls

Der Befehl "lscpu" wird verwendet, um die Informationen über Ihre CPU-Architektur anzuzeigen. Es sammelt Informationen aus der Datei sysfs, /proc/cpuinfo und zeigt die Anzahl der CPUs, Threads, Kerne, Sockets und Non-Uniform Memory Access (NUMA)-Knoten Ihres Hostsystems an.

Um herauszufinden, ob die VT-Unterstützung aktiviert ist oder nicht, führen Sie einfach Folgendes aus:

$ lscpu

Finden Sie heraus, ob eine CPU Virtualisierung unterstützt, indem Sie den Befehl lscpu in Linux verwenden

Methode 3 - Verwenden des Dienstprogramms "Cpu-Checker"

Cpu-Checker ist ein weiteres nützliches Dienstprogramm zum Testen Ihrer CPU auf Virtualisierungsunterstützung. Soweit ich im Internet gesucht habe, ist dieses Dienstprogramm nur für Ubuntu-basierte Systeme verfügbar. Um es zu installieren, führen Sie Folgendes aus:

$ sudo apt-get install cpu-checker

Führen Sie nach der Installation des cpu-checker-Pakets den folgenden Befehl aus, um zu prüfen, ob die VT-Unterstützung aktiviert ist oder nicht:

$ kvm-ok

Wenn Ihre CPU VT unterstützt, erhalten Sie die folgende Ausgabe:

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

Finden Sie mit cpu-checker heraus, ob eine CPU Virtualisierung unterstützt

Wenn Ihre CPU VT nicht unterstützt, sehen Sie eine Ausgabe wie unten.

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

Methode 4 – Verwenden des Tools „virt-host-validate“

Dieses Tool ist speziell für RHEL-basierte Distributionen wie CentOS und Scientific Linux gedacht. Der libvirt-Client Paket stellt virt-host-validate bereit binär. Sie müssen also das Paket "libvert-client" installieren, um dieses Tool zu verwenden.

$ sudo yum install libvirt-client

Führen Sie nun den Befehl „virt-host-validate“ aus, um festzustellen, ob VT in Ihren RHEL-basierten Systemen aktiviert ist oder nicht.

$ sudo virt-host-validate

Wenn Sie bestanden bekommen Für alle Ergebnisse unterstützt Ihr System 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

Wenn Ihr System VT nicht unterstützt, sehen Sie eine Ausgabe wie unten.

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

Und das ist alles für jetzt. In diesem Handbuch haben wir verschiedene Methoden besprochen, um herauszufinden, ob eine CPU VT unterstützt oder nicht. Wie Sie sehen können, war es sehr einfach. Ich hoffe, das war hilfreich.


Linux
  1. So finden Sie die am häufigsten ausgeführten Prozesse nach Speicher- und CPU-Auslastung

  2. So finden Sie die Anzahl der CPU-Sockets auf einem CentOS/RHEL-System

  3. So erhalten Sie die CPU-Auslastung

  4. So finden Sie heraus, welcher Prozess eine hohe CPU-Auslastung verursacht

  5. Wie finde ich den Status von wlan0?

So überprüfen Sie, ob Ihr Prozessor die Virtualisierungstechnologie auf Ubuntu unterstützt

So finden Sie die Top 10 der laufenden Prozesse nach Speicher- und CPU-Auslastung

So finden Sie CPU-Informationen in Linux über die Befehlszeile

Wie man die CPU-Auslastung findet, was das System zum Hängen bringt

So finden Sie die am häufigsten ausgeführten Prozesse nach Speicher- und CPU-Auslastung in Linux

So finden Sie Dateien in Debian