Skip to main content
3 of 5
added 36 characters in body
Mecki
  • 111
  • 4

Can install on white MacBook (2010) but boot only shows black screen

I have an old, white MacBook. Not sure if that is a 2009 or 2010 model, but I think it is the 2010 model. It has no macOS installed anymore (the partition was deleted) and as it cannot run any current macOS version to begin with (I think 10.11 is the last one it could run), I tried to install elementary OS on it instead.

I downloaded 5.1.7 Hera, made a bootable USB stick and was able to boot from the USB stick without issues. I ran the installer and everything seem to be working fine. Except when I try to boot the installed system, I only get a very dark gray screen, then after a short while a black screen, and nothing else happens. No boot logo, no boot menu, and the system does not react to any keyboard input (e.g. CTRL+ALT+FN+F1 does nothing). I can only open the GRUB prompt by pressing ESC during boot but I don't know what to do there.

In an attempt to work around, I downloaded rEFInd and made a bootable USB stick from it. I can boot into the rEFInd boot menu without problems. There I can choose to boot either

EFI\ubuntu\grubx64.efi

which shortly displays some text on screen, so that's more than when booting without rEFInd, but no GRUB boot menu and it's displayed way too short to be readable. After that the same behavior as before.

Or I can choose to boot

boot/vmlinuz-5.4.0-60-generic

which shows the normal text messages of a booting Linux kernel, so it seems the kernel is loading and initializing just fine, followed by text output of system services starting (looks familiar if you know other Linux systems - I guess these are from systemd) but at the end, the screen goes black again and that's it.

rEFInd allows me to pass boot options to either GRUB or the Linux kernel.

  • I tried to pass nomodeset to either one, no effect.
  • I tried to pass nouveau.modeset=0 to either one, no effect.
  • I tried to pass the following to either one, without any effect: i8042.nomux=1 i8042.reset i915.lvds_channel_mode=2 i915.modeset=1 i915.lvds_use_ssc=0

These are all the solutions I found here when searching for similar problems yet none of these worked. I'm somehow lost.

Note that I can run the live system without any problems, so if you want me to boot into that system and perform some commands to get further debug info or to change the installed system, this is no problem. As you may have noticed, I'm very tech-savvy but not an expert for debugging Linux boot issues.

Mecki
  • 111
  • 4