Menu

Refind on Macbook Pro 17 after install of El Capitan problems

DiBosco
2016-02-22
2016-02-22
  • DiBosco

    DiBosco - 2016-02-22

    Folks,

    I have a Macbook Pro 17 that's about four years old and was running Mountain Goat or something like that for the rare occassions I wasn't using Linux (basicaly for running Logic). My "Mac expert" friend was here at the weekend and I foolishly let him talk me in to "upgrading" to El Capitan. Turns out El Capitan is more like El Dictator and has totally borked my computer.

    I managed to boot into recovery mode on OS X, and install refind again and that seemed to find my old Linux install, exept it's a bit funky. There was no longer the usual Mageia boot screen, just something that says "refind - booting OS" os something similar.

    It does try to boot up Linux, but gets to a point where it says:

    "The display driver currently configured requires you to use the nokmsboot boot option to prevent the KMS driver from being loaded in the boot process."

    It tells me it may not display properly and ure enough the boot process never completes.

    As Linux is so fast to reinstall, I just thought I'd do that and I'd be fine, but it does exactly the same thing.

    The Mageia forum says to hold down F3 at the boot screen to stop getting this message, but I can't even get to the boot screen any more.

    I tried re-running the installer and noticed that the bootloader wasn't trying to boot from / any more and thought that must be it. When I rebooted, there was an extra entry that said boot from 16G partitiion (which is my root partition), but when I try that is says there's no bootable disk.

    Can anyone help with this issue please?

     

    Last edit: DiBosco 2016-02-22
  • Roderick W. Smith

    Chances are your re-installed rEFInd is trying to boot Mageia in a different way than it did originally. Broadly speaking, there are three ways rEFInd can boot Linux:

    • via a BIOS-mode boot loader, such as GRUB, typically denoted by a description about booting Linux from a disk
    • via a conventional EFI-mode boot loader, such as GRUB, typically denoted by the presence of grub.efi, grubx64.efi, shim.efi, or shimx64.efi in the boot description
    • via the EFI stub loader, typically denoted by the presence of vmlinuz or bzImage in the boot description

    It's unclear from your description which way the computer had been booting, or which way you're trying to boot now. My suspicion is that a BIOS-mode boot loader was involved in at least one case (past or present). You may want to read this page of the rEFInd documentation for some more information on the last two options. You can learn what you're using by examining the boot descriptions that appear when you highlight an option. If you're in doubt, post back with the exact and complete description text.

    The nokmsboot option you say is being requested must be entered in the boot loader configuration. In the case of the first two possibilities, that would be outside of rEFInd's control. For the EFI stub loader, you'd enter the options in /boot/refind_linux.conf, which might not exist now. You can regenerate it by running the mkrlconf script that comes with rEFInd. (Do this from Linux.)

    If a BIOS-mode boot is currently required, you must also have a hybrid MBR, at least on Macs. These are ugly and dangerous, so I advise against using them whenever possible. Most Linux distributions replace hybrid MBRs with the (more proper) protective MBR data structure, and so installing Linux may interfere with a BIOS-mode boot. If this is the root cause of your problem, I advise instead attempting a boot via the EFI stub loader; however, if this doesn't work and you must fall back on a BIOS-mode boot, you may need to create a new hybrid MBR.

    To use the EFI stub loader, rEFInd must be able to read your Linux kernels. To do this, it needs the EFI filesystem driver for whatever filesystem holds your kernels (normally ext4fs). This driver might or might not have been installed automatically when you installed rEFInd. If not, you can install it manually by copying the file to the EFI/refind/drivers_x64 subdirectory on the ESP. See the rEFInd drivers page for more on this topic.

     
  • DiBosco

    DiBosco - 2016-02-22

    Many thanks for the info.

    I'm not sure about it previously using BIOS. When I did this before it just worked. It was years ago and I honestly don't know how it worked. Especially as I don't really understand bootloaders, boot partitions, MBRs and all this jargon.

    Changing from nvidia's driver to nouveau enabled me to boot and not get the original error message. However, to make things worse I went into the bootloader section of Mageia Control Centre and it told me I didn't have a boot loader installed (!) So I installed one and now I can't boot into OSX but I can into Linux.

    Oh joy. Am thinking I'll have to erase everything and start from scratch.

     

    Last edit: DiBosco 2016-02-22
  • Roderick W. Smith

    High-level "control panel" type tools are usually pretty stupid. In your case, the tool knew to check for a small number of boot loaders (maybe just one: GRUB 2) and no more. rEFInd is a fairly obscure boot manager by Linux standards, so it's not surprising that the control panel didn't know to look for it.

    Don't erase everything. You might want to try the new refind-mkdefault script from Linux. Click the download link, then give it execute permissions by typing chmod a+x ~/Downloads/refind-mkdefault (assuming it winds up in ~/Downloads). You can then run it. This script is new enough that it's not yet part of rEFInd, but I intend to add it to the next release. Its purpose is to restore rEFInd as the default boot program if something else takes over that position, as has happened to you.

     

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.