VT-x non è disponibile, ma è abilitato nel BIOS


114

Di recente ho iniziato a riscontrare un problema con VT-x sul mio Windows 10 in esecuzione su HP EliteBook. Stavo usando Oracle VirtualBox per eseguire alcune VM su di esso prima e VT-x era abilitato nel BIOS e funzionava bene.

Ho iniziato a ricevere VT-x is not availableerrori ogni volta che stavo cercando di avviare una delle mie macchine virtuali. Ciò è iniziato dopo che ho installato Docker sul mio computer, quindi ho provato a disinstallarlo e riavviare. Non ha aiutato

Ho controllato le impostazioni del BIOS e dice che VT-x è abilitato, ma il controllo con Intel (R) Processor Identification Utility mostra che VT-x non è supportato e Oracle VirtualBox non lo vede.

Non sono state apportate modifiche all'hardware e l'unica modifica al software è stata l'installazione / disinstallazione di Docker.

Come si può risolvere questo problema?

Risposte:


151

Esistono tre colpevoli comuni per il tipo di errore visualizzato dall'utente:

  • VT-x non è abilitato nel BIOS
  • La CPU non supporta VT-x
  • La virtualizzazione Hyper-V è abilitata in Windows

Poiché l'utente ha già eliminato i primi due possibili colpevoli, il passaggio successivo è aprire un prompt dei comandi come amministratore ed eseguire il comando seguente:

dism.exe /Online /Disable-Feature:Microsoft-Hyper-V

Successivamente, riavvia il PC e riprova VirtualBox.


40
Per chiarire ulteriormente: Docker funziona su Windows Hyper-V. L'installazione Docker l'ha attivata, ma la disinstallazione non ha disattivato Hyper-V.
Tonny,

@cat: è una risorsa condivisa, al fine di disabilitarlo correttamente quando l'ultimo componente a seconda di esso viene rimosso, avresti bisogno di una sorta di conteggio dei riferimenti.
Ben Voigt,

2
Per completezza: ciò può accadere anche con alcuni virus che utilizzano VT-x per nascondersi dal sistema operativo. Questi sono raramente però.
Simon Richter,

4
Va notato che Hyper-V supporta tecnicamente la virtualizzazione nidificata dall'aggiornamento 1607. Se hai bisogno di Hyper-V e VBox contemporaneamente, puoi provare ad abilitarlo .
Bob,

3
Inoltre, anche la funzione [Piattaforma macchina virtuale] dovrebbe essere disabilitata.
lintabá

17

Dopo aver aggiornato Windows 10 a "Fall Creators Update" ho avuto lo stesso problema. L'ho risolto con i seguenti passaggi:

  1. Abilita tutte le funzionalità in "Hyper-V" in "Attiva o disattiva le funzionalità di Windows".
  2. Ricomincia.
  3. Disattiva tutte le funzionalità in "Hyper-V" in "Attiva o disattiva le funzionalità di Windows".
  4. Ricomincia.
  5. Ora VirtualBox funziona di nuovo e mostra (64 bit) nel suo elenco di sistemi operativi.

5
Per gli impazienti: la disabilitazione di Hyper-V ha richiesto Windows diversi minuti.
Jens Piegsa,

4
sfortunatamente non ha funzionato per me ...
Mahdi Rashidi,

Ha avuto lo stesso problema dopo l'aggiornamento win10, il colpevole è l'aggiornamento che abilita la funzione hyper-v. quindi ho fatto un po 'di tentativi ed errori alla fine ha funzionato: abilita Intel virtu .. e vt-d dal BIOS quindi disabilita la piattaforma Windows Hypervisor e la piattaforma Macchina virtuale dal pannello di controllo> funzionalità di Windows
accese

6

Quando ho avuto questo problema, VMWare Player ha fornito una risposta diagnostica migliore rispetto a VirtualBox quando ho provato a creare una macchina virtuale a 64 bit.

Diceva che sulla mia macchina erano abilitate le funzioni enterprise Device Guard e Credential Guard . Suppongo che siano stati abilitati quando ho eseguito MalwareBytes; Non riesco a pensare a nessun altro cambiamento che ho apportato.

VMWare Player mi ha indirizzato a una pagina chiamata Gestisci Windows Defender Credential Guard . Quella pagina ha un sacco di cose sulle impostazioni di Group Policy Manager e simili, che ovviamente sono irrilevanti per un'installazione W10 HOME.

A sua volta, quella pagina mi ha indicato lo strumento di prontezza hardware Device Guard e Credential Guard , uno strumento PowerShell per abilitare e disabilitare questo set di funzionalità sui server.

Eseguendo quello strumento in una shell di alimentazione Run-As-Administrator e dando questo comando

 .\DG_Readiness_Tool_v3.5.ps1 -Disable -AutoReboot

mi ha portato attraverso il processo di disabilitazione di quelle funzionalità.

E ho la capacità di virtualizzazione indietro.


6

Se stai utilizzando l'ultimo build di Windows 10, disabilita Integrazione memoria in Sicurezza dispositivo e riavvia.

Mi sono imbattuto in un problema con la scatola virtuale quando ho abilitato questa opzione. Disabilitare ha funzionato per me.

Core Isolation - Schermata di integrità della memoria


2

Virtualbox funzionava bene. Ho aggiornato l' anti-virus Avast oggi, 29 giugno 2017. Virtualbox quindi ha dato l'errore VT-x. In Impostazioni Avast, vai su Risoluzione dei problemi e abilita "Usa virtualizzazione nidificata ove disponibile", quindi riavvia il PC. Questo ha funzionato per me senza altre modifiche richieste.


Avendo schermate blu qui da oggi (vmm.sys), utilizzo avast gratis ma non vedo quell'opzione.
Dan,

Ho avuto lo stesso problema con Windows Defender. Ho abilitato Device Security - Core Isolation. La disabilitazione ha risolto il mio problema.
Tsuharesu,

2

Sono stato inciampato dal fatto che c'erano due opzioni nella finestra di dialogo Funzionalità di Windows per disattivare:

  • Hyper-V
  • Piattaforma Windows Hypervisor

Avevo tentato un aggiornamento a VirtualBox 6 e alcuni problemi di prestazioni, e ho eseguito il downgrade a VirtualBox 5 e ho avuto questi problemi. Spero che questo aiuti qualcun altro.


0

Sono arrivato a questo post pensando che VT-x non fosse abilitato, perché Hyper-V mi stava dicendo che "La macchina virtuale utilizza funzionalità specifiche del processore non supportate sul computer fisico". Ciò è iniziato dopo l'installazione degli aggiornamenti di Windows e il riavvio del server. In realtà, VT-x era effettivamente abilitato.

La correzione consisteva nell'eliminazione dello stato salvato per tutte le macchine virtuali, di fatto uno spegnimento.

Sembra che il motivo sia stato un aggiornamento del microcodice della CPU, ma è difficile essere certi, è solo qualcosa che è emerso in una serie di risultati di ricerca.


0

Come menzionato in un'altra risposta, l' isolamento Core , Application Guard, Credential Guard e Device Guard utilizzano la funzione Hyper-V. Se non hai bisogno di quel livello di sicurezza puoi disabilitarli eseguendo

DG_Readiness_Tool_v3.5.ps1 -Enable -AutoReboot

o

mountvol X: /s
copy %WINDIR%\System32\SecConfig.efi X:\EFI\Microsoft\Boot\SecConfig.efi /Y
bcdedit /create {0cb3b571-2f2e-4343-a879-d86a476d7215} /d "DebugTool" /application osloader
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} path "\EFI\Microsoft\Boot\SecConfig.efi"
bcdedit /set {bootmgr} bootsequence {0cb3b571-2f2e-4343-a879-d86a476d7215}
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} loadoptions DISABLE-LSA-ISO,DISABLE-VBS
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} device partition=X:
bcdedit /set hypervisorlaunchtype off
mountvol X: /d

Informazioni più dettagliate su tali comandi sono disponibili in Gestione credenziali di Windows Defender

Tuttavia, su Windows 10 Build 18305 e versioni successive , oltre alle funzionalità di protezione, Windows Sandbox abiliterà anche Hyper-V, poiché è anche un sottile strato di virtualizzazione

Se vuoi usare la funzione sandbox, sfortunatamente non puoi disabilitare Hyper-V come in altre risposte. Ci sono 2 soluzioni per questo

  • Utilizzare invece Hyper-V. Se hai VM in esecuzione su altri hypervisor come VirtualBox, esegui semplicemente la migrazione su Hyper-V
  • Abilitare il paging nidificato in modo da poter eseguire altri hypervisor all'interno di Hyper-V. È sufficiente eseguire il comando seguente per abilitare quella funzione

    Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
    

Per maggiori informazioni leggi


bcdedit /set hypervisorlaunchtype offha funzionato per me
user1641838

@utente1641838 hai letto tutte le risposte? Ci sono molte nuove funzionalità che useranno la virtualizzazione, quindi non sarai in grado di eseguire un altro hypervisor anche se hai disattivato Hyper-V
phuclv,

sì, ho letto e provato tutte le risposte in questa discussione. E c'era anche una schermata blu dopo aver eseguito DG_Readiness_Tool. bcdedit /set hypervisorlaunchtype offè l'unico modo per sbarazzarmi del coso "VT-x non è disponibile". Altre questioni sono venute dopo, però. E finalmente sono passato a Hyper-V. A proposito, sto usando l'anteprima di Windows Insider, quindi il mio millage può variare.
user1641838

0

Ho lo stesso problema su Virtualbox e ho verificato quanto segue sul mio computer

  • VT-x è abilitato nel BIOS
  • La virtualizzazione Hyper-V e la piattaforma Windows Hypervisor sono disabilitate in Windows
  • L'integrazione della memoria è disabilitata

Dopo aver escluso i motivi di cui sopra, mi sono ricordato che ho appena abilitato Windows Sandbox, ho trovato questo post .

Il problema è con Windows Sandbox, ma semplicemente disabilita Windows Sandbox da Funzionalità Windows e il riavvio non funzionerà. Devi fare quanto segue dal post sopra:

  • Disabilita Windows Sandbox e riavvia
  • Disabilita la virtualizzazione nel BIOS e riavvia
  • Abilita la virtualizzazione nel BIOS e riavvia
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.