Skip to content

Latest commit

 

History

History
53 lines (34 loc) · 3.05 KB

VirtualMachinesOnMacOS.md

File metadata and controls

53 lines (34 loc) · 3.05 KB

Virtual Machines on MacOS

Creating a Virtual Machine (or VM) with a guest OS can be accomplished by a number of tools. Just remember that you virtualise if the host and guest have the same architecture and emulate if they differ. The latter might cause a performance penalty.

Virtual Box is targeting x86 and AMD64/Intel64. For Apple Silicon (ARM64) you'll have the option of using a test-build: https://www.virtualbox.org/wiki/Testbuilds.

Parallels offers you a commercial virtualisation subscription if you need support.

Qemu might offer a better alternative, but it requires a build from source or using a package manager (https://wiki.qemu.org/Hosts/Mac). E.g.

brew install qemu

This solution is of course command line driven, but UTM has a GUI on top of it. And with the UTM Gallery a quick start is guaranteed.

Linux Guests

Grab an ISO from your favourite distribution :

Some sites might offer VM images (e.g. .qcow2) for download as well.

MacOS Guests

For a Mac-in-Mac experience an IPSW (iPhone Software) file is needed. Some download sites are listed here like this one or go beta.

Windows Guests

You can grab the latest ISO from here https://www.microsoft.com/software-download/windows11, but be aware that you'll need to emulate this on Apple Silicon machines. Windows Insider offers an ARM64 build, but you'll need to sign up.

Converting Virtual Boxes

Virtual Boxes come in different shapes and sizes like .vmdk, .ova or .vdi. If you like adds, then checkout thispage or here which has all the conversion options laid out.

An example:

qemu-img convert -f vdi -O qcow2 ubuntu.vdi ubuntu.qcow2 

VM's as Code

One can create and provision a virtual machine fully automatic either on your on-prem hardware or somewhere in the cloud. This is known as Infrastructure as Code. The links here are put up for reference purpose only and not meant as a quick start into this area (with maybe Vagrant being the exception).