Error: Hardware assisted visualization and data execution protection must be enabled in Bios.

I complied this information from a few different places…

If can’t start docker on your computer and it shows “Error: Hardware assisted visualization and data execution protection must be enabled in Bios.” You need to enable VT-x extensions in your bios to be able to use the hardware features docker needs.  A lot of board manufactures disable VT-x extensions by default

Here is how to identify hardware virtualization extensions and enable them in your BIOS if they are disabled.

The Intel VT-x extensions can be disabled in the BIOS. Some vendors have disabled the Intel VT-x extensions by default in their CPUs.The virtualization extensions cannot be disabled in the BIOS for AMD-V. Refer to the following section for instructions on enabling disabled virtualization extensions.

Verify the virtualization extensions are enabled in BIOS. The BIOS settings for Intel VT or AMD-V are usually in the Chipset or Processor menus. The menu names may vary from this guide, the virtualization extension settings may be found in Security Settings or other non standard menu names.

Check if your system supports Virtualization

If you are unable to find the Virtualization settings in your BIOS it may mean that your conputer does not support it. If you want to try to find this out yourself, then you can try:

  • On Windows, download and run a Microsoft utility. You can also download utilities to check if your CPU is capable of virtualization, if not enabled. Hyper-V must be disabled in order for VirtualBox to run 64-bit guest operating systems. Visit the “turn Windows feature on or off” application and make sure Hyper-V is not checked.
  • On Linux, open a terminal window and run:egrep -q 'vmx|svm' /proc/cpuinfo && echo yes || echo no

Enabling virtualization extensions in BIOS

Note: Many of the steps may vary depending on your motherboard, processor type, chipset and OEM, so these instructions may not work on your particular computer. Don’t blame me if your computer does not want to play nice. 🙂

  1. Reboot the computer and open the system’s BIOS menu. This can usually be done by pressing the delete key, the F1 key or Alt and F4 keys depending on the system.

2. Enable the virtualization extensions in BIOS

  • Open the Processor submenu The processor settings menu may be hidden in the ChipsetAdvanced CPU Configuration or Northbridge.
  • Enable Intel Virtualization Technology (also known as Intel VT-x). AMD-V extensions cannot be disabled in the BIOS and should already be enabled. The virtualization extensions may be labeled Virtualization ExtensionsVanderpool or various other names depending on the OEM and system BIOS.
  • Enable Intel VT-d or AMD IOMMU, if the options are available. Intel VT-d and AMD IOMMU are used for PCI device assignment.
  • Select Save & Exit.

3. Reboot the machine.

4. When the machine has booted, run cat /proc/cpuinfo |grep -E "vmx|svm". Specifying --color is optional, but useful if you want the search term highlighted. If the command outputs, the virtualization extensions are now enabled. If there is no output your system may not have the virtualization extensions or the correct BIOS setting enabled.

Review this page. It describes how to enable virtualization in your computer’s bios. https://bce.berkeley.edu/enabling-virtualization-in-your-pc-bios.html