Skip to content
UnderDunn Courses

Set Up UTM on macOS

Virtual MachinesSetup guide 3 of 360–120 minutes

Open the Apple menu and select About This Mac. Look for Chip or Processor:

  • Intel means the Mac uses the same x86-64 architecture as the course VM. UTM can virtualize the guest directly.
  • Apple M1, M2, M3, M4, or another Apple chip means the Mac uses ARM64. UTM must emulate x86-64 for this course.

Apple Silicon can virtualize ARM64 Linux much faster. We are not doing that because later course labs contain x86-64 programs and the assembly lessons depend on everyone observing the same instruction set. Emulation is slower. That is the cost of keeping the results comparable.

UTM offers two identical builds:

  • The Mac App Store version is paid and receives automatic updates.
  • The GitHub download linked from that page is free and open source.

The payment supports the project; it does not unlock extra features. If you use the direct download, open the DMG and drag UTM into Applications.

Start UTM. If macOS asks whether an application downloaded from the internet should be opened, first confirm that you downloaded it from the official UTM page.

Download the Intel or AMD 64-bit Ubuntu Desktop LTS ISO from the Ubuntu Desktop download page. Its filename should include amd64.

Do not download the ARM64 image, even if Ubuntu recommends it for an Apple Silicon Mac. That recommendation is sensible for general Linux use; our x86-64 lab environment is the exception.

If About This Mac showed an Intel processor:

  1. Open UTM and select the + button.
  2. Select Virtualize, then Linux.
  3. Select Browse and choose the Ubuntu AMD64 ISO.
  4. Assign 8192 MB of memory and 4 CPU cores. Use 4096 MB and 2 cores if the Mac has only 8 GB total.
  5. Create a 60 GB virtual drive.
  6. Skip shared directories for now.
  7. Name it UnderDunn Vulnerability Research and save it.

If About This Mac showed an Apple chip:

  1. Open UTM and select the + button.
  2. Select Emulate. Do not select Virtualize.
  3. Select Linux.
  4. Choose x86_64 as the architecture. Keep the default system and machine selections.
  5. Assign 8192 MB of memory and 4 CPU cores if offered.
  6. Select the Ubuntu AMD64 ISO.
  7. Create a 60 GB virtual drive.
  8. Skip shared directories for now.
  9. Name it UnderDunn Vulnerability Research and save it.

Emulated installation can take considerably longer than Ubuntu’s estimate. Long pauses do not necessarily mean it has frozen. If the same screen shows no activity for 20 minutes, check UTM’s activity indicator before forcing the VM off.

Select the VM, open its settings, and find Network. Use Shared Network mode. This provides NAT-style connectivity through macOS and is enough for installation and updates.

Do not add a shared directory yet. Shared folders connect the VM directly to host files, and the early course does not need one.

Start the VM with the play button.

  1. Select your language, accessibility settings, and keyboard layout.
  2. Select Install Ubuntu.
  3. Choose the interactive installation and default application selection.
  4. Allow updates during installation if offered.
  5. Choose Erase disk and install Ubuntu.
  6. Create an account. A username such as student is fine.
  7. Let installation complete and select Restart Now.

“Erase disk” refers to the empty virtual disk, not the Mac’s internal drive.

UTM may restart to a black screen or return to the installer. Stop the VM, open its settings, select the removable CD/DVD drive, and eject the Ubuntu ISO. Start the VM again. UTM’s Ubuntu guide notes that removing the installer media manually may be necessary.

Log in, open Terminal, and run:

uname -m

The expected result is:

x86_64

If it prints aarch64 or arm64, you created an ARM guest. Return to the creation steps now, before investing more time in a VM that will not match later labs.

Update Ubuntu and install UTM’s integration agents:

sudo apt update sudo apt upgrade sudo apt install spice-vdagent qemu-guest-agent sudo reboot

The agents improve clipboard behavior, time synchronization, and dynamic resolution. They do not change the guest architecture.

Shut down Ubuntu. If your UTM configuration offers snapshots, create one named:

Clean Ubuntu installation

If snapshots are not available for the selected backend, leave the VM powered off and duplicate or archive its .utm package in Finder. Never copy the package while the VM is running.

Knowledge check

Question 1 of 3

Which mode should an Apple Silicon Mac use for this course VM?