GNU/Linux >> Linux Esercitazione >  >> Linux

Come scoprire se una CPU supporta la tecnologia di virtualizzazione (VT)

Sapevamo già come verificare se un sistema operativo Linux è a 32 o 64 bit e come trovare se un sistema Linux è una macchina fisica o virtuale . Oggi impareremo un altro argomento utile, ovvero come scoprire se una CPU supporta o meno la tecnologia di virtualizzazione (VT). Questa dovrebbe essere la prima cosa che potresti voler verificare prima di installare applicazioni di virtualizzazione come KVM o VirtualBox o VMWare workstation per eseguire macchine virtuali sul tuo sistema Linux. Ora andiamo a scoprire se il nostro computer supporta VT o meno.

Trova se una CPU supporta la tecnologia di virtualizzazione (VT) in Linux

Possiamo verificare se la nostra CPU supporta VT in vari metodi. Qui ho elencato quattro metodi.

Metodo 1:utilizzo del comando "egrep"

Egrep è una delle varianti di Grep utilità della riga di comando che viene utilizzata per cercare file di testo con espressioni regolari.

Per scoprire se la tua CPU supporta VT usando il comando egrep, esegui:

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

Questo comando greprà /cpu/procinfo/ file e visualizzare se la CPU supporta VT o meno.

Risultato di esempio:

Otterrai "vmx" (tecnologia Intel-VT) o "svm" (supporto AMD-V) nell'output.

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

Poiché l'output è molto lungo, potrebbe essere un po' difficile trovare le parole "vmx" o "svm". Nessun problema! Puoi distinguere questi termini con colori come di seguito.

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

Risultato di esempio:

Scopri se una CPU supporta la virtualizzazione utilizzando il comando egrep in Linux

Se non ottieni alcun output, significa che il tuo sistema non supporta la virtualizzazione.

Tieni presente che questi flag della CPU (vmx o svm) in /proc/cpuinfo indica che il tuo sistema supporterà VT. In alcuni modelli di CPU, il supporto VT potrebbe essere disabilitato nel BIOS, per impostazione predefinita. In questi casi, dovresti controllare le impostazioni del BIOS per abilitare il supporto VT.

Metodo 2:utilizzo del comando "lscpu"

Il comando "lscpu" viene utilizzato per visualizzare le informazioni sull'architettura della CPU. Raccoglie informazioni da sysfs, file /proc/cpuinfo e mostra il numero di CPU, thread, core, socket e nodi NUMA (Non-Uniform Memory Access) del tuo sistema host.

Per scoprire se il supporto VT è abilitato o meno, è sufficiente eseguire:

$ lscpu

Scopri se una CPU supporta la virtualizzazione utilizzando il comando lscpu in Linux

Metodo 3:utilizzo dell'utilità "Cpu-checker"

Controllo CPU è ancora un'altra utile utility per testare la tua CPU per il supporto della virtualizzazione. Per quanto ho cercato sul web, questa utility è disponibile solo per i sistemi basati su Ubuntu. Per installarlo, esegui:

$ sudo apt-get install cpu-checker

Una volta installato il pacchetto cpu-checker, eseguire il comando seguente per verificare se il supporto VT è abilitato o meno:

$ kvm-ok

Se la tua CPU supporta VT, otterrai il seguente output:

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

Scopri se una CPU supporta la virtualizzazione utilizzando cpu-checker

Se la tua CPU non supporta VT, vedrai un output simile a quello di seguito.

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

Metodo 4:utilizzo dello strumento "virt-host-validate"

Questo strumento è specifico per distribuzioni basate su RHEL come CentOS e Scientific Linux. Il client libvirt il pacchetto fornisce virt-host-validate binario. Quindi è necessario installare il pacchetto "libvert-client" per utilizzare questo strumento.

$ sudo yum install libvirt-client

Ora, esegui il comando "virt-host-validate" per scoprire se VT è abilitato o meno nei tuoi sistemi basati su RHEL.

$ sudo virt-host-validate

Se ottieni il pass per tutti i risultati, il tuo sistema supporta 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

Se il tuo sistema non supporta VT, vedrai un output come di seguito.

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

E per ora è tutto. In questa guida, abbiamo discusso vari metodi per scoprire se una CPU supporta VT o meno. Come puoi vedere, è stato molto facile. Spero che questo sia stato utile.


Linux
  1. Come trovare il numero di socket CPU su un sistema CentOS/RHEL

  2. Come ottenere l'utilizzo della CPU

  3. Come faccio a sapere che la mia CPU supporta i sistemi operativi a 64 bit sotto Linux?

  4. Come faccio a sapere se la mia scheda wireless supporta i 5 GHz?

  5. Come trovare lo stato di wlan0?

Come verificare se il tuo processore supporta la tecnologia di virtualizzazione su Ubuntu

Come trovare i 10 principali processi in esecuzione in base all'utilizzo di memoria e CPU

Come trovare informazioni sulla CPU in Linux utilizzando la riga di comando

Come trovare l'utilizzo della CPU, cosa blocca il sistema

Come trovare i migliori processi in esecuzione in base all'utilizzo di memoria e CPU in Linux

Come trovare file in Debian