This fall I dusted off my old mac mini (32 bit EFI, 64 bit CPU) to see if it could run linux. A mere 3 days later -- lol! -- I had it dual booting macOS and mint, using rEFIt. I use distros specifically modified to install on early macs from mattgadient.com. In my experience these distros are no panacea but some worked for me. Having no real application for it I put the mini back on the shelf.
Last week I decided I'd like to turn the mini into a dedicated pi-hole appliance. Pi-hole is limited to just a few distros, I decided on debian. I blasted the linux partitions and rebooted and somehow rEFIt failed. I decided to start from scratch, this time using rEFInd. I installed macOS and manually installed rEFInd to the ESP. I had to do a little rearch to get proper syntax for the "bless command" to work.
rEFInd came right up, no problem finding/launching my optical media installer and Debian installed fine. On reboot, rEFInd won't find Debian. I did troubleshooting, verified my rEFInd install 3 times etc. Finally I decided to blast Debisan and rEFInd on ESP and reinstall rEFInd to the system partion, which I did with the install script, no issues.
BTW, throughout troubleshooting I'm able to boot Slacko-puppy from cd and check/mount the linux (and mac, ESP) filesystem and perform any operations.
I reinstalled Debian, rebooted and rEFInd still doesn't find it. As I was troubleshooting again I finally discovered John Wells' bootia32.efi which allows the mac to see bootable usb sticks.
So here's where I'm stuck. Attempting to boot from usb dumps me to a grub2 shell. From the shell I can ...
set root=(hd1, gpt4)
linux (hd1,gpt4)/boot/linuz [tab complete]
initrd (hd1,gpt4)/boot/initrd [tab complete] root=UUID=xxxxxxxx-xxxx-xxxx-xxxxxxxx
boot
Debian boots and runs without issue.
How can I explicitly force rEFInd to hit Debian? Since this will be a dedicated appliacnce, that's all I want to do. I don't care about having rEFInd ever again scan for or boot anything else. Ultimately if I can't get this build to work I may try the dual-usb install method than eliminates macOS altogether and results in a whole-disk EFI-only linux install. I'd much prefer to use the build I have, I don't care about the mac partition, disk has tons of headroom.
I'm new, created an account solely for this issue, but I look forward to making further use of sourceforge. Thanks!
[edit] I swear I had a subject line! It was "2007 mac mini 2,1 dual boot macOS and Debian, rEFInd not finding Debian"
Last edit: Scooter Thomas 2019-01-23
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
When using a Mac, and especially one of the older ones with a 64-bit CPU but 32-bit EFI, as a Linux-only computer, the best approach is to install Linux in BIOS/CSM/legacy mode on a pure MBR disk. This approach bypasses EFI's bit-depth ties that can cause problems booting a 64-bit OS from a 32-bit EFI. For a Linux-only computer, you'll be giving up virtually nothing by booting in BIOS mode. The only tricky part of this is in controlling your boot mode. This page of mine covers this topic, although that page is written with the goal of helping people boot and install EFI mode, rather than in BIOS mode. The background information and general procedures are related, though.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
This fall I dusted off my old mac mini (32 bit EFI, 64 bit CPU) to see if it could run linux. A mere 3 days later -- lol! -- I had it dual booting macOS and mint, using rEFIt. I use distros specifically modified to install on early macs from mattgadient.com. In my experience these distros are no panacea but some worked for me. Having no real application for it I put the mini back on the shelf.
Last week I decided I'd like to turn the mini into a dedicated pi-hole appliance. Pi-hole is limited to just a few distros, I decided on debian. I blasted the linux partitions and rebooted and somehow rEFIt failed. I decided to start from scratch, this time using rEFInd. I installed macOS and manually installed rEFInd to the ESP. I had to do a little rearch to get proper syntax for the "bless command" to work.
rEFInd came right up, no problem finding/launching my optical media installer and Debian installed fine. On reboot, rEFInd won't find Debian. I did troubleshooting, verified my rEFInd install 3 times etc. Finally I decided to blast Debisan and rEFInd on ESP and reinstall rEFInd to the system partion, which I did with the install script, no issues.
BTW, throughout troubleshooting I'm able to boot Slacko-puppy from cd and check/mount the linux (and mac, ESP) filesystem and perform any operations.
I reinstalled Debian, rebooted and rEFInd still doesn't find it. As I was troubleshooting again I finally discovered John Wells' bootia32.efi which allows the mac to see bootable usb sticks.
So here's where I'm stuck. Attempting to boot from usb dumps me to a grub2 shell. From the shell I can ...
Debian boots and runs without issue.
How can I explicitly force rEFInd to hit Debian? Since this will be a dedicated appliacnce, that's all I want to do. I don't care about having rEFInd ever again scan for or boot anything else. Ultimately if I can't get this build to work I may try the dual-usb install method than eliminates macOS altogether and results in a whole-disk EFI-only linux install. I'd much prefer to use the build I have, I don't care about the mac partition, disk has tons of headroom.
I'm new, created an account solely for this issue, but I look forward to making further use of sourceforge. Thanks!
[edit] I swear I had a subject line! It was "2007 mac mini 2,1 dual boot macOS and Debian, rEFInd not finding Debian"
Last edit: Scooter Thomas 2019-01-23
So, since I installed rEFInd before linux it didn't install the Ext4fs driver. Of course it's in the docs.
When using a Mac, and especially one of the older ones with a 64-bit CPU but 32-bit EFI, as a Linux-only computer, the best approach is to install Linux in BIOS/CSM/legacy mode on a pure MBR disk. This approach bypasses EFI's bit-depth ties that can cause problems booting a 64-bit OS from a 32-bit EFI. For a Linux-only computer, you'll be giving up virtually nothing by booting in BIOS mode. The only tricky part of this is in controlling your boot mode. This page of mine covers this topic, although that page is written with the goal of helping people boot and install EFI mode, rather than in BIOS mode. The background information and general procedures are related, though.