Monday, August 10, 2015

Yosemite Macs - Progress Bar Stops at 50% During Boot

This is a well-known problem at it has been discussed elsewhere.  However, I wanted to put the fix on our KB to avoid having to search for it in the future.

Symptom:  Upon starting up, Yosemite Macs freeze and the progress bar stops at 50%.  This seems to be an issue with FileVault2 encrypted Macs that are bound to AD.

Fix:  If the Mac is encrypted you must first decrypt it.  If it is not encrypted, skip down to "Restart the problem computer in Single User Mode" below.

For encrypted Macs:
  • Target boot the problem machine to a working Mac
  • You will be prompted for the FileVault password in order to mount/access the problem machine.  Make sure you have this or you are pretty much screwed
  • After the target computer mounts, open Disk Utility
  • Select the target computers Macintosh HD
  • Go to File/Turn Off Encryption (I have also seen a report that you can select "Unlock Macintosh HD")
  • The HDD will start to decrypt.  This normally takes around 45 minutes depending on the size of the drive.  You must keep the power connected to the target computer or the decrypting process will pause
  • There is no progress bar so the only way to know that the decryption has finished is to exit/launch Disk Utility and see if the disk still shows "Encrypted"
Note:  When I did this I only waited about 15 minutes and then unmounted the target drive.  This seemed OK and later I checked and the decrypting process had simply paused and continued.  The main thing is that you kick-off the decrypt or unlock the drive.
  • After the drive has decrypted, eject it
 Restart in Single User Mode
  • Restart the problem computer in Single User Mode (Command-S after the startup chimes) 
  • At the command prompt type the following:
bash-3.2# mount -uw /
bash-3.2# /usr/bin/nano /etc/rc.server

The nano editor will open; enter the following lines: 


#!/bin/sh  
/bin/echo BootCacheKludge Beta 1.0 - Chris Hotte 2015 - No rights/blame reserved. /usr/sbin/BootCacheControl jettison

Click on ctrl-x and save the file with the default name.

Look at this thread on JAMFNation for the post by Chris Hotte that describes the fix.

After you have done the above, restart the Mac and it should boot normally. 
We created a .pkg that contains the script and we push it out to all our Yosemite Macs prior to encrypting them.