MacBook taking long time to load the boot loader; rEFInd freezes

bootdual-bootefihangnvram

I have a MacBook Pro 2015 and I am dual booting with Linux. I use rEFInd and since day 1 it has been working fine on most occasions. Sometimes it would take a long time to show its screen and then it would freeze, updating every 5-10 seconds (so if I press down on my keyboard twice, it would jump two entries down in a few seconds). In those cases I would clear the PRAM/NVRAM, re-bless rEFInd and it will be ok. Recently however it happened again and this time resetting PRAM/NVRAM does not help. Furthermore, under Linux no input devices work (neither internal, nor USB keyboard). lshw lists them as working and with a loaded kernel module for them… Internal keyboard works under OS X.

EDIT: The reason I think it may be a hardware problem Related to the issue is that loading the bootloader (whether it is rEFInd after I bless it, or the native Apple bootloader as soon as I clear PRAM) takes about 20 seconds after the start up chime, which is not normal. I noticed that after I reset PRAM, I hear the start up chime, only 3 seconds later I see the Apple logo (boot is fast) and on the very next reboot, it hangs somewhere, which now leads me to believe that maybe some of my OS X settings which also modify the PRAM are corrupted and corrupt the PRAM. Is there a way to prevent OS X from modifying the PRAM in ANY way?

I'd hate to take it to a service, since they'll tell me "20 seconds is not long and we don't deal with 3rd party loaders", but I know it never used to take more than 3 seconds to show the Apple logo, so something must have changed. Ideas?

P.S. I use Gentoo, whose kernel is perfectly capable of being booted directly from the UEFI firmware and there are instructions on how to do this using efibootmgr but they are not specifically for Macs and I've read in some places that efibootmgr may/will brick the firmware on Macs so I am reluctant to try…

Best Answer

I'm assuming you're dealing with a Retina MacBook Pro. If your Mac is taking that long to find something to boot and then also taking forever to boot afterwards then you may potentially have faulty storage.

Yes they probably will baulk at the 3rd party boot loader but as long as you have a backup you'll be OK. The Apple Store will run hardware tests to confirm whether or not the storage is faulty as well as reload the current version of OS X after wiping your storage. It's part of their testing so if they can't load OS X cleanly then it's definitely a hardware issue.

You can find your local contact number here: https://support.apple.com/en-au/HT201232

On that note, why not just try cleanly installing OS X yourself after erasing your storage?

See http://osxdaily.com/2014/12/14/reinstall-os-x-mac-internet-recovery/

If you can do that successfully then you're just looking at an issue with rEFInd and/or your Linux partition (by the way why not just get Linux booting natively through EFI without the extra boot loader? http://heeris.id.au/2014/ubuntu-plus-mac-pure-efi-boot-short-version/)