Run Ubuntu on M1 Macbook Air using UTM
Milind Soorya / March 14, 2022
4 min read
Let's face it M1 mac's are the best laptop out there. With a perfect balance of power and batter life. For me the only thing holding it back was its OS. Mac OS is not as developer friendly as I expected. As i found out after using my M1 mac for a few months, some things are better suited for the OS it was designed to be run on.
This was not a problem in the intel mac era, as we could easily load a virtualisation software and run which ever OS we want, but with the new ARM chips its a different story. The only software that I could find which was free and had all the features was UTM.
UTM is an amazing piece of software and it does its job perfectly (mostly), I did face some challenges installing Ubuntu, but to be fair, it was more related to the Ubuntu kernal than UTM.
Installing UTM is pretty straight forward, you can find the software here.
You have to download the Ubuntu server version, don't worry we can easily install GUI after installing the barebone OS. Download Ubuntu.
Please verify you are downloading the ARM version of the software
The steps to install are mentioned on the bottom of the UTM ubuntu webpage. They usually autofill the storage allocation as 64gigs, I would recommend making it to 20gigs as it is more than enough, but feel free to change it according to your use case.
You may also want to specify any required features (e.g. check Docker option for installing docker on ubuntu) as part of the installation, however, these features can also be added later.
Problems with Booting into Ubuntu Due to a recent update in the Linux version, some might find it hard to boot into Ubuntu. You can bypass this problem by doing the following steps in the UTM options menu, located at the top right corner of the application.
- Disabling the QMEU > use hypervisor option
- Changing the display type to Console only
- Boot into Linux, but it will be VERY slow because it is using emulation instead of virtualization.
- Once inside, install the last version of Linux
sudo apt install linux-image-5.4.0-100-generic
- Shut down the VM, open VM settings and under QEMU -> Teaks, check "Use Hypervisor" to re-enable virtualization.
- Start the VM and when the UTM logo shows up, hold "Shift" to enter the GRUB menu
- Select "Advanced Options for Ubuntu"
- Select "Ubuntu, with Linux 5.4.0-100-generic" (or anything lower than 5.4.0-104)
- You can now boot into Ubuntu again. You may choose to uninstall 5.4.0-104 and temporarily mask it from being updated in the future:
sudo apt-mark hold linux-image-$(uname -r)
Problems with internet connectivity There is a solution in the bottom of the UTM page for Ubuntu, for this issue. If its not working try out the solution proposed in this discussion.
That's it.. Its really easy to run Linux or even Windows on your shiny new M1 macs. The possibilities are endless and the experiance is really seamless. During my usage I was able to get very good performance out of the system.
💡 Cool thing to note here is that, now Mac's are really good at running windows and that too for longer than a regular windows system.
please note that you might sometimes face issues while running some of the x86 softwares on an ARM chip but for me its been pretty smooth.
👉🏼 for more update, questions ping me on twitter.
👉🏼 checkout other articles on my blog.
- Installing TensorFlow on M1 MacBook Air with GPU (Metal)
- Install jupyter notebook on ubuntu 20.04 using virtualenv
- Add anaconda to right-click menu in windows
- How to open sublime text from the windows command line