VT-x Is Not Available (VERR_VMX_NO_VMX) in VirtualBox: Every Fix for Windows 11 and Linux
"VT-x is not available (VERR_VMX_NO_VMX)" means VirtualBox cannot use your processor's virtualization feature, the part of the CPU that lets one computer safely run another. There are only two reasons. Either the feature is switched off in the BIOS/UEFI, or another hypervisor already has it: Hyper-V, WSL2 or Memory integrity on Windows 11, or KVM on a Linux host. Here is the part that wastes most people's afternoon: Task Manager can say Virtualization: Enabled while VirtualBox still says VT-x is not available, because "enabled in the BIOS" and "free for VirtualBox" are two different things. You can tell which case you have in one minute. On Windows, open Command Prompt and run systeminfo. If the last lines say "A hypervisor has been detected", Windows is holding VT-x and the fix is in Windows, not the BIOS. If Task Manager says Virtualization: Disabled, turn on Intel Virtualization Technology or SVM Mode in the BIOS. Below, we start from the basics and then go through every version of this error, on Windows and on Linux hosts such as Kali and Ubuntu.
Jake runs a small phone repair shop. After a break-in on a neighboring store's Wi-Fi, he paid $49 for an online ethical-hacking course so he could check his own network before someone else did. Lesson one said: install Kali Linux in VirtualBox. He closed the shop at noon on a Saturday, downloaded the Kali image, pressed Start, and got a red box: VT-x is not available (VERR_VMX_NO_VMX). A video told him to enable virtualization in the BIOS. He went looking, found it already enabled, and Task Manager agreed. Another video said to pick the 32-bit version instead. That failed with the same message. By evening he had reinstalled VirtualBox twice and lost half a Saturday of repairs. Ethan fixed it on Sunday morning in four minutes, and the cause had nothing to do with the BIOS at all.
The basics: what VT-x, AMD-V and a hypervisor are
Before the fixes make sense, it helps to know four words. None of them are hard, and once you have them, every version of this error reads like a plain sentence.
- A virtual machine (VM) is a computer that runs as a program inside your real computer. Kali Linux in VirtualBox is a VM: it has its own pretend hard drive, memory and screen, all borrowed from your PC.
- A hypervisor is the program that creates and runs virtual machines. VirtualBox is a hypervisor. So are VMware Workstation, Microsoft's Hyper-V and Linux's KVM.
- VT-x is Intel's name for the hardware feature that lets a hypervisor run a VM quickly and safely. The CPU itself keeps the guest system in its own box, so the VM cannot touch your real files or memory without permission.
- AMD-V is the same idea on AMD processors. Inside the BIOS, AMD usually calls it SVM, short for Secure Virtual Machine, so do not expect to see the words "AMD-V" in the menu.
Intel and AMD added these features in 2005 and 2006, and practically every desktop and laptop processor made in the last ten years has one. That is why this error is almost never about missing hardware. It is about a switch, and about who is allowed to use it.
"So my laptop has it," Jake said. "Then why can't VirtualBox use it?"
"Think of VT-x as the driver's seat of a car," Ethan said. "It exists in every car. But two things can stop VirtualBox from driving. The seat can be folded away, which is the BIOS switch being off. Or somebody else can already be sitting in it, which is another hypervisor. Only one program can sit in that seat at a time."
Two kinds of hypervisor, and why that matters on Windows 11
VirtualBox is what is called a type 2 hypervisor: it is an ordinary app that runs on top of Windows, macOS or Linux, and asks the CPU for VT-x when you start a VM. Hyper-V is a type 1 hypervisor: it starts before Windows does and sits underneath it. When Hyper-V is running, Windows itself is technically a guest on top of it, and Hyper-V owns the driver's seat for as long as the computer is on.
That one fact explains most of the confusion on Windows 11. Several Windows features quietly start Hyper-V's hypervisor even if you never installed "Hyper-V" by name. Memory integrity is the big one, and it is switched on by default on many new Windows 11 PCs. From that moment, the BIOS can say virtualization is enabled, and it is, but it is already in use.
VT-x vs VT-d, AMD-V vs AMD-Vi: not the same switch
This is the most common mix-up in the BIOS menu, so it gets its own heading. VT-d (Intel) and AMD-Vi (AMD) are a different feature, called an IOMMU, that lets a VM use a real device such as a graphics card or a network card directly. It is useful, but VirtualBox does not need it, and turning it on does nothing for this error.
Here is how that looks in practice on an AMD system running Kali with virtualization switched off in the firmware. The kernel log shows AMD-Vi happily switched on, and on the very same boot, AMD-V switched off:
$ journalctl -k -b | grep -iE "svm|amd-v" kernel: SVM disabled (by BIOS) in MSR_VM_CR kernel: AMD-Vi: IOMMU performance counters supported
If you only noticed the AMD-Vi line, you would think virtualization was on. The line that matters is the other one: SVM disabled (by BIOS). On Intel machines, the same trap looks like a BIOS menu where "Intel VT-d" says Enabled and "Intel Virtualization Technology" further down says Disabled.
BIOS or UEFI?
The BIOS is the small program built into your computer that starts before Windows or Linux. Modern PCs use a newer version called UEFI, but almost everyone still calls it the BIOS, and so do VirtualBox's error messages. In this guide, "BIOS" and "UEFI firmware settings" mean the same screen.
Why VirtualBox 7 won't start without it, not even a 32-bit VM
Older tutorials, some still near the top of search results, say: if VT-x is missing, create a 32-bit VM instead. That advice dates from VirtualBox 6.0 and earlier, which could fall back to a slower software trick for 32-bit guests. VirtualBox 6.1, released in December 2019, removed that fallback completely. Since then, every VM needs VT-x or AMD-V, whatever its size.
To check this rather than repeat it, we started two small VMs with VirtualBox 7.2 on a host with AMD-V switched off in the firmware: a 64-bit Debian VM and a 32-bit Debian VM. Both refused, with the same message:
$ VBoxManage startvm test-64bit --type headless VBoxManage: error: AMD-V is disabled in the BIOS (or by the host OS) (VERR_SVM_DISABLED) $ VBoxManage startvm test-32bit --type headless VBoxManage: error: AMD-V is disabled in the BIOS (or by the host OS) (VERR_SVM_DISABLED)
VirtualBox can also tell you the situation directly, before you start anything:
$ VBoxManage list hostinfo | grep -i virtualization Processor supports HW virtualization: no
That line is worth knowing on Windows too, because VBoxManage ships with VirtualBox on every system. On Windows it lives in C:\Program Files\Oracle\VirtualBox\. Notice that it can say "no" even when the processor itself supports VT-x or AMD-V; VirtualBox reports what it can actually use, not what the chip could do.
So, before you spend time on any fix you found elsewhere, here is how the most common old advice holds up today:
| Old advice | Does it work in 2026? | Why |
|---|---|---|
| "Create a 32-bit VM instead" | No | No software fallback since VirtualBox 6.1; 32-bit guests fail the same way. |
| "Enable virtualization in the BIOS" | Only if it is actually off | On many Windows 11 PCs it is already on, and the problem is in Windows. |
| "Turn on VT-d" | No | VT-d is the IOMMU; VirtualBox needs VT-x. |
| "Uninstall Hyper-V" | Sometimes | Memory integrity, WSL2 and others start the same hypervisor without "Hyper-V" being installed. |
| "Reinstall VirtualBox" | No | The block is in the firmware or another hypervisor, not in VirtualBox's files. |
| "Uncheck VT-x/AMD-V in the VM settings" | No | Hardware virtualization is required now; the option is grayed out because it cannot be turned off. |
"So the 32-bit thing cost me an hour for nothing," Jake said.
"It cost you an hour because somebody wrote it in 2018 and never came back," Ethan said. "It was true then. It just isn't now."
Read your exact message: what each VirtualBox error means
VirtualBox has a family of these messages, and each one tells you something specific. Find yours in the table, then jump to the section it points to. The wording below is exactly what VirtualBox 7.2 prints.
| Message | What it means | Go to |
|---|---|---|
| VT-x is not available (VERR_VMX_NO_VMX) | VirtualBox cannot see VT-x at all. On Windows 11 this is usually a hypervisor hiding it; on some PCs it is the BIOS. | Check first |
| VT-x is disabled in the BIOS for all CPU modes (VERR_VMX_MSR_ALL_VMX_DISABLED) | Intel CPU, switch off in the BIOS. This one is never about Windows. | BIOS fix |
| AMD-V is disabled in the BIOS (or by the host OS) (VERR_SVM_DISABLED) | AMD CPU, SVM Mode off in the BIOS, or the host system has taken it. | BIOS fix |
| AMD-V is not available (VERR_SVM_NO_SVM) | VirtualBox cannot find AMD-V on this CPU, or it is hidden from it. | CPU support |
| VT-x is being used by another hypervisor (VERR_VMX_IN_VMX_ROOT_MODE) | Exactly what it says: another hypervisor is in the driver's seat. | Windows or Linux |
| AMD-V is being used by another hypervisor (VERR_SVM_IN_USE) | The AMD version of the line above. | Windows or Linux |
| VirtualBox can't operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot (VERR_VMX_IN_VMX_ROOT_MODE) | Linux host, Intel CPU: KVM has VT-x. You do not need to recompile anything. | KVM fix |
| VirtualBox can't enable the AMD-V extension. Please disable the KVM kernel extension, recompile your kernel and reboot (VERR_SVM_IN_USE) | Linux host, AMD CPU: same cause, same fix. | KVM fix |
| ... Make sure you have enabled the 'Windows Hypervisor Platform' feature. (VERR_NEM_NOT_AVAILABLE) | Windows: a hypervisor is running, and VirtualBox tried to run on top of it but a feature is missing. | Path A |
| VT-x/AMD-V is either not available on your host or disabled. This hardware extension is required by the VM configuration | The general version of all of the above. | Check first |
On Windows, the first and the NEM messages often appear together in one dialog, something like "(VERR_NEM_NOT_AVAILABLE). VT-x is not available (VERR_VMX_NO_VMX)". When you see both, read it as: "a hypervisor is already running, and VirtualBox could not share it." That points straight at the Windows section, not the BIOS.
Step 1: check if VT-x is enabled on Windows 11, and whether something is using it
Two questions decide everything: is virtualization switched on in the firmware, and is a hypervisor already running? These checks answer both in about a minute, and none of them change anything on your PC.
- Task Manager. Press
Ctrl + Shift + Esc, open the Performance tab and select CPU. In the details at the bottom right, find Virtualization. It says Enabled or Disabled. This reflects the BIOS switch. - systeminfo. Open Command Prompt (search for cmd) and run
systeminfo. Wait for it to finish and look at the last lines, labeled Hyper-V Requirements. - System Information. Press
Windows + R, typemsinfo32, and press Enter. On the System Summary page, find Virtualization-based security. If it says Running, Windows has started its hypervisor for security features. - PowerShell, one line. Run
(Get-CimInstance Win32_ComputerSystem).HypervisorPresent. True means a hypervisor is running right now.
The systeminfo result is the clearest signal, so here are the two shapes it takes. If nothing has VT-x, you see four lines like these, and the important one is the second:
Hyper-V Requirements: VM Monitor Mode Extensions: Yes
Virtualization Enabled In Firmware: Yes
Second Level Address Translation: Yes
Data Execution Prevention Available: Yes
If a hypervisor is already running, those four lines are replaced by one:
Hyper-V Requirements: A hypervisor has been detected. Features required for Hyper-V will not be displayed.
Now put the answers together:
| Task Manager | systeminfo | What it means | Fix |
|---|---|---|---|
| Disabled | Virtualization Enabled In Firmware: No | The BIOS switch is off. | Fix 1 |
| Enabled | A hypervisor has been detected | Windows is using VT-x. | Fix 2 |
| Enabled | Four lines, all Yes | VT-x is on and free. The problem is elsewhere. | Still failing |
| No Virtualization line at all | VM Monitor Mode Extensions: No | The CPU may not support it, or you are inside a VM already. | CPU support |
Ethan ran exactly these checks on Jake's laptop. Task Manager: Enabled. systeminfo: A hypervisor has been detected. msinfo32: Virtualization-based security: Running. "There it is," he said. "Your BIOS was never the problem. Your laptop shipped with Memory integrity on, and you installed WSL last spring for that Python thing. Windows has been sitting in the driver's seat since the day you bought it."
Step 1 on a Linux host: check from Kali or Ubuntu
If your real computer runs Linux and VirtualBox runs on it, the checks are just as quick. Run these in a terminal. Here is what they print on a host where AMD-V is off in the BIOS, next to what you would see on a machine where it is on.
$ lscpu | grep -i virtualization
(no output: not available)
# On a working machine: Virtualization: VT-x or Virtualization: AMD-V
$ grep -cE '\b(vmx|svm)\b' /proc/cpuinfo
0
# On a working machine: the number of CPU threads, for example 8
$ journalctl -k -b | grep -iE "disabled.*bios|bios.*disabled"
kernel: SVM disabled (by BIOS) in MSR_VM_CR
# Intel machines print: x86/cpu: VMX (outside TXT) disabled by BIOS
$ ls /dev/kvm
ls: cannot access '/dev/kvm': No such file or directory
Four checks, one story. vmx is the Intel flag and svm the AMD flag; when the BIOS switch is off, a modern Linux kernel hides the flag entirely, so the count drops to zero. The kernel log names the reason in plain words, and without virtualization, /dev/kvm (the device Linux's own hypervisor uses) never appears.
On Ubuntu there is also a friendly one-shot check. Install it with sudo apt install cpu-checker, then run kvm-ok; it tells you in a sentence whether KVM can be used, and if not, whether the BIOS is the reason. If you are new to running commands with sudo on Kali, our guide to root, su and sudo explains what it does and why Kali asks for it.
If lscpu does show VT-x or AMD-V and VirtualBox still refuses, the switch is on and something else is holding it. On Linux, that something is almost always KVM, covered in its own section below.
Fix 1: turn on VT-x or AMD-V in the BIOS/UEFI
If Task Manager says Disabled, or Linux says the BIOS disabled it, this is your fix, and it is a safe one. Turning on virtualization does not slow your computer down, does not change your files, and is the factory default on most new machines; on others, it was simply never switched on.
⚠️ Before you change firmware settings: if your PC uses BitLocker or Device Encryption, have the recovery key ready. Firmware and boot changes occasionally make Windows ask for it on the next start. If you sign in with a Microsoft account, the key is at aka.ms/myrecoverykey. Thirty seconds now saves a frightening blue screen later.
- Open the firmware settings from Windows 11. Go to Settings → System → Recovery, find Advanced startup and choose Restart now. Then choose Troubleshoot → Advanced options → UEFI Firmware Settings → Restart. The PC restarts straight into the BIOS. This works on almost every Windows 11 PC and saves you from guessing the right key.
- Or use the key at power-on. Turn the PC off, turn it on, and tap the key for your brand repeatedly as soon as the logo appears (see the table below).
- Find the setting. Look under Advanced, CPU Configuration, Security or Virtualization. On Intel it is usually called Intel Virtualization Technology, Intel VT-x or VTx. On AMD it is usually SVM Mode, SVM or AMD-V.
- Set it to Enabled. Leave VT-d or IOMMU as they are; they are not the switch you need.
- Save and exit. Usually
F10, then confirm. The PC restarts. - Check again. Open Task Manager and confirm Virtualization: Enabled, then start your VM. VirtualBox notices immediately; you do not need to reinstall it or recreate the VM.
| Brand | Key at power-on | Where the switch usually is |
|---|---|---|
| Dell | F2 | Virtualization Support → Virtualization (or Enable Intel Virtualization Technology) |
| HP | Esc, then F10 | Advanced → System Options → Virtualization Technology (VTx); older models: System Configuration |
| Lenovo ThinkPad | F1 (some models: Enter, then F1) | Security → Virtualization → Intel Virtualization Technology or AMD-V |
| Lenovo IdeaPad / Legion | F2, or the small Novo button | Configuration → Intel Virtual Technology or AMD SVM Technology |
| ASUS | F2 (laptops), Del (desktops) | Advanced → CPU Configuration → Intel Virtualization Technology or SVM Mode (press F7 for Advanced Mode first) |
| Acer | F2 | Advanced or Main → Intel Virtualization Technology or AMD-V |
| MSI | Del | OC (or Overclocking) → CPU Features → Intel Virtualization Tech or SVM Mode (F7 for Advanced) |
| Gigabyte | Del | Tweaker → Advanced CPU Settings → SVM Mode or Intel Virtualization Technology |
| ASRock | F2 or Del | Advanced → CPU Configuration → Intel Virtualization Technology or SVM Mode |
Menus move between BIOS versions, so treat the table as a map, not a promise. If you cannot find it, most BIOS screens have a search, or look through every page whose name includes CPU, Advanced, Chipset or Security. If you are not sure which BIOS version you have, finding it from Windows takes one command.
The setting is missing or grayed out
There are four usual reasons, roughly in order of how often they happen:
- You are in the simple view. Many gaming and desktop boards (ASUS, MSI) open in an "EZ" or simple mode. Press
F7to switch to Advanced Mode, and the CPU options appear. - The BIOS is locked. On a work or school laptop, IT often sets a BIOS administrator password, and the virtualization option is visible but cannot be changed. Ask them; they can switch it for you, or remotely with the vendor's tools.
- The BIOS is old. A few older laptops gained the option in a later BIOS update. The maker's support page lists updates for your exact model.
- The CPU does not support it. Rare on anything sold in the last decade, but possible. See when the CPU really doesn't support it.
You enabled it, saved, and Task Manager still says Disabled
First, make sure you changed Virtualization Technology / SVM and not VT-d or IOMMU; that mix-up is behind most of these. Second, do a full shutdown rather than a restart: hold Shift while you click Shut down (this skips Windows Fast Startup), wait ten seconds, and turn the PC on again. A few machines only apply the change after a real power-off. Third, go back into the BIOS and confirm the setting actually saved; on some screens, leaving with Esc discards your changes.
Can you enable VT-x through Command Prompt?
No. VT-x is a firmware setting, and Windows cannot flip it with a normal command, whatever a video titled "enable VT-x without BIOS" promises. The bcdedit command you will see later in this guide does something different: it stops Windows from using VT-x, which is often the real fix, but it cannot turn VT-x on if the BIOS has it off.
The one exception is business laptops. Dell, HP and Lenovo publish tools for IT departments (Dell Command | Configure, HP BIOS Configuration Utility, Lenovo's Think BIOS Config Tool) that can change BIOS settings from inside Windows. They work only on the models they support, often need a BIOS password, and are meant for fleets, not one-off fixes. For your own PC, the BIOS screen is still the fastest route.
Fix 2: Windows 11 says Enabled, but VirtualBox still says no
This is the case that ate Jake's Saturday, and on Windows 11 it is now more common than the BIOS case. VT-x is switched on. Windows started its own hypervisor at boot and took it. Here are the features that start that hypervisor, and most people have at least one of them on without knowing:
| Feature | Why it is on | What turning it off costs |
|---|---|---|
| Memory integrity (Core isolation) | On by default on many new Windows 11 PCs | Protection against malicious or vulnerable drivers in the Windows kernel |
| Virtual Machine Platform | Installed with WSL2, Docker Desktop and some Android emulators | WSL2 distributions and Docker Desktop stop working |
| Hyper-V | Installed on purpose, usually on Pro, Enterprise or Education | Your Hyper-V VMs |
| Windows Sandbox | Turned on in Windows features | Windows Sandbox |
| Credential Guard | On by default on many Enterprise and Education PCs | Protection for saved sign-in secrets; usually managed by IT |
| Enhanced Sign-in Security | Some laptops with face or fingerprint sign-in | The extra protection around Windows Hello on those devices |
Windows 11 Home is not spared. It has no Hyper-V option, but it does have Memory integrity and Virtual Machine Platform, and either one is enough.
🙋♂️ Jake's Reality Check
"So I should just switch all of this off?"
Not necessarily. You have two honest choices. Path A keeps every Windows protection and lets VirtualBox run on top of Microsoft's hypervisor, a little slower. Path B hands VT-x back to VirtualBox for full speed, and you give up the features in the table while it is off. Neither is wrong. Pick by what the PC is for.
| Path A: share with Hyper-V | Path B: free VT-x | |
|---|---|---|
| Windows security features | Stay on | Off while VirtualBox has VT-x |
| WSL2 and Docker Desktop | Keep working | Stop until you switch back |
| VM speed | Slower, especially disk and graphics | Full speed |
| Nested virtualization in the VM | Not available | Available on supported CPUs |
| Effort | One Windows feature and a restart | A few settings and a restart, or one command |
| Best for | Work PCs, light Kali coursework, people who also use WSL | A personal lab PC, heavier VMs, nested labs |
Path A: let VirtualBox run on top of Hyper-V (the green turtle)
Since version 6.0, VirtualBox can use Microsoft's hypervisor instead of driving VT-x itself. VirtualBox calls this the Native Execution Manager, NEM for short, and it needs one Windows feature that is off by default: Windows Hypervisor Platform. Without it, you get the VERR_NEM_NOT_AVAILABLE message, often glued to VT-x is not available.
- Press
Windows, type Turn Windows features on or off, and open it. - Check Windows Hypervisor Platform. Leave the others as they are.
- Choose OK, let Windows install it, and restart.
- Start your VM. It should boot, and a small green turtle icon appears in the VM window's status bar at the bottom. The turtle means "running on Hyper-V."
If you prefer one line, run this in an administrator PowerShell window and restart: Enable-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform.
The turtle is an honest icon: VMs in this mode are slower, mostly in disk access, graphics and anything that switches between the guest and the host often. For a Kali VM used for coursework, terminal tools and a browser, many people never notice. For a big desktop VM with heavy graphics, or a lab that runs dozens of tools at once, you will. One more limit is fixed in VirtualBox itself: in this mode, nested VT-x/AMD-V cannot be turned on, so you cannot run a hypervisor inside the VM.
To confirm which mode a VM used, open it in VirtualBox Manager and choose Machine → Show Log. In VBox.log, a line containing Attempting fall back to NEM means it went the Hyper-V route. "So the turtle means it's working, just in a different gear," Jake said. "Exactly," said Ethan. "Slow and steady still gets you to lesson two."
Path B: free VT-x for VirtualBox
If you want VirtualBox at full speed, Windows has to stop starting its hypervisor. There are two ways to do it: switch off each feature that starts it, or tell Windows not to launch the hypervisor at all, with one command. Either way, you finish with a restart and a check.
Turn off Memory integrity
- Open Windows Security (search for it in Start).
- Go to Device security and choose Core isolation details.
- Switch Memory integrity to Off, and accept the prompt.
- Restart the PC.
Be clear-eyed about what this does. Memory integrity stops malicious or vulnerable drivers from tampering with the core of Windows, and it is one of the better protections Windows has. Turning it off on a personal lab PC is a reasonable trade for many people; turning it off on the laptop you use for banking and work email is a bigger one. If the switch will not stay off, or it is missing, your PC is probably managed by an organization, and that is a conversation with IT, not a setting to fight.
Turn off the Windows features that start the hypervisor
Open Turn Windows features on or off again and uncheck whichever of these are checked: Hyper-V, Virtual Machine Platform, Windows Hypervisor Platform and Windows Sandbox. Choose OK and restart. From an administrator PowerShell window, the same thing looks like this:
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All Disable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform Disable-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform Disable-WindowsOptionalFeature -Online -FeatureName Containers-DisposableClientVM
The last one is Windows Sandbox. Any line for a feature you do not have will simply report an error and change nothing. Remember the cost: with Virtual Machine Platform off, WSL2 and Docker Desktop stop working until you turn it back on.
The one-command switch: bcdedit /set hypervisorlaunchtype off
This is the fastest Path B, and the one Ethan used for Jake. It leaves every feature installed but tells Windows not to start the hypervisor at boot. Open Terminal (Admin) or an administrator Command Prompt and run:
bcdedit /set hypervisorlaunchtype off
Restart, and VirtualBox has VT-x to itself. To undo it later, run the same command with auto instead of off and restart again. While the hypervisor is off, everything that depends on it is off too: Memory integrity, Credential Guard, WSL2, Docker Desktop, Windows Sandbox and Hyper-V VMs. That is the price of the speed.
Best of both: a boot menu entry without the hypervisor
If you want WSL2 and Memory integrity most days and full-speed VirtualBox on lab days, you can have both by adding a second entry to the Windows boot menu. In an administrator Command Prompt:
bcdedit /copy {current} /d "Windows 11 (VirtualBox lab)"
The entry was successfully copied to {a1b2c3d4-0000-1111-2222-333344445555}.
bcdedit /set {a1b2c3d4-0000-1111-2222-333344445555} hypervisorlaunchtype off
Use the identifier your own PC prints, not the example above. From now on, the boot menu offers both entries for a few seconds at startup. Pick "VirtualBox lab" when you want Kali at full speed, and the normal entry the rest of the time. "That's the one," Jake said. "Shop days, normal Windows. Course nights, lab Windows."
Confirm it worked
After the restart, run systeminfo again. If the four Hyper-V Requirements lines are back with Virtualization Enabled In Firmware: Yes, the hypervisor is off and VT-x is free. In msinfo32, Virtualization-based security should now say Not enabled, and in PowerShell, (Get-CimInstance Win32_ComputerSystem).HypervisorPresent should say False. Then start your VM. If it still fails, something else is going on, and the still failing section will find it.
Linux hosts: "VirtualBox can't operate in VMX root mode" and KVM
On Linux, the other hypervisor is nearly always KVM, the hypervisor built into the Linux kernel. It powers GNOME Boxes, virt-manager and QEMU, and on most distributions its modules load automatically when the CPU supports virtualization. VirtualBox and KVM are two drivers who both want the same seat.
For years this mostly did not matter, because KVM only took VT-x while one of its own VMs was running. That changed with Linux kernel 6.12, released in late 2024: KVM now claims virtualization as soon as its module loads, so VirtualBox finds the seat taken on every boot. The error says "VirtualBox can't operate in VMX root mode. Please disable the KVM kernel extension, recompile your kernel and reboot" on Intel, or "VirtualBox can't enable the AMD-V extension..." on AMD. Ignore the word "recompile"; it is an old message, and you do not need to rebuild anything.
There are two pieces of good news. First, VirtualBox 7.2.2 (September 2025) and newer can borrow VT-x through KVM itself on kernel 6.16 and newer, so on an up-to-date system the clash often disappears on its own. In VBox.log, the line VT-x/AMD-V enable method: Host API shows it is doing that. Second, if you are on Kali, the fix may already be in place. On a Kali system with VirtualBox installed from the Kali repository, two separate files tell KVM not to grab virtualization at load:
$ grep -r enable_virt_at_load /etc/modprobe.d/ /usr/lib/modprobe.d/ /etc/modprobe.d/kali-defaults.conf:options kvm enable_virt_at_load=0 /usr/lib/modprobe.d/virtualbox-dkms.conf:options kvm enable_virt_at_load=0 $ cat /sys/module/kvm/parameters/enable_virt_at_load N
The first comes from Kali's own defaults package and the second from Debian's VirtualBox package, so on Kali with VirtualBox installed from the Kali repository, KVM already waits politely. If you installed VirtualBox from Oracle's download page instead, or you use another distribution, check for that line yourself. If enable_virt_at_load says Y, here is the fix.
Quick and temporary (until the next reboot). First shut down any GNOME Boxes, virt-manager or QEMU VMs, then unload KVM:
# Intel sudo modprobe -r kvm_intel kvm # AMD sudo modprobe -r kvm_amd kvm
Permanent, so KVM stops grabbing VT-x at boot but still works when you start a KVM VM yourself:
echo "options kvm enable_virt_at_load=0" | sudo tee /etc/modprobe.d/kvm-virtualbox.conf sudo reboot
You can do the same with the kernel parameter kvm.enable_virt_at_load=0 in your boot loader if you prefer. Either way, you can still use KVM tools, just not at the same moment as a VirtualBox VM, unless your VirtualBox and kernel are new enough to share.
"vt x is not available" on Ubuntu, and errors that only look similar
Ubuntu users meet the same two causes: the BIOS switch, checked with lscpu or kvm-ok, and KVM, fixed as above. Two other VirtualBox errors on Linux look related but are not about VT-x at all. "Kernel driver not installed (rc=-1908)" and VERR_VM_DRIVER_NOT_INSTALLED mean VirtualBox's own kernel module is not loaded, usually after a kernel update or because Secure Boot refused an unsigned module. On Kali, sudo apt install virtualbox-dkms followed by sudo modprobe vboxdrv rebuilds and loads it. That is a driver problem, not a virtualization one, so the BIOS steps above will not help with it.
Nested VT-x/AMD-V grayed out in VirtualBox
Nested virtualization means running a hypervisor inside a VM: Hyper-V inside a Windows VM, KVM inside a Kali VM, Docker Desktop or an Android emulator inside a guest. It needs the host CPU to pass VT-x through to the guest, and VirtualBox has supported it on both Intel and AMD since version 6.1. The checkbox is Settings → System → Processor → Enable Nested VT-x/AMD-V.
When that box is grayed out, one of these is almost always the reason:
- The VM is not fully powered off. Settings are locked while a VM is running or saved. Choose Machine → Close → Power Off (or discard the saved state), and try again.
- VirtualBox is running on Hyper-V (the turtle). Nested virtualization is not available in that mode; VirtualBox's own log says it plainly, "Can't turn on nested VT-x/AMD-V when NEM is used." Use Path B if you need it.
- The host has no usable VT-x. If the BIOS switch is off or another hypervisor holds it, there is nothing to pass through.
- The CPU lacks a needed feature. Nested VT-x needs nested paging and "unrestricted guest" support, which very old Intel CPUs do not have.
You will see advice to force it from the command line, and it does set the option:
VBoxManage modifyvm "Kali" --nested-hw-virt on
But this is not a way around a real limit. On a host with AMD-V off in the BIOS, VirtualBox accepts that command without a word of complaint, reports nested-hw-virt="on", and the VM still refuses to start with the same VERR_SVM_DISABLED error. The command only helps when the hardware can do it and the checkbox simply has not caught up. Fix the cause first; the checkbox will come back on its own.
VMware, Android emulators and Docker see the same thing
VirtualBox is not the only program that needs the driver's seat, so the same cause shows up under other names. Recognizing them saves you from treating one problem as three.
- VMware Workstation: "Virtualized Intel VT-x/EPT is not supported on this platform" (or the AMD-V/RVI version). Modern VMware Workstation can run on top of Hyper-V, but in that mode it cannot offer virtualization inside the VM. It appears when "Virtualize Intel VT-x/EPT or AMD-V/RVI" is checked in the VM's processor settings while a Windows hypervisor is running. Uncheck it, or use Path B.
- Android emulators such as Nox, LDPlayer and BlueStacks: messages like "VT is enabled but not working" mean the same thing as Task Manager saying Enabled while VirtualBox fails. VT-x is on; Windows has it. Some emulators publish builds that run on top of Hyper-V; otherwise, the Path B steps apply.
- Docker Desktop and WSL2: these are on the other side of the fence. They need Windows' hypervisor running, so turning it off for VirtualBox stops them. That is why the boot menu trick above is so popular with people who use both.
If you have also hit Windows Sandbox refusing to start, that is the mirror image of this problem: Sandbox needs the hypervisor that VirtualBox wants out of the way.
When the CPU really doesn't support VT-x
It is rare, but it happens. Some older budget Intel Celeron, Pentium and Atom chips, and a few very old AMD ones, shipped without hardware virtualization. If systeminfo says VM Monitor Mode Extensions: No, or Linux shows no vmx or svm flag and no "disabled by BIOS" line in the kernel log, look your CPU up. On Windows, Task Manager shows the exact model at the top of the CPU page; on Kali, lscpu shows it as Model name. Search that model on Intel's or AMD's product page: Intel lists Intel Virtualization Technology (VT-x) as Yes or No, and AMD lists AMD Virtualization.
The other way to hit "your CPU does not support VT-x" is to be inside a VM already: VirtualBox installed in a cloud server, in a school's remote desktop, or in another VM without nested virtualization. The CPU you see there is a virtual one, and it only offers VT-x if the layer below passes it through.
If the hardware truly lacks it, there is no software workaround; VirtualBox 7 has no fallback, as the test above showed. Your options are a different PC, a cloud lab, or running Kali directly from a USB stick, which needs no virtualization at all.
Run Kali without VirtualBox if VT-x has to stay with Windows
Sometimes the right answer is not to fight Windows for the driver's seat at all. If your PC is managed by work or school, or you rely on Memory integrity and WSL2, these routes get you into Kali without changing anything above:
| Option | Works with Memory integrity on? | Good for | Limits |
|---|---|---|---|
| Kali in WSL2 | Yes | Terminal tools, scripting, coursework | No direct Wi-Fi hardware access; desktop needs Win-KeX |
| Kali Hyper-V image | Yes | A full Kali desktop VM on Windows 11 Pro, Enterprise or Education | Not on Windows 11 Home |
| VirtualBox in Path A (turtle) | Yes | Following a course that expects VirtualBox | Slower; no nested virtualization |
| VMware Workstation | Yes, on top of Hyper-V | People who prefer VMware; it is free for personal use | Same speed and nested limits as Path A |
| Kali live USB | Not relevant; Windows is not running | Full hardware access, Wi-Fi testing, PCs without VT-x | You reboot into it; nothing is saved unless you set up persistence |
For WSL2, open an administrator terminal and run wsl --install -d kali-linux, then restart if asked. If WSL itself is missing or misbehaving, our WSL guide walks through it. The Kali team publishes ready-made VM images for VirtualBox, VMware, Hyper-V and QEMU, and the Kali 2026.3 release page tracks what the next set brings. To check which Kali version you are actually running once you are in, one terminal command does it.
For IT admins: lab PCs, VBS and VirtualBox
If you look after a fleet and a student, developer or security team asks for VirtualBox, the request usually collides with your baseline. Virtualization-based security, Memory integrity (HVCI) and Credential Guard all depend on the Windows hypervisor, and many organizations enforce them through Intune or Group Policy (Computer Configuration → Administrative Templates → System → Device Guard → Turn On Virtualization Based Security). Switching them off on a managed laptop so one app can run faster weakens the endpoint for everything else it does, and policy will usually turn them back on at the next refresh anyway.
The approaches that hold up in practice, from least to most change:
- Let VirtualBox run on Hyper-V. Enable the Windows Hypervisor Platform feature on the devices that need it. VBS stays on, the VM runs, and the trade is performance, not security.
- Offer a Hyper-V or WSL2 route. Kali publishes a Hyper-V image, and WSL2 covers most command-line coursework. Both sit happily beside VBS.
- Keep a separate lab group. Dedicated lab machines, outside the VBS-enforced group and off the corporate network if possible, can run VirtualBox at full speed with clear scope.
- Change firmware centrally where it is off. Dell Command | Configure, HP BIOS Configuration Utility and Lenovo's Think BIOS Config Tool can enable virtualization at scale on supported models, which beats walking a BIOS password around the office.
To audit what a device is actually running, query Get-CimInstance -Namespace root\Microsoft\Windows\DeviceGuard -ClassName Win32_DeviceGuard. A VirtualizationBasedSecurityStatus of 2 means VBS is running, and SecurityServicesRunning lists which services (such as Credential Guard and HVCI) are active. That gives you a factual starting point before anyone argues about the turtle.
Still failing? Read VBox.log before changing anything else
If you have been through the right section and the VM still refuses, stop changing settings and let VirtualBox tell you what it saw. In VirtualBox Manager, select the VM and choose Machine → Show Log. The first VBox.log tab is the most recent start. Use the search box for these lines:
| Search for | What it tells you |
|---|---|
HMR3Init | Whether VirtualBox found VT-x or AMD-V, and which one |
Attempting fall back to NEM | It could not get VT-x directly and tried Hyper-V (Path A) |
enable method: Host API | On Linux, it is sharing VT-x through KVM |
VERR_ | The exact error code; match it in the table above |
Then run through the usual suspects that survive the main fixes:
- A second hypervisor you forgot about. VMware, an Android emulator or a Docker install can each leave a Windows feature switched on. Recheck
systeminfo; it does not lie about a running hypervisor. - A security suite with its own virtualization. Some third-party antivirus products use hardware virtualization for their own protection. Their settings usually have an option for it; check the vendor's documentation before disabling anything.
- The VM is set to more CPUs than the host has threads, or to an unusual chipset. Reset the VM to one or two CPUs and the default settings, then add back what you changed.
- An outdated VirtualBox. On Windows, make sure you are on the current 7.2 release from Oracle's site; on Linux, update through your distribution or Oracle's repository. Old versions handle Hyper-V and new kernels worse.
Reinstalling VirtualBox will not change any of these. It only helps with driver errors like the ones in the Linux section, not with VT-x.
VT-x is not available: frequently asked questions
How do I check if VT-x is enabled?
On Windows, open Task Manager, go to Performance, select CPU and read Virtualization: Enabled or Disabled. Then run systeminfo; "A hypervisor has been detected" means Windows is using it. On Linux, run lscpu and look for Virtualization: VT-x or AMD-V.
How do I enable VT-x?
Restart into the BIOS/UEFI, find Intel Virtualization Technology (or SVM Mode on AMD), set it to Enabled, save with F10 and restart. On Windows 11 you can reach the BIOS from Settings, System, Recovery, Advanced startup.
How do I enable VT-x in Windows 11?
Windows cannot switch it on by itself; it is a BIOS setting. Go to Settings, System, Recovery, Advanced startup, Restart now, then Troubleshoot, Advanced options, UEFI Firmware Settings, and enable virtualization there.
Why is VT-x not working in Windows 11 when it is enabled?
Because Windows is already using it. Memory integrity, WSL2, Hyper-V or Windows Sandbox start Microsoft's hypervisor at boot. Enable Windows Hypervisor Platform to share it, or turn those features off to free VT-x.
Can you enable VT-x through Command Prompt?
No. It is a firmware setting. bcdedit /set hypervisorlaunchtype off only stops Windows from using VT-x; it cannot turn it on. Some business laptops have vendor tools that change BIOS settings from Windows.
Does VirtualBox require VT-x?
Yes. Since VirtualBox 6.1 every VM, including 32-bit ones, needs VT-x or AMD-V. There is no software fallback anymore, so picking a 32-bit guest no longer helps.
What does "VT-x is disabled in the BIOS for all CPU modes" mean?
It means the Intel virtualization switch is off in your BIOS. It is never caused by Windows. Turn on Intel Virtualization Technology in the BIOS, save, and do a full shutdown before trying again.
Why does VirtualBox say VT-x is not available on Ubuntu or Linux?
Either the BIOS switch is off, which lscpu shows, or KVM has taken VT-x, which kernels 6.12 and newer do at boot. Unload kvm_intel or kvm_amd, or set options kvm enable_virt_at_load=0 and reboot.
How do I enable nested VT-x/AMD-V in VirtualBox?
Power off the VM, then check Enable Nested VT-x/AMD-V under Settings, System, Processor, or run VBoxManage modifyvm with --nested-hw-virt on. It only works when VirtualBox has VT-x directly, not when running on Hyper-V.
Why is the VT-x option grayed out in VirtualBox?
The nested option is grayed out when the VM is running or saved, when VirtualBox runs on Hyper-V, or when the host has no usable VT-x. The basic hardware virtualization option is grayed out because it is now always required.
What is the difference between VT-x and VT-d?
VT-x runs virtual machines; VT-d lets a VM use a real device such as a graphics card directly. VirtualBox needs VT-x. On AMD, the equivalents are AMD-V (shown as SVM) and AMD-Vi.
What does the green turtle icon in VirtualBox mean?
It means VirtualBox is running the VM on top of Microsoft's Hyper-V hypervisor instead of using VT-x directly. It works but is slower, and nested virtualization is not available.
What is VERR_NEM_NOT_AVAILABLE?
A Windows hypervisor is running and VirtualBox tried to run on top of it, but the Windows Hypervisor Platform feature is off. Turn that feature on and restart, or free VT-x instead.
My CPU does not support VT-x. What can I do?
Check the exact model on Intel's or AMD's product page first. If it truly lacks virtualization, use another PC, a cloud lab, or boot Kali from a live USB, which needs no virtualization.
Is it safe to enable VT-x?
Yes. It is a standard CPU feature, enabled by default on many PCs, and it does not slow anything down. The security question is about turning off Memory integrity, not about turning on VT-x.
How do I disable Hyper-V for VirtualBox?
Run bcdedit /set hypervisorlaunchtype off in an administrator terminal and restart, or uncheck Hyper-V, Virtual Machine Platform and Windows Hypervisor Platform in Windows features. Use auto instead of off to undo.
What does "VT-x/EPT is not supported on this platform" mean in VMware?
VMware is running on top of Hyper-V and cannot offer virtualization inside the VM. Uncheck Virtualize Intel VT-x/EPT in the VM's processor settings, or turn off the Windows hypervisor.
Can I run VirtualBox and WSL2 at the same time?
Yes, with Windows Hypervisor Platform enabled, VirtualBox runs on Hyper-V beside WSL2, more slowly. For full speed, use a separate boot menu entry with the hypervisor turned off.
Jake's Kali VM started on the first try once he chose the "VirtualBox lab" entry at boot. He finished lesson one that Sunday, and by the following weekend he had found a printer on his shop network still using its factory password, which was exactly the kind of thing he had paid $49 to learn to spot. The red box that cost him a Saturday turned out to be two sentences long: the switch was on, and Windows was using it. If you are staring at the same message, please do not blame yourself or your laptop. Nothing is broken. You only needed to know who was in the driver's seat.
📌 If you keep one line from this page
If the BIOS says enabled and VirtualBox still says no, something else got to VT-x first.
systeminfo tells you which in one line.
Revision note. Written October 5, 2026. If a red VirtualBox box ate your afternoon, it was never your fault; the switch was simply in someone else's hands.