Instructions for enabling & disabling VirtualBox support on Windows and MacOS

Note: This document is deprecated in favor enabling VirtualBox support on Windows
and macOS (Intel only)


We added support for VirtualBox, primarily to lower the requirements of Multipass on Windows. Now anywhere VirtualBox runs, Multipass will, too.

It’s a separate environment so your instances from Hyper-V or HyperKit (the default backends on Windows and macOS, respectively) will not move over, but you can switch between the backends freely.

To enable the preview VirtualBox support, follow the steps below:

  • Windows

    • ensure Hyper-V is disabled in Windows Features
    • install Multipass and VirtualBox
    • in Admin Powershell:
       multipass set local.driver=virtualbox
      
    • reboot
  • MacOS

    • install Multipass and VirtualBox
    • in Terminal:
      sudo multipass set local.driver=virtualbox
      

To go back to the default backend:

  • Windows

    • in Admin Powershell:
      multipass set local.driver=hyperv
      
    • enable Hyper-V in Windows Features
    • reboot
  • MacOS

    • in Terminal:
      sudo multipass set local.driver=hyperkit
      

Please let us know any successes (and failures, too) :slight_smile:

1 Like

Any pros/cons feature wise running Multipass in Windows with Hyper-V versus Virtualbox? Any differences in performance? (I think virtualbox can use the Hyper-V core anyway?).

Hyper-V isn’t an option in Windows 10 Home, but VirtualBox works there. Performance isn’t all that great without Hyper-V.

Host: MacOS version 10.14.6
VirtualBox version: 6.1.8 r137981
Multipass (& multipassd) version: 1.2.1+mac

Local driver has been set to virtualbox using commands mentioned on this page.

When I create an instance (bionic) using multipass launch, it does not show up on VirtualBox UI. VBoxManage list vms also does not list the multipass launched instance.

I am trying to add a new disk for swap support (to run a squid docker container within that instance).

How do I find the multipass launched instance?

Damn ! As soon as I post the question, a thought of invoking VBoxManage using sudo comes to mind … and I see the instance. Hope this helps any other multipass novice.

Hi @parag-doke, I just published Using VirtualBox in Multipass on macOS, hope it will be a good reference for the future :wink:

1 Like

I just wanted to report the VirtualBox driver doesn’t seem to be working as of November 2021.

I have tried launching primary and custom VMs on two different Mac laptops with the Intel chips and I’ve had no luck with it.

This is what I’m getting when I run multipass launch:

[2021-11-05T20:31:20.320] [error] [rousing-diamondback] Could not unregister VM: 
VBoxManage: error: Could not find a registered machine named 'rousing-diamondback'
VBoxManage: error: Details: code VBOX_E_OBJECT_NOT_FOUND (0x80bb0001), component VirtualBoxWrap, interface IVirtualBox, callee nsISupports
VBoxManage: error: Context: "FindMachine(Bstr(VMName).raw(), machine.asOutParam())" at line 150 of file VBoxManageMisc.cpp

launch failed: Conversion of image to VDI failed (Process returned exit code: 1) with the following output:
qemu-img: Unknown file format 'vdi'

Hi @chrisk77 thanks, we have an issue up about it and a prerelease with a fix:

https://github.com/canonical/multipass/issues/2322#issuecomment-962413119

Ah, excellent, thanks for the heads-up!
Sorry, didn’t realise you guys were already on it.

Hi guys, I have the same problem, I tried with that installer but it doesn’t work either, I have the same error described above. Hopefully the next update will fix it.

I am in Monterey 12.0.1 (mbp 16" 2019)

@jaimesolis see #2328 for details, but the short of it is that VirtualBox is messed up on macOS Monterey, you’re better off using the default hyperkit driver, or better yet, qemu, which will replace it in time.

Thank you for letting me know. I will do so. I appreciate it.