MacOS – Boot screen hangup after upgrade from El Capitan to Sierra

boothangmacosrecovery

I have a late-2011 15" MBP. Yesterday I decided to upgrade from El Capitan to Sierra.

As it turns out, that was not a good idea: the Installation worked, but now after the first reboot, the machine won't boot any more. It'll get stuck on the boot screen (with the Apple logo) with the progress indicator completely finished.

I've tried

  • Waiting 8 hours to see whether it'd move after all
  • Booting into the recovery console and re-running the Sierra install
  • Booting into the recovery console and running Disk Utility's first aid (which says did not encounter any problems)
  • Booting into safe mode (no Change, boot gets stuck)
  • Resetting the NVRAM
  • Resetting the SMC

How can I further diagnose the problem?

Because my last full backup is a week old and I didn't make one before I ran the upgrade (I know I know) it would be very painful to format the HDD, or restore the backup.

Does MacOS have a boot log somewhere that I can look at from the recovery console?

Edit: so I discovered verbose mode and managed to find out what the system apparently is getting hung up on:

SmartBattery: finished polling type 2 
SmartBattery: finished polling type 4 
SmartBattery: finished polling type 4 
SmartBattery: finished polling type 4 
SmartBattery: finished polling type 4 
SmartBattery: finished polling type 4 
SmartBattery: finished polling type 4 
SmartBattery: finished polling type 4 
SmartBattery: finished polling type 2

This discussion seems to hint that the problem could be an incompatible kernel extension that the installer didn't recognize as problematic.

I've started removing third party kexts, but so far without luck. It also seems weird that the problem is unchanged in safe mode…

Best Answer

I managed to fix it. For future generations, here's what I did:

Turned out I needed to start the device in safe mode and let Sierra finish its installation - sorting out whatever incompatibility there was automatically. I did try safe mode, but when it showed exactly the same behaviour - a frozen bootup screen with nothing happening - I gave up after 15 minutes and restarted the machine.

Luckily, I then decided to try safe mode and verbose mode at the same time. To do this, I logged into the recovery console (Cmd + R during bootup), started the terminal, and enabled both modes using

sudo nvram boot-args="-x -v"

(this does not seem to work when booting the machine in Single User mode because of sandbox restrictions; it has to be the terminal in the recovery console)

With this, I managed to see on startup that while the boot screen would be frozen for a long while in safe mode, too, a lot was happening behind the scenes, and eventually I got through to the login screen.

After logging in, the Sierra installer worked for another while (the installation was not yet complete) and rebooted.

(For the record, at this point, I also removed an extension named SteerMouse - but I don't know whether that was what caused the problem. On its website, it does claim to be ready for Sierra.)

Once I was logged in again, I opened a terminal (from within MacOS now, no need for the recovery console) and turned off safe mode and verbose mode again:

sudo nvram boot-args=""

the system is now booted up in normal mode, and everything seems fine.