Page 1 of 1

I have a 64bit host, but can't install 64bit guests

PostPosted: 28. Jun 2014, 12:52
by mpack
In fact you can install 64bit guests on 32bit hosts, so the "bittedness" of the host OS is not the issue. The issue is that in VirtualBox, hardware support for virtualization (Intel VT-x or AMD-v) is required for certain VMs. This includes all 64bit VMs, regardless of the host.

To enable 64bit guests, run through the following checklist :-

  1. Note your exact CPU model or part number, then go online and check its capabilities. The CPU must have 64bit capability and support either Intel or AMD virtualization technologies: VT-x or AMD-v.
  2. You usually need to enable VT-x/AMD-v in the host PC BIOS. You need to check with your PC manual or support forum to find out how to boot into the BIOS screen. This is probably not something we here at the VirtualBox forums can help you with. Once you get there you need to look for something buried in a menu, perhaps in the security category. The option may be called something like "Enable Virtualization Technology". If you see "Virtual Directed I/O" (VT-d/AMD-Vi) then that is a different thing. Remember to power cycle your host PC after making and saving the BIOS changes - in this case a full restart from power off is required, just rebooting or resuming from a hibernated state may not do the job.
  3. If (1) and (2) are already taken care of, then make sure that no other host apps are already using VT-x/AMD-v. The usual culprits are system level debuggers, other VM platforms, and some resident anti-virus applications. This has become a particular issue with 64bit Windows desktop and server hosts - especially Win8/Win2k12/Win10, since these may enable Microsoft's Hyper-v VM platform by default: this grabs ownership of VT-x and won't play nice with VirtualBox. Note: enabling "Trusted Execution Technology" in your host BIOS may also have this effect.
  4. When creating a VM, make sure you choose the 64-bit version of the guest OS template in <VM Settings> | General | Basic | Version, e.g. choose "Ubuntu (64 bit)" and not "Ubuntu" or "Ubuntu (32bit)". This has become more important since VirtualBox 4.3.x, because choosing the correct template also allows other modern processor features to be visible to the guest - it's not just about 64bit capability any more.

Re: I have a 64bit host, but can't install 64bit guests

PostPosted: 5. Apr 2018, 15:36
by mpack
Additional Notes for Windows Hosts

  1. To check the status of Hyper-v in Windows 10, <right click start> | Run | OptionalFeatures.exe, and look for the "Hyper-V" option. The box should be empty, not checked or shaded. If you want to be absolutely sure that Hyper-v is gone then open an administrator command console and type "bcdedit /set hypervisorlaunchtype off". Make sure to fully power down and reboot the host after changing the Hyper-v setting.
  2. On some Windows hosts with an EFI BIOS, DeviceGuard or CredentialGuard may be active by default, and interferes with OS level virtualization apps in the same way that Hyper-v does. These features need to be disabled. On Pro versions of Windows you can do this using gpedit.msc (set Local Computer Policy > Computer Configuration > Administrative Templates > System > Device Guard > Turn on Virtualization Based Security to Disabled. CredentialGuard is a subset of DeviceGuard, so disabling the former should be enough. If you cannot use gpedit for some reason then the equivalent registry hack is to find the key HKLM|SYSTEM|CurrentControlSet|Control|DeviceGuard|EnableVirtualizationBasedSecurity|Enabled and set it to 0.
  3. On Win10 hosts, check Windows Defender > Device Security > Core Isolation Details and make sure settings in this panel are turned off, reboot the host from power down if you needed to make changes.
    "Core isolation [includes] security features available on your device that use virtualization-based security"
    ...which is why they can interfere with VirtualBox.