Skip to content
Courses

Set Up UTM on macOS

Lab SetupmacOS path60–120 minutesChoose one setup pathBuilds on: Hyper-VNo lab next

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 M-series or another Apple chip means the Mac uses ARM64. UTM must emulate x86-64 for this course.

Apple Silicon can virtualize ARM64 Linux a lot faster than it can emulate anything, so the next instruction is going to feel wrong. Take the x86-64 emulation path anyway. Every program and assembly example we hand you is x86-64, and the instructions you read have to match the ones actually executing. It will be slower than an ARM64 VM, and that is the trade we’re making on purpose.

These instructions follow UTM 4.7.5 for macOS, which needs macOS 11 Big Sur or later. UTM ships two builds that are functionally identical:

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

Paying supports the project rather than unlocking anything, so pick whichever you prefer. If you take the direct download, open the DMG and drag UTM into Applications.

Start UTM. If macOS asks whether you really want to open an application downloaded from the internet, stop and confirm you got it from the official UTM page before you click through.

Download the official Ubuntu 24.04.4 Desktop AMD64 ISO. The file you want is named ubuntu-24.04.4-desktop-amd64.iso.

Open Terminal on the Mac host and check what you actually got:

Terminal window
shasum -a 256 ~/Downloads/ubuntu-24.04.4-desktop-amd64.iso

The SHA-256 value must be:

3a4c9877b483ab46d7c3fbe165a0db275e1ae3cfe56a5657e5a47c2f99a99d1e

So if the hash doesn’t match, delete the file and download it again.

And don’t take the ARM64 image, even though Ubuntu will recommend it for an Apple Silicon Mac. That recommendation is perfectly sensible for general Linux use (our x86-64 lab environment is the exception, not Ubuntu’s advice).

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 Systems Foundations 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 Systems Foundations and save it.

Emulated installation usually takes a lot longer than whatever estimate Ubuntu puts on the screen, and long pauses don’t mean it has frozen. If the same screen sits there with no activity for 20 minutes, check UTM’s activity indicator before you force the VM off. Forcing it off during installation may leave you needing to restart the installation.

Select the VM, open its settings, and find Network, then use Shared Network mode. That gives you NAT-style connectivity through macOS, and it is all we need for the installation and the updates.

Don’t add a shared directory yet. Shared folders wire the VM straight into your host files, and nothing in the early course needs that.

Start the VM with the play button, and give it a moment before you decide nothing is happening.

  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 here means the empty virtual disk we just created, and not the Mac’s internal drive.

UTM may restart into a black screen, or drop you back at the installer. Stop the VM, open its settings, select the removable CD/DVD drive, eject the Ubuntu ISO, and start the VM again. UTM’s own Ubuntu guide mentions you sometimes have to pull the installer media by hand. This is expected, and not a sign anything went wrong.

Log in, open Terminal, and run:

Terminal window
uname -m

You should get:

x86_64

If it prints aarch64 or arm64, you built an ARM guest by mistake. Go back to the creation steps right now, before you sink more time into a VM built for the wrong architecture.

Then confirm the guest is pinned to the LTS release this course was built against:

Terminal window
grep '^VERSION_ID=' /etc/os-release

It has to print VERSION_ID="24.04". Now update Ubuntu and install UTM’s integration agents:

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

The agents support clipboard integration, time synchronization, and dynamic resolution. They don’t change the guest architecture; a guest reporting ARM still needs to be recreated using the x86-64 path.

Shut Ubuntu down first, and then, if your UTM configuration offers snapshots, create one named:

Clean Ubuntu installation

If snapshots aren’t available for the backend you picked, leave the VM powered off and duplicate or archive its .utm package in Finder. Keep the VM powered off while copying the package. Copying files while the guest changes them can leave you with an inconsistent recovery copy.

Before continuing, confirm that Ubuntu boots, reports x86_64, and can reach its package repositories. Keep the recovery point so you can return to this working setup.

  • Apple Silicon guest reports arm64 or aarch64: delete the VM and rebuild it with Emulate, x86_64, and the verified AMD64 ISO. Converting one after the fact is not worth the trouble.
  • The installer repeats or shows a black screen after restart: power off, eject the ISO from the removable drive, and boot again.
  • Emulation seems stalled: check UTM’s activity before you force it off, because x86-64 installation on Apple Silicon is much slower than you expect.
  • Networking fails: put Shared Network mode back before you go editing anything inside Ubuntu.
  • The baseline gets uncertain: restore the snapshot or the powered-off package copy, then run the confirmation commands again.

Keep Ubuntu running, and continue to Prepare Your Course Workspace and complete it inside the VM.

UTM documentation describes the guest settings and host-dependent choices. Check the machine architecture before treating a successful boot as proof of course compatibility.

Knowledge check

Question 1 of 2

The Ubuntu desktop starts. Which evidence checks the instruction set needed by the course binaries?