I am posting this for the benefit of the community, in case it helps someone else along the way. I've had some problems getting Linux to install or even boot on this machine. At some point I did manage to install a version of Ubuntu Server (I think it was 12.04) alongside Mac OS X, booting in BIOS emulation mode, using rEFInd. However that install never worked correctly to my satisfaction. Requiring the use of the Mini as a server once more, I turned to the challenge of installing 15.04 Server, single-boot (no OS X), in pure EFI mode, using only the Mac EFI boot loader.
The technical background is available at the rEFInd Boot Manager site.
The guide which I followed and which, with a few tweaks, got me up and running, is by Jason Heeris.
On my Mac, I started with a reasonably fresh but basic install of OS X 10.5 with the rEFInd boot manager installed.
I downloaded the Ubuntu Server 15.04 server ISO and then created a bootable USB drive on my Windows 8.1 laptop with Rufus for Windows (although I suspect the Universal USB Installer on Windows and the Startup Disk Creator on Ubuntu would have worked as well).
I soon realised (by repeated attempts) that I was never going to be able to boot the USB either via the Mac boot manager or rEFInd.
The first thing to note about the Mac Mini 2,1 is that while it has an x64 processor (Core 2 Duo), it has a 32-bit EFI implementation. It took me a while to figure this out but once I did, I then knew what I need to do to get the Ubuntu Server installer to boot.
I found an article by sturmflut detailing how to install Ubuntu on BayTrail tablets, which apparently also have a 32-bit EFI. Specifically, it talks about downloading a 32-bit bootia32.efi (for GRUB). This file is necessary because the Ubuntu installer only supports booting GRUB in EFI mode for 64-bit EFI implementations.
After reading this, I did the following:
1. Removed rEFInd from my Mac so it booted only using the Mac boot loader.
2. Downloaded the bootable CD image of rEFInd from here and used Rufus (on Windows) to create a second bootable USB stick.
3. Downloaded the bootia32.efi from John Wells.
4. Placed the bootia32.efi in the /EFI/BOOT folder on the Ubuntu Server installer USB stick.
5. Placed both USB sticks in the Mac, rebooted it, held down the ALT key on my keyboard to bring up the Mac boot manager, clicked "EFI Boot" which was the rEFInd boot image and rEFInd loaded. I then selected the option which included the words "bootia32.efi" in the options (it was an Ubuntu graphic) and selected it. The Ubuntu Installer USB stick then booted, presenting the GRUB menu, from which I could select "Install Ubuntu Server".
6. I then installed Ubuntu server to the internal hard drive, using the partitioning option "Guided - use entire disk", which blew away the existing OS X install. At the end when it tries to install GRUB to /dev/sda, this failed (no matter, it would be re-installed later).
I then manually booted using the same process as before with the rEFInd USB stick, broadly following Jason Heeris' guide.
When I got to this line on installing extra packages:
Code:
sudo apt-get install mactel-boot hfsprogs gdisk grub-efi-amd64
I instead ran:
Code:
sudo apt-get install mactel-boot hfsprogs gdisk grub-efi-ia32
When I got to this line on installing grub:
Code:
sudo grub-install --target x86_64-efi --boot-directory=/boot --efi-directory=/boot/efi --bootloader-id="$(lsb_release -ds)"
I instead ran:
Code:
sudo grub-install --target i386-efi --boot-directory=/boot --efi-directory=/boot/efi --bootloader-id="$(lsb_release -ds)"
sudo update-grub
The second line is necessary to actually add the boot menu entries. Not sure why it was not required by Jason Heeris, possibly because his GRUB installed during the installation successfully?
I then rebooted and my system booted straight into Ubuntu Server 15.04, in pure EFI mode. The system appears to be more stable than my last installation and will reboot headless (which the the 12.04 installation wouldn't).
I have one outstanding issue (unrelated to the install) which I will post in another thread.
This process should work on any Intel Mac which has a 64-bit processor and a 32-bit EFI (and for any variant, Desktop, Kubuntu, etc).
Happy to answer any questions!
Regards
Bookmarks