OS X El Capitan / Sierra Hanging on Boot [FIXED]

If your OS X El Capitan/Sierra update won’t reboot you can skip to the fix or check here for the (mostly) automated fix script. Otherwise feel free to read the saga below!

Update 3/23/2016 – It happened again when I updated to 10.11.4! Even fewer clues this time, additional details and an updated script to remove non-default kext files at the very bottom.

Update 5/14/2017 – This has been an issue for myself and others running OS X Sierra as well.

Update 8/01/2017 – I updated to 10.12.6 and once again was unable to boot. This time I had to remove kexts from /System/Library/Extensions. Removed everything older than 2016 after running ls -lat.

After Update, OS X Won’t Reboot

After upgrading to OS X El Capitan (10.11) when it was released, I had been generally pleased with the new version but there were a few quirks – like random beach ball pauses – that made me think the 10.11.1 update would address some of them. Thus when I was notified that it was available, I dutifully upgraded… and then my MacBook Pro Retina wouldn’t reboot. I reset the SMC (Shft+Ctrl+Opt+Pwr while off, then Pwr), I reset the PRAM (Cmd+Opt+P+R+Pwr while booting, then hold until the chime sounds again), I tried to boot into Safe Mode (Shft+Pwr). Nothing.

Single User and Verbose Mode

I was unable to boot into Single User Mode (Cmd+S+Pwr), but it and Verbose Mode (Cmd+V+Pwr) did show that the boot process was hanging and the last message it displayed was:

pci pause: SDXC

This seemed to be meaningful, but was ultimately a wild goose chase.

Recovery Mode Reinstall

I could boot into Recovery Mode (Cmd+R+Pwr) and used this to access Disk Utility to run First Aid (no errors were found), and then used Terminal to run resetpassword which was then used to reset permissions on my user folder. Nope.

I reinstalled the operating system over the Internet. No dice.

Using Terminal accessible in Recovery Mode I found several crash logs located in /Volumes/Macintosh HD/Library/Logs/DiagnosticReports/. I took a look at the latest one and it had the following details about the crash. Spoiler alert, this also ended up being a dead end, but I’m posting it because the only other place on the Internet it exists is a deleted Apple Developer Forum post that I was able to view using the Google Cache.

Process:               ctkd [220]
Path:                  /System/Library/Frameworks/CryptoTokenKit.framework/ctkd
Identifier:            ctkd
Version:               79.1.1
Code Type:             X86-64 (Native)
Parent Process:        launchd [1]
Responsible:           ctkd [220]
User ID:               0

Date/Time:             2015-10-22 11:04:40.949 -0700
OS Version:            Mac OS X 10.11.1 (15B42)
Report Version:        11
Anonymous UUID:        F17F633A-3BDD-90AB-37F3-86B22856B7C6


Time Awake Since Boot: 14 seconds

System Integrity Protection: enabled

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_BAD_INSTRUCTION (SIGILL)
Exception Codes:       0x0000000000000001, 0x0000000000000000
Exception Note:        EXC_CORPSE_NOTIFY

Application Specific Information:
Sandbox creation failed: AppSandboxUtilRealPathForPath(self.userAccountHomeDirectoryPath) failed
open() for F_GETPATH failed.
NSPOSIXErrorDomain:2 No such file or directory
 
WR/DST: /var/root
  0 lstat() errno: 2
 -1  o:0 (User) m:120755 f:restricted,hidden
    fs: hfs, fsid: 1000004/11, mf: 0480d000 avail:13621070

Application Specific Signatures:
AppSandboxUtilRealPathForPath(self.userAccountHomeDirectoryPath) faile

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_secinit.dylib       	0x000000010ade3193 _libsecinit_setup_secinitd_client + 1543
1   libsystem_secinit.dylib       	0x000000010ade2b2a _libsecinit_initialize_once + 13
2   libdispatch.dylib             	0x000000010aa393c3 _dispatch_client_callout + 8
3   libdispatch.dylib             	0x000000010aa392bb dispatch_once_f + 67
4   libSystem.B.dylib             	0x000000010962aa0c libSystem_initializer + 131
5   dyld                          	0x00007fff6005cf1b ImageLoaderMachO::doModInitFunctions(ImageLoader::LinkContext const&) + 265
6   dyld                          	0x00007fff6005d094 ImageLoaderMachO::doInitialization(ImageLoader::LinkContext const&) + 40
7   dyld                          	0x00007fff600596cd ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 305
8   dyld                          	0x00007fff60059662 ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 198
9   dyld                          	0x00007fff60059662 ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 198
10  dyld                          	0x00007fff60059662 ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 198
11  dyld                          	0x00007fff60059662 ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 198
12  dyld                          	0x00007fff60059662 ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 198
13  dyld                          	0x00007fff60059662 ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 198
14  dyld                          	0x00007fff60059553 ImageLoader::processInitializers(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&, ImageLoader::UninitedUpwards&) + 127
15  dyld                          	0x00007fff600597c3 ImageLoader::runInitializers(ImageLoader::LinkContext const&, ImageLoader::InitializerTimingList&) + 75
16  dyld                          	0x00007fff6004c0f1 dyld::initializeMainExecutable() + 208
17  dyld                          	0x00007fff6004fd47 dyld::_main(macho_header const*, unsigned long, int, char const**, char const**, char const**, unsigned long*) + 3515
18  dyld                          	0x00007fff6004b276 dyldbootstrap::start(macho_header const*, int, char const**, long, macho_header const*, unsigned long*) + 512
19  dyld                          	0x00007fff6004b036 _dyld_start + 54

Thread 0 crashed with X86 Thread State (64-bit):
  rax: 0x000000000000013c  rbx: 0x00007fff57441810  rcx: 0x4300ee869eb237d3  rdx: 0x000000010ade3bd5
  rdi: 0x0000000000000000  rsi: 0x00007fb8718129bb  rbp: 0x00007fff57442090  rsp: 0x00007fff574417f0
   r8: 0x0000000000000002   r9: 0x000000010ade3bf0  r10: 0x000000010aba9201  r11: 0x00000046e5c2ef75
  r12: 0x00007fb871700060  r13: 0x00007fb8718128b4  r14: 0x00007fb8718128b4  r15: 0x00007fb871812a0c
  rip: 0x000000010ade3193  rfl: 0x0000000000010206  cr2: 0x00007fb873000000
  
Logical CPU:     4
Error Code:      0x00000000
Trap Number:     6

The OS X Fix You’ve Been Looking For

I was ultimately able to surmise that the issue was an incompatible kernel extension (kext file). After booting into Recovery Mode, I opened Terminal. First I mounted the filesystem as read write, then navigated to /Volumes/Macintosh HD/Library/Extensions, created a new folder named “Unsupported” and moved all the kext files into it, then rebooted.

Note: see the updated script at the very bottom of this post to automatically remove non-default kexts. If you have renamed your hard drive to something other than “Macintosh HD” use the new name in the following commands.

mount -rw /
cd /Volumes/Macintosh\ HD/Library/Extensions/
mkdir Unsupported
mv *.kext Unsupported
reboot

Voila! I was able to reboot.

It ended up being my Logitech Control Center kext files, as best I could determine. The full list of kext files on my system is below. Note that the 360Controller.kext, Wireless360Controller.kext and WirelessGamingReceiver.kext later caused problems with 10.11.4, see bottom.

/Volumes/Macintosh HD/Library/Extensions
> ls -1
360Controller.kext
ACS6x.kext
ATTOCelerityFC8.kext
ATTOExpressSASHBA2.kext
ATTOExpressSASRAID2.kext
ArcMSR.kext
CalDigitHDProDrv.kext
HighPointIOP.kext
HighPointRR.kext
LogiMgrDriver.kext
LogitechHIDDevices.kext
LogitechUnifying.kext
PromiseSTEX.kext
SoftRAID.kext
Wireless360Controller.kext
WirelessGamingReceiver.kext

After moving them all to Unsupported I ended up moving them all back except for LogiMgrDriver.kext, LogitechHIDDevices.kext, and LogitechUnifying.kext and am posting this from the previously unbootable machine. These may not be the same incompatible kext files you have (VirtualBox and Evernote also seem to be offenders), but hopefully sets you on the right track. Good luck!

Failed Update to El Capitan 10.11.4

Once again my El Capitan upgrade didn’t go very smoothly. Same as last time, my laptop failed to reboot after the install seemed to complete, however this time there were even fewer clues – no crash logs, etc. Luckily I had fixed this once before so I booted into Recovery mode (Cmd+R while booting), selected Utilities > Terminal to access the command line. The script below creates a Library/ExtensionsDisabled folder and moves and of the non-default kext files into it by comparing against the /Library/Extensions directory on the recovery partition. You may need to move some kext files back to their original location if they aren’t the cause of the problem. Keep in mind that the default name for your hard drive will be “Macintosh HD” which means you need to escape the space on the command line, so it becomes “Macintosh\ HD”. If you have renamed your hard drive, use whatever name you selected instead.

Open Safari from Terminal in Recovery Mode

If you want to access Safari to browse the web (this post?) once you have Terminal open enter /Applications/Safari.app/Contents/MacOS/Safari & to open a browser window. Once the process is completed close the Safari and Terminal windows and reboot.

Script to Disable Non-Default Kext Files

This script will look for any extensions on your system that aren’t part of the “default” extension installed by Apple. If they are found they are moved into a directory named “/Volumes/Macintosh\ HD/Library/ExtensionsDisabled/” so that they will not be loaded when you reboot. Make sure that your hard drive is named correctly in the commands, by default it’s “Macintosh HD” unless it was changed. If you’re new to the command line the easiest way to do this is to launch Safari from Terminal and then cut and paste from this post. Good luck!

# mount the drive as read/write
mount -rw /

# create a directory for "disabled" extensions
mkdir /Volumes/Macintosh\ HD/Library/ExtensionsDisabled

# view files that exist in your Extensions folder but not the recovery partition
kexts=`comm -23 <(ls /Volumes/Macintosh\ HD/Library/Extensions|sort) <(ls /Library/Extensions|sort)`
echo $kexts

# move "extra" kext files to the "disabled" directory
for kext in $kexts; do 
    mv /Volumes/Macintosh\ HD/Library/Extensions/$kext /Volumes/Macintosh\ HD/Library/ExtensionsDisabled/$kext; 
done

exit

Incompatible OS Sierra Kexts

When I upgraded to OS X Sierra 10.12.6 my system wouldn’t reboot. As I had seen this before I removed the kexts in /Volumes/Macintosh HD/Library/Extensions but it still wouldn’t boot. I was in a hurry to get my system up again so in a rush I removed everything older than 2016 from /System/Library/Extensions and was able to start up again. I don’t use the software/hardware related to these kexts so I just left them all off, I’m not sure which was the actual culprit(s). I did keep a backup and my system has been stable since I moved them – note that you cannot modify the `/System` path so you will need to back them up somewhere else.

mkdir /Volumes/Macintosh\ HD/Library/ExtensionsSystemDisabled
mv /System/Library/Extensions/VeryOldKernelExtension.kext /Volumes/Macintosh\ HD/Library/ExtensionsSystemDisabled
> ls -lat /Volumes/Macintosh HD/Library/ExtensionsSystemDisabled
total 0
drwxr-xr-x+ 71 root  wheel  2414 Jul 28 14:28 ..
drwxr-xrwx  32 root  wheel  1088 Jul 28 14:19 .
drwxr-xr-x   3 root  wheel   102 Nov 15  2014 NoSleep.kext
drwxr-xr-x   3 root  wheel   102 Jul  8  2013 EnergyDriver.kext
drwxr-xr-x   3 root  wheel   102 Jun  6  2013 CUDA.kext
drwxr-xr-x   3 root  wheel   102 Apr 19  2013 PdaNetDrv.kext
drwxr-xr-x   3 root  wheel   102 Oct 26  2012 hp_Inkjet7_io_enabler.kext
drwxr-xr-x   3 root  wheel   102 Oct 26  2012 hp_Deskjet_io_enabler.kext
drwxr-xr-x   3 root  wheel   102 Aug  8  2012 FTDIUSBSerialDriver.kext
drwxr-xr-x   3 root  wheel   102 Jun 29  2012 hp_fax_io.kext
drwxr-xr-x   3 root  wheel   102 May 22  2012 JMicronATA.kext
drwxr-xr-x   3 root  wheel   102 May 18  2012 jawbone.kext
drwxr-xr-x   3 root  wheel   102 Mar  7  2012 SiLabsUSBDriver.kext
drwxr-xr-x   3 root  wheel   102 Oct 12  2011 MindWave.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 LGEMobileSolutionFamily.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 PTRayUSBFamily.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 RIMBBUSB.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 RIMBBVSP.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 ZTEUSBCDCACMData.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 NovatelWirelessWWAN.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 PTUMWDrv.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 SierraDevSupport.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 SierraFSCSupport.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 SierraFSRSupport.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 SierraHSRSupport.kext
drwxr-xr-x   3 root  wheel   102 Aug 17  2011 SMSIWirelessModem.kext
drwxr-xr-x   3 root  wheel   102 Nov 21  2010 BJUSBLoad.kext
drwxr-xr-x   3 root  wheel   102 Sep 25  2010 HuaweiDataCardDriver.kext
drwxr-xr-x   3 root  wheel   102 Oct 28  2007 USBExpressCardCantWake_Huawei.kext
drwxr-xr-x   3 root  wheel   102 Jun  6  2007 RemoteControl.USBLAN_usbpart.kext
drwxr-xr-x   3 root  wheel   102 Jun  6  2007 Belcarra.USBLAN_netpart.kext
drwxr-xr-x   3 root  wheel   102 Jun  6  2007 Belcarra.USBLAN_usbpart.kext

You may also like...

350 Responses

  1. David says:

    You’re a legend, thanks! Saved all my files, currently backing up as I was kicking myself for not doing before.

    • Justin Silver says:

      Nothing like a good scare to remind you to back up. I was in the same boat the first time I had to fix this and now all my files go to a USB hard drive, a NAS, an Internet backup, plus all my work files are in Dropbox 🙂

  2. David Fulton says:

    Many, many thanks! I’ve spent hours dealing with this as I desperately needed this machine for work. You’re a life-saver!

    One issue that I experienced, which I thought I’d share, was that I couldn’t even get into recovery mode if the machine had been sitting in its “hung” state for a while. The only cure was to turn it of for a long period of time. After that point, it was possible to fire it up and it would respond to the boot keys again. Macbook Pro 13″ 2010 model.

  3. Eric Mutemi says:

    Thank Justin you my friend are a life saver just managed to boot again only after I tried the internet recovery mode… moved all the kext files to unsupported. What I want to know now is which kext files should I return to the Extensions folder

    • Justin Silver says:

      Hi Eric, Glad you were able to get your system booting again. Unfortunately there doesn’t seem to be a surefire way to identify the incompatible kext files, you will need to make a best guess or use trial and error to figure out which one was the problem. Good luck!

  4. Dan says:

    Thanks a lot.

  5. Snorri says:

    First of all, thank-you for this guide.

    I’ve been struggling with a loading screen stuck at 100% after updating to High Sierra. It was good for two boots and by the third, right after I installed Paragon Driver, I have been stuck at with a loading bar at 100%. Listing my System Library .kext files does not reveal there to be anything from older than a year ago, they only go back to last July. Problematically, I can’t even seem to delete (though I can copy) them even using rm -rf. It also doesn’t recognize sudo as a command.

    Do you have any suggestions? Thanks.

    • Justin Silver says:

      It sounds like the problem was the Paragon driver, even if it’s not that old. Do you see a kext for it in /System/Library? Check in /Volumes/Macintosh HD/Library first as you should be able to edit here. I think you can edit the system path if you mount the drive in a specific way, but it looks like this might be the correct way to do it: https://stackoverflow.com/a/32910408/1427161/. Definitely look at removing the Paragon driver first since that’s the last thing you changed… good luck!

  6. Colin says:

    Justin, after trying various things I think I have the same issue but I’m running into some trouble. I’m not sure if my version of terminal is outdated (Version 2.5.3 (343.7)) but it starts every line with “-bash-3.2#” if that means anything to you. A “mount -rw /” command has no effect, so when I paste your script, after “mkdir /Volumes/Macintosh\ HD/Library/ExtensionsDisabled” it tells me “/Volumes/Macintosh HD/Library: No such file or directory”. It seems like a slightly different Terminal from yours; any idea what I should do here? Thanks for any help you can provide!

    • Justin Silver says:

      I have bash 4.4 on my main system, but not sure if it is an older version if you reboot into Recovery Mode or not. Either way, it should be fine.

      > bash --version
      bash --version
      GNU bash, version 4.4.12(1)-release (x86_64-apple-darwin16.3.0)
      

      It sounds like you might have a hard drive with a different name? Try typing ls -la /Volumes and see what it says there – you may need to use something other than “Macintosh HD”. The other possibility is that you have damage to your drive in some other way and it’s not being read properly – you could try using First Aid in Disk Utility or DiskWarrior for rebuilding it.

      Good luck!

  7. Asger Larsen says:

    Hi Justin
    Thanks a lot for the fix. Used it before.
    Please help:
    Section: “Script to Disable Non-Default Kext Files”
    Something must be missing in line 8 and line 13?
    I am new to Terminal commands.

    Thanks
    Asger

    • Justin Silver says:

      It looks fine to me – are you getting an error? Line 13 uses the $kexts variable from line 8, so if 8 doesn’t work neither will 13. Make sure that you are escaping any spaces in your path, for example "Macintosh HD" becomes "Macintosh\ HD".

  8. Morten Grønvad says:

    Thanks a lot Justin. Your trick has helped me for the last couple of years, but as I forgot the procedure I had to come back here today.
    I’ve narrowed this boot problem down to being the printer extensions from either Epson or HP causing havoc, as every time I delete them, my macbook pro late 2011 boots w.o. problems. The problem reoccurs when I – or rather apple updater installs the printer drivers included in an OSX software update.
    Thus I’m very aware not to install these printer updates when I go near the app store, but apparently accepting “Later” when prompted by mac updater is equal to accept installing these – that’s the only way I can explain why I suddenly find my mac not booting and them in my extensions folder. Does it really work like that?

    For those of you who have access to a second mac, here’s another way of reclaiming your mac’s bootability.
    I usually boot my problem mac up in target mode (holding down T at bootup) after connecting it via firewire or thunderbolt to the other well functioning mac. From the “good one” I can open the problem mac’s harddrive, locate the library/extensions folder and delete the Epson and HP kext files. This way I don’t have to deal with terminal.

    – Mo’.

    • Justin Silver says:

      That sounds strange that they would re-install – I wonder if it is some kind of file protection kicking in? Did you try checking your /System/Library/Extensions/ folder to see if there are any old extensions listed there?

      Using the Mac in target disk mode is definitely a good idea if you have access to a second Mac.

    • matlavmac says:

      nice trick this daved me removing the logitech kext via target mode! easy!

  9. Frank says:

    Hey Justin,
    after putting everything into terminal it tells me … is busy updating; waiting for lock
    Is this an error or normal?
    Thanks, Frank

    • Justin Silver says:

      It sounds like you might have another issue with your filesystem – try running a repair/fix permissions on your disk from Disk Utilities in Recovery Mode.

      • Frank says:

        Thanks, Justin. I really appreciate your help. Had to give my Mac into repair. Harddrive is done, already started to cause havoc on my files.

  10. Mischa says:

    Excellent post

  11. Amr Sayed says:

    You are a life saver .. Thanks a million

  12. Al says:

    Hi Justin, I’m so grateful for this guide every time I update. This time going to Sierra I had to play with files in /System/Library/Extensions and I just *could not* remove kexts from there. Ended up booting from a linux USB and deleting from there but it was a saga for a noob. Did you have the same problem? If so, would you consider adding some pointers to the guide (for future noobs like me) on how to delete stubborn System files?

    • Justin Silver says:

      Al,

      Technically booting to the Recovery partition is the same thing as booting to a USB drive – in both cases the OS is loaded from a different disk than your “Macintosh HD”. There are some protections in place on the /System folder and I have had problems removing files from there as well. Writing is typically where I run into trouble so I moved a backup to /Volumes/Macintosh HD/Library/ExtensionsSystemDisabled (note that it is not under the /System path). If that doesn’t work you can use cp to copy them and them rm -rf to remove them. You should already be root but trying sudo rm -rf can’t hurt. You also want to make sure that the drive is mounted read/write with mount -u -w /. All that said booting to a Linux USB will do the trick too 🙂

  13. Alessandra says:

    Hi Justin,
    I’m having the same issue after installing the last Sierra update. I’m not used to use the terminal, so I don’t get how write commands exacty, could you please write me down from the very beginning how to do? Thank you so much in advance.

    • Justin Silver says:

      Hi Alessandra – I’ve tried to detail the commands you will need to troubleshoot this issue in the post, but it does require some amount of technical expertise. If you’re not comfortable working with the command line I recommend finding a friend or someone in your area who can help. Good luck!

  14. An says:

    Hi Justin,
    Can you please also share the script to remove file older than 2016 from System/Library/Extensions?
    I have tried a few ways but it seems to not working at all
    Thanks

    • Justin Silver says:

      You can list the files by date using ls -lat. If you want to move them the easiest way is with find as explained in this Serverfault Answer – make sure to update for your own source and destination paths. This will get everything 365 days or older, adjust the value for your thresholds. Good luck!

      find /sourcedirectory -maxdepth 1 -mtime +365 -type f -exec mv "{}" /destination/directory/ \;
      
  15. Steve G says:

    Genius! – after trying all other things – PRAM; Safe Mode; reinstall OS X; Disk repair… nothing seemed to work…until this fix. Thank you so much!

  16. Kyle says:

    Hey Justin,
    First off, I appreciate the very thorough explanation you’ve written out for everyone 🙂

    I am running into some problems though, my fiancée’s macbook pro is stuck at a black screen with the apple logo and a progress bar(gets to 100% but stays forever) It was working fine last night, and she went to restart it (just for an occasional refresh/reboot) and instead of booting it went to the black screen with the apple logo and progress bar.

    I am unable to access recovery mode or any of the utilities. All I can access is single user mode or verbose mode. I figured I would try your script in single user mode (since I cannot access terminal) however the layout is a bit different and I am a bit unsure if I would cause any problems trying it in single user mode. Any help would be greatly appreciated!
    Thanks!

    • Justin Silver says:

      Hi Kyle – I just got back online after a few weeks of travelling. It’s very strange that you can get to single user mode but not recovery mode. The former should load your system with most extensions/drivers disabled, whereas the recovery mode should load from a completely different partition. It’s possible that your recovery partition was corrupted?

      It’s very hard to say what the issue might be in your case. I would recommend looking around for debug/crash logs to see if there are any clues there, as well as looking at any software you recently installed or updated.

      Good luck!

  17. SeanG says:

    Just spent the last 4 days totally stressed out after Sierra 10.12.6 update failed. After deleting the older kext files problem solved. Thanks 🙂

  18. mattia says:

    You Are a Genius!! just fixed now using your script…thank you mate!!

  19. David says:

    Thank you so much Mr Silver, the internet is full of semi helpful advice but yours really worked and this is something I would have never figured out myself!

  20. Joseph Daudi says:

    Bro ill give it a try

  21. David Giorgi says:

    Many thanks Justin, brilliant!
    Greetings from french alps

  22. Will says:

    Thank you SOOOOOOO much. I was stuck in Sierra Install Hell for two days and after reading this just booted from an El Capitan drive, moved all the old kext files, re-booted Sierra and it worked.
    Can’t thank you enough.

  23. Jimmy P says:

    On vacation…I brought my mac along for work. You saved my life….cant say GENIUS enough!

  24. Jimmy P says:

    You are the best!!! saved my life…thank you so much 🙂

  25. MM says:

    Thank you so much sir!! you saved my life :’)
    I performed the Script to Disable Non-Default Kext Files section and I was able to boot my mac…

  26. Nuno says:

    Hi Justin,
    First of all, thank you for your help!
    Secondly, I would like to ask you to make a walkthrough video of the whole process, I’ve tried it repeatedly but I can’t get it fixed, I think I may be doing something wrong but I’m not sure. Thank you again!

    • Justin Silver says:

      Hi Nuno,

      Unfortunately I don’t have right now to take a video of the whole process – it’s also a bit of a troubleshooting exercise to find the exact issue, the incompatible files seem to vary from case to case. Make sure that you are copying the code exactly as it is in the article including spaces.

      Good luck!

      • Nuno says:

        Hi Justin,
        Thank you for your kind reply and for your help!
        I was unable to boot my mac after updating to 10.12.6, but, after using this script, I was able to boot my mac once again:

        mount -rw /
        cd /Volumes/Macintosh\ HD/Library/Extensions/
        mkdir Unsupported
        mv *.kext Unsupported
        reboot

        The problem is that my Mac is running extremely slow, all the time I get the spinning beach ball, basically every time I do something.

        What do you think I should do now? Should I open Terminal and run the other scripts?

        Thanks!

        • Nuno says:

          I think should also mention that the FileVault has been stuck on decrypting

          • Justin Silver says:

            Glad to hear the script let you start your computer again. It’s really hard to say what the other issues might be. I would recommend booting into Recovery Mode again and running First Aid using Disk Utilities to verify your hard drive and repair permissions. You might also want to try running the maintenance scripts using Onyx (I’ve not had issues, but proceed at your own risk).

            You might also want to check the /System/Library/Extensions to see if you have anything old there (I personally removed all the kexts older than 2016).

            Also check out the console/crash logs to see if there is anything interesting there.

            Another thing to keep in mind is that I have read that FileVault can bee very slow to decrypt, especially with a full drive, so it might take some time to complete.

            • Nuno says:

              Hi Justin,

              Thank you again for your precisous help.

              I’ve tried everything that you’ve mentioned but my Mac is still extremely slow and the FileVault decrypting won’t get past 31%…

              I think I will try to install High Sierra’s beta version as I am desperate for my Mac to get back to normal, I’ll let you know if that helps!

              • Nuno says:

                Hi again Justin,
                I was unable to update my Mac with High Sierra as I received the same message when I tried to reinstall OS in Recovery Mode, it wasn’t possible due to Filevault still being in the process of decrypting.
                Before that I forgot to mention that I was unable to backup with Time Machine and Super Duper, the process would always fail, I then installed StellarDriveClone and was finally able to backup.
                Filevault never got pass the decrypting process and I was forced to erase the disk, reinstall and migrate all my system and files from the bootable backup external drive.
                My Mac is now back to normal.
                Thank you again for your help! I wish I had found your post before talking to Apple, they were the ones who told me to turn off Filevault thus getting it stuck on decrypting…

                • Nuno says:

                  I forgot to mention that during reinstall I didn’t activate Filavault and plan to leave it like that. For anyone reading this post, NEVER change the Filevault to On or Off before backing up your Mac, it will probably get stuck in the process and you’ll have a hard time making a backup afterwards.

  27. Markus says:

    You, Sir, are a hero!
    After 4 days of despair you saved me.
    I’ve got Sierra running on my MacBook Pro.

  28. woodey gundry says:

    This is has just saved my life, and about 20 hours of work, thanks!

  29. Jesper Alvermark says:

    Thank you so very much! Worked perfectly!

  30. Stephen Brock says:

    Thank you so much!!!!

  31. Rvogo says:

    Thank you, this was very useful.
    My issue appeared after installing a brand new Epson XP-645 printer.
    Using ls -lrtc in the Extensions folder, I could quickly see that the last added kext was EPSONUSBPrintClass.kext
    After moving it to the Unsupported folder, the next reboot was a breeze!

  32. Eric says:

    Thank you, this saved me!

  33. Alex Kristofersson, Sweden says:

    I line up to say thank you so much! Probably spent 1–2 days on this and might soon have ended up at the local Apple dealer’s if it weren’t for your swift solution!

  34. Fred Waltman says:

    Thank you, you helped me get aging MacBookAir working again. I owe you and adult beverage (or six) should we meet 🙂

  35. Josh says:

    Happened to me today with High Sierra public beta 3. This fix worked. Thank you!

  36. Captain Grateful says:

    You just saved my @$$.

  37. Patrick says:

    Thanks for writing this up, you rock!

  38. Gareth says:

    Thank you for this, was a lifesaver!

  39. helmut says:

    Thank you very much. you safe my A….. The nasty Kernel ext ws little snitch. It sucks.
    Days of frustrations are past now.
    Thanks al lot

  40. Giovanni says:

    Thank you very, very, very much. You saved my life after a day and a half of struggle! 🙂

  41. Richard says:

    Thanks so much. This fix worked right away after a day of frustration.

  42. Michael Holmea says:

    I can’t thank you enough for this post. Easy foolproof solution to a problem that I spent best part of a day trying to fix.

  43. Richard says:

    Thank you!!!! Only fix that worked. Was a KEXT issue.Seems associated with Canon Printer software.

  44. Marcel says:

    Thanks Justin. This solved my problems. Strangely my Logitech kexts were in /System/Library/Extensions (as well as others like EyeTV, EpsonUSB, HuaweiDataCard, etc. – am I the only one who thinks those do not belong there?). After removing them, my computer was back to normal.

    • Justin Silver says:

      Hi Marcel, I just had the issue again, but this time with kexts in the /System/Library/Extensions as you did. Glad you got it working!

  45. Sammy says:

    Thanks Justin, your post worked. Would I need to move the kext files back. And how do I go about it. Am I ok just letting it be.

    • Justin Silver says:

      Hi Sammy – Glad you got your system working again. You don’t want to replace the kext files or they system won’t start again. If you think the kext file was important for some software you use try installing a newer version of the software that hopefully has extensions compatible with the version of the OS you have. Good luck!

  46. Carlo says:

    Thank you so much Justin, in my case it was also a problem related to Vodafone Broadband App that was inserted directly in the \Library folder.

    Regards!

    Carlo

  47. Mangaliso says:

    Hi Guys,

    I am also running an MBP upgraded to El Capitan from Sierra. I have had the problem of kext files maybe more than thrice and each time i come here help you different advices have never disappointed me.

    This time i have to create a separate Unsupported1 directory to move the hp_io*.kext file which was stubbornly refusing to be copied to the Unsupported dir. And this worked for me.

    Many thanks and keep up the excellent help.

    Thanks

  48. Andy says:

    Justin, you’re a marvel! This advice saved my sanity.
    However, here’s a mystery. The offending kext file reports in my library after every reboot. Thus every time I reboot the machine (e.g. after an upgrade) I have to go this whole process again.
    Have tried everything — Apple support couldn’t offer any suggestions.
    Any ideas how I might track down where the offending kext might be coming from?

    • Justin Silver says:

      Hi Andy – I think that unfortunately you might need to use trial and error to determine which kext is causing the problem, and then it will be easier to determine why it keeps coming back. If you are removing all of them then there should just be one or two showing up in /Library/Extensions. My guess is that you have some software on your system that sees that the kext is missing and replaces it, so uninstalling that software (or installing a newer version) would fix it if that was the case. Hard to say without more details but if I had to speculate I would guess it is hardware related like scanner or printer software. If you can post a list of the extensions on your system maybe something will stand out.

      Good luck!

      • Andy says:

        Hi Justin, thanks for the reply! I think this is the problematic kext:

        EPSONUSBPrintClass.kext

        Although these also keep reinstalling every time I reboot:

        BJUSBLoad.kext
        CIJUSBLoad.kext
        hp_io_enabler_compound.kext

        I’ve removed every possible piece of Epson related software I can find on the machine, don’t have an Epson printer installed, but lo and behold, every time I reboot, these four reappear. But by process of elimination, I think it’s the EPSONUSBPrintClass.kext that is causing the problem.

        Any ideas how I might hunt down what’s installing it? Does the system keep a log of this anywhere?

        Thanks so much!

        Andy

        • Justin Silver says:

          The Epson driver does seem suspicious. I’m not entirely sure how to fix the issue but some quick Googling got me this – https://discussions.apple.com/thread/3241855?tstart=0

          It looks like you could try installing a newer version of the Epson drivers and then uninstall them with something like AppCleaner. You can look in the Console app to see if you can find any mention of that kext being loaded but I’m not sure where (or if) it is logged.

          Good luck!

        • tobie says:

          Andy, did you resolve this issue with the 4 re-appearing kexts? I’m seeing the exact same issue, and in my case I need to keep deleting hp_io_enabler_compound.kext AND EPSONUSBPrintClass.kext for boot process to complete.

          I believe these problematic kext files are coming back following App Store Updates, I can see that “Epson Printer Software Update 3.3” and “HP Printer Software Update 5” are just being installed, so I will check Extensions directory and install logs.

  49. Brenda says:

    First, I would just like to say thank you, you wonderful wizard! Your script saved my MBP after I upgraded to Sierra 10.12.3.

    Second, I have no idea what any of these kexts things are, so I am terrified to shut down my computer and reboot now in fear it will happen again. How do I find the offending kexts and the apps connected to them? If you can, I will need super N00b instructions.

    Third, before I found your instructions page, I tried rebooting from my TimeMachine, but that was hanging up upon booting, too. Does that mean the problem is in my TimeMachine, also? Can I even fix that?

    Thanks again for saving this poor doctoral student from having to sell an organ for a new computer!

    • Justin Silver says:

      Hi Brenda,

      A “kext” file is a “kernel extension” – in simple terms it is a plugin for OS X similar to a plugin for your browser. The problem is that some older files that are no longer compatible with newer version of the operating system may still be on your drive and because it tries to load these when it is starting… it just hangs.

      If you move them out of the extension folder and were able to restart your Mac then you should be good to go. The files won’t re-appear unless you move them back, reinstall the incompatible software that put them there, or restore from an older Time Machine backup.

      Regarding Time Machine, definitely go ahead and make a new backup (assuming you are up and running). One nice feature of Time Machine is that you can completely restore all of your files (including the kernel extensions) however this can be a problem if one is broken. Your older backups are still super useful for accessing older versions of your files (perhaps a paper you are working on, pictures you accidentally deleted, etc) but you won’t want to do a full restore from these older backups because they will put the incompatible kext back on your system. Once you have a new backup you should be fine though – as far as Time Machine knows you just uninstalled something and it will use the latest (working) version to do a restore.

      Good luck!

  50. Martin says:

    Thank you so much.
    My update to 10.11.6 failed. Found your page in the internet and here I am again !
    🙂

  51. Queenie says:

    Thank you so much for saving me from reinstall the OS!
    I updated to 10.12.14 Sierra today, and stuck at the looping startup screen. Reset the PRAM and SMC, but no help.
    My bro found this site and we follow the instruction, problem solved 😀 The kext of my old printer failed.

  52. William says:

    Thank you for saving an entire week’s worth of work!!! So clear, and did the trick immediately.

  53. bill says:

    a faulty kext file, in my case for ftdi drivers. thx for figuring this out. sabed me an awful lot of time and grief!

  54. michael.janko says:

    Thank you so much Justin, thank you, thank you a million times!!!!! You can not imagine how much you helped me!!! God bless you man!!! :-)))

  55. Ken says:

    Thanks Justin, my MBP got stuck while I was on an overseas trip and I tried all you mentioned before the KEXT files trick. It worked a charm.

  56. JMElicegui says:

    Great
    Thank you very much

  57. Lea says:

    I mean, i cant mount it as read/write

  58. Lea says:

    Any idea why i cant mount the volume at all? Says “illegal option”. I have mac sierra, is that the issue?

  59. matt says:

    i love you, really saved this college students life

  60. Narcyz Król says:

    Hi Justin, I have the same problem, my Mac few weeks after updating to OS Sierra stopped working, I’ve done the Hard Disk Utility which said that there are no errors, I don’t have access to the recovery mode at all, the loading screen stops at 50% and I have to restart the computer. I tried to gain access through single user mode, but even after changing the user to ROOT I couldn’t change anything in the code, I didn’t have permission to write. When i tried to change anything, that line: PCI:Pause:SDXC would pop up and I couldn’t do anything else.

  61. Russ says:

    Thanks Justin, you are a genius and a lifesaver. Win 7 in bootcamp worked fine with Option + Power to boot up. Mine was an Epson printer kext that during a system update caused El Capitan to hang on the update, waited forever. Tried everything reset SMC and PRAM, first aid on disks, could not boot in Safe Mode. Was about to launch the mid 2012 MBP non retina out the window when I found this post on my phone and thought I would give it a go. Fixed straight away. I do not know how to thank you enough but I hope these thanks go some small way to saying how much time, grief and money you have saved me. Cheers.

  62. Shane says:

    Hey Justin, I know you get a lot of replies and other stuff, but I am still somehow struggling with the terminal commands. I am doing everything correctly, but it always pops up with “no such file could be found”. Please help, and thank you!

  63. Vincent says:

    Am about to try this fix after trying everything else. Just one question – how do you move files back to the original location if they are not the cause of the problem- sorry, not used to using Terminal.

    Thanks

    • Justin Silver says:

      Use the “mv” command (for move), followed by the source, then the target. This works for “renaming” too if the source is a file name and the target is the new name.

      mv file.txt new-folder

      Good luck!

      • Vincent says:

        Thanks Justin – another question! I was going to try the script to disable non default kext files – I guess the bits in blue are just telling us what the instruction is doing but do all the other ones need to be typed in. Or do you recommended the original script you posted to move all kext files to a new ‘unsupported’ directory rather than non default ones.

        Sorry to be so dense!

        Thanks again.

  64. Usman says:

    Worked like magic. Was about to buy a new hard drive as I had tried every other ooption but to no avail. Thank you so much. You’re a life saver

  65. Myles says:

    Yes I agree, THANK YOU SO MUCH FOR POSTING THIS! I spent hours trying to figure out how to fix this with no avail … until I came across your post. I even created my own with specifics on my issues to help spread the word so hopefully I can help someone else out as much as you helped me!

    Thanks again dude you made my day! … not like those LG kernel extensions that ruined my day lol

    Here’s my blog post:
    https://smyl.es/how-to-fix-mac-osx-stuckhanging-on-progress-bar-will-not-boot/

    • Myles says:

      I also have information on there on how to unlock and mount your drive if it’s encrypted

    • Justin Silver says:

      Good stuff, glad I could help. I like your domain name too – I had justinsilver.com in the 90’s and then let it lapse because I was poor and it was snatched up by the Justin Western Wear Company for their “Justin Silver Collection”. Since they wouldn’t give it back to me I ended up going with a nerdy pun and got justin.ag (it still redirects) but when they let justinsilver.com expire I snatched it back 🙂

      • Myles says:

        ahha thanks, yeah I had that happen a couple times, at least it wasn’t a domain squatter 😛 Good thing now too is all the new TLDs that are being released, sooooooo many possibilities now.

        Love the blog too, you have a lot of great information on here, def added this to my RSS subscriptions 🙂

        Thanks again!

  66. MICHAEL says:

    Thanks for the great article! SAVED MY DAY!

  67. Simon says:

    Hello Justin! Hoping you can advise?? I have a similar issue converting to a new iMac from a Mac Mini using Migration Assistant… The iMac stalls on booting. I have tried PRAM SMC time machine and cloning…
    Thing is, my existing mac mini seems fine but when transferring the whole system to my iMac the mac fails to boot but will boot to safe mode. I am on to Apple support but they are only telling me to try what I have already done!
    Gonna try your suggestion….fingers crossed! Thx

    • Justin Silver says:

      It sounds like maybe something is incompatible hardware-wise between the iMac and mini, especially since it will boot into safe mode. You might want to check out the crash logs if you can get into safe mode to see if they give you any clues. Since it sounds like you have a backup you might as well try the script at the end of this post as well and see if maybe a kernel extension is causing the issue. Good luck!

  68. Aman says:

    Boss you saved my life !!!!!!!! Seriously u did !

  69. Ivan says:

    One more thank you! 🙂

  70. Math says:

    Thanks Justin, your tips saved my day.

  71. David says:

    Many thanks Justin, it worked like a charm!
    My only problem was that I’ve renamed my Macintosh HD and it took me a wile to realise this issue, if you could update your amazing article and add a note about it, that would help more people in the future!
    Once again many many thanks!

    • Justin Silver says:

      Glad you got it working. I did mention using the new name if you renamed your drive later in the post, but have now included it at the top as well. Thanks!

  72. Shaun says:

    Hi Justin,

    wondering if you can help me, just trying these steps to hopefully fix the problem.

    I put the code in at the top and after the reboot, the Mac wont load anything, including the Recovery mode. Any ideas?

    • Justin Silver says:

      Hi Shaun, unfortunately I don’t. The Recovery partition should be read-only so it’s strange that it won’t boot into it anymore. Makes me suspect it could be a hardware problem, but…. can’t say for sure. Good luck!

  73. mao says:

    An absolute Godsend! I couldn’t find this information anywhere, and your step by step explanations are just fantastic! I had problems upgrading to Sierra, and your post got me up and running again.

  74. Jane says:

    My case is not OS El Capitan but Yosemite, I did everything that I know.
    – Safe Mode and Utility Disk
    – Reset PRAM
    – Reset SMC
    – Reiinstal OS Yosemite
    – Finaly your way with disable Kext files

    But still no progress, My MBP still stuck 50% on Apple Logo.
    Or im doing wrong with the terminal code ….

    • Justin Silver says:

      Hi Jane, unfortunately if the fix here didn’t work for you I can’t think of any other suggestions at the moment. It could be anything from software to hardware – perhaps if you take it to an Apple store they can help debug. Good luck!

  75. Lukas says:

    Hi mate, i keep having to do it over and over… Every second day my computer shits itself and the i have to repeat your process to start it up… Any advice?

    Thanks alot you are a true hero for putting this out there! 👍

    • Justin Silver says:

      Hi Lukas – it sounds like something is replacing the files after you remove them, likely some kind of software update. If you are able to determine the specific kext file that is causing problems and figure out what software it goes to then uninstalling it might fix the issue. Good luck!

  76. Bart says:

    Thank you VERY VERY VERY much!
    I was forced to upgrade (need latest Xcode) and bam, stuck. Happend before & restore from timeMachine took 6 hours.
    Your kext thing did the trick.
    Now I have to find out what extensions are default and should be restored, but I at least feel empowered to manage this.

  77. Pablo says:

    You saved my girlfriend’s macbook! Genius!

  78. A lot of thanks for your help.
    Four days working and fithing with this trouble without computer and your post save me.
    In my case the problem start with the last update of Capitan of this month.

  79. Issa says:

    Hi, I have a question or a problem with my 2015 Macbook pro, ive had it since present but once i updated my mac too el capitan the computer quit on me and stopped working, once i reinstalled el capitan it booted perfectly the laptop, but then if i try too login it takes super long with a circle processing logo on the cursor and it takes forever without no login boot. hope you can help me on this one havnt got too use my laptop for 1month

    • Issa says:

      if you can help me justin asap it will be super helpful :”), i dont want too waste another 1000$ on a desktop or laptop :”)

    • Justin Silver says:

      Hi Issa,

      I’ve been out of town for the last couple of weeks – unfortunately I’m not sure what the problem might be with your laptop. It could be a variety of things but is probably software related, so likely the worst case is having to restore your operating system, not buy a new laptop. I would try all of the things in this post, and if you are still having trouble you might need to contact Apple to help debug the problem further. Good luck!

  80. Manuel says:

    Thank you Justin, you were very helpful.
    Just a warn to everyone, every update of the system keep installing EPSONUSBPrintClass.kext, which creates a new crash on starting up, so I have to remove manually from time to time.

  81. Don says:

    Hi Justin,
    I’m running 10.11.6 on a late 2013 Mac pro. I followed your steps and successfully moved all the .kext files from the extensions folder to the unsupported folder. The computer rebooted successfully from the terminal, but would not reboot after that. I have to do a hard shutdown to reboot. I then tried your second set of instructions, and moved all the .kext files to the ExtensionsDisabled folder within Library, but the same problem happened. It reboots successfully from the terminal once, but then will not reboot again after that, it just hangs. Any thoughts? Thanks for your help.

    • Justin Silver says:

      Hi Don, it sounds like something is recreating the problematic kernel extension when you reboot. If you can figure out which one, perhaps try uninstalling the software that it belongs to?

      • Don says:

        Thanks Justin. It turned out that the current version of Pro Tools I’m running is not compatible with 10.11.6. So, I rolled back to Yosemite and things are working again now.

  82. Richard Carter says:

    I needed to reset SNC and rerun the install after this (both of which I had previously tried twice), but afterwards it worked fine. Thank you so much.

  83. Ivan Sinigaglia says:

    Thank you very much. Worked fine for me.

  84. Yaw says:

    Your solution worked like a charm. Thanks a lot. My questions is what happens to the problematic kexts. You I delete them ? how can I move the non-problematic ones back to where they were moved from ? Note: I am a newbie when it comes to terminal

  85. Bineuh says:

    Massive thank you Justin, you really saved my butt after Wacom drivers caused this exact issue. Fixed using the recovery mode terminal to move the kext files. You’re a legend!

  86. etienne says:

    Congratulations Justin
    You deserve a medal for documenting a solution that so many other experts failed to propose.

    I even think that what you propose is applicable to more than just El Capitan upgrade stalls,
    and that there might be a way to simplify the fix without having to use terminal and cmd-R

    I was facing a stalled boot (stuck at end of apple bar) on MBP 13 and 15 running El Capitan but also Yosemite.
    I tried all the classical SMC, PR NVRAM, single, re-install, … with absolute no success
    So I ended up re-installing clean, migrating and it worked but only for a while 🙁
    Your solution fixed it for good on Yosemite and El Capitan.

    May I suggest to all those struggling with such problems, to use a mobile hard drive on which you clone (using Super Duper or CCC) various partitions (of the same size as your hard drive):
    a clean partition right after a minimum re-install (faster to re-install than the full re-install processes, fits on 19G stick for El Capitan, you just need to overwrite MacintoshHD partition with your saved partition)
    your working partition at various stages of its life so that you always can re-install a) and then migrate from b)
    more interestingly, it will also be much easier to apply Justin’s fix without having to use terminal nor scripts nor cmd-R:
    you simply boot from the clean partition (cmd+pwr), then open the MacintoshHD disk in finder and analyse/move all the kext files directly in finder.
    This also allows to run all sorts of utility programs that you keep on that clean partition.

    Have fun

  87. Jeff Dudley says:

    Hi Justin,
    The number of people you have been able to help on this issue is astounding.
    I do hope I can get some success also.

    I have exhausted several searches online but nothing works. My MacBook was operating fine prior; I have el capitan installed been using for months now. I launched a new app, that I recently installed , and I got a blue screen, with no other option but to power off.

    Since then, when I boot, I am able to enter password but then my progress bar boots up half way then stops.
    – I have a grey screen whenever I try to go to safe boot. This I suspect is because filevault is enabled on my hard drive, which makes it encrypted.
    – Whenever I also try to launch in internet recovery mode. It loads the process completely with the globe, but afterwards a quick flash of a black screen then permanent grey screen.
    – I cannot get into Recovery mode, when I hold down Option it does not show my recovery partition, therefore I cannot get to a Terminal via the method you described.

    I can however get to single-mode but what can I do once I am there?

    Do the steps you have listed still apply based on my scenario?

    Any advice would be extremely helpful.
    Thank you!

    • Justin Silver says:

      Hi Jeff, it’s hard to say for sure what is going on, but if you can get to Single User mode you should be able to do all the same things that you can in Recovery Mode, the biggest difference is that you are starting from the boot partition rather than the recovery partition. Since you install the software recently you could look for any recently added kexts, but that might not necessarily be your issue, but it might be worth a shot. The other thing I would recommend is to look for your crash logs – from the GUI it’s Applications > Utilities > Console, if you are using the command line it’s likely in /Volumes/Macintosh HD/Library/Logs/DiagnosticReports/. Good luck!

  88. Susanne says:

    For me the problem was in /System/Library/Extensions/ – moving 12 old kernel extensions out of there fixed my problem. I didn’t go back to check which one was actually at fault because I didn’t need any of them. Thanks for sharing, this saved me a lot of trouble!

  89. Bob Pazden says:

    Thank you Justin. I was about to do a clean install and this saved me the potential headaches with a customer’s system. It worked like a charm. Cheers to you!

  90. Ajay Ghale says:

    People like you is why this earth is still spinning. Thank you !

  91. Christian says:

    You are a hero!

    Thanks thanks thanks for writing the Script to Disable Non-Default Kext Files

    My Macbook pro is back!

  92. Michael says:

    Thank you very much, your page helped repair our mac after the latest captain update.

    I booted into recover mode and opened a terminal. Checked the Extensions directory with “ls -lart” to sort them with oldest first, this is an older mbp from 2009. I took the kext extensions dated back from 2009 and 2010 and moved them into another directory. My mbp is now booting again.

    I removed some old hp printer driver extensions and EyeTv extensions.

    3 days ago the mbp crashed with hardware fault and blue stripes and could no longer boot. I disassambled it and used a heat gun on the motherboard to try and repair any bad solderings. I put it back togheter and the the hardware fault was gone and I was soo happy that I managed to repair our 7 years old mbp. Then I updated the software and ran into this new problem not certain if it was hardware related or a new software fault.
    The factory had done a really poor job with the cooling paste on the chips, I was very surprised at the poor workmanship. I am a supply chain manager and have overseen electronics assembly at factories before and this was by far the worst I have seen including other devices that I have disabled in the past. The cooling paste only covered half the cpu and gpu chips. There was about 10 times too much paste on the side of the chips as if they had added a thick layer and scraped it off, not removing it but just scraping it down the side of the chips. I have never seen factory assembling handling cooling paste in such manner, normally they should add a framed when adding it.
    This mbp has always been noisy and quick to ramp up the fan speeds. Now it is silent and keeping the chips cool when wathing netflix, before it would allmost max the fans when watching Netflix.

  93. Fortune says:

    Hello Justin,
    It turns out my hard drive was bad, luckily i was able to recover all the data I had on it. I have gotten a new hard drive, and i intend to re-install El-Capitan on the new hard drive. A guide on how to do this, would be most appreciated.
    Thanks

  94. Ranz says:

    Hi Justin. I seem to have everything the same 360controller issue and my MacBook hangs on startup. Can you give each me a step by step on how to shutdown and use the safe mode and terminal to fix it? Thanks. (using latest version of El Capitan)

    • Justin Silver says:

      Hi Ranz, you should be able to use the steps in this post to move the kext files. You’ll need to start in Recovery Mode, not Safe Mode – hold Cmd+R while booting. If you have trouble you should be able to Google for more specific info on booting into Recovery Mode. Good luck!

  95. Tomas says:

    Justin – you bow to no one!

    You kind of saved my digital life. 🙂

  96. Felix says:

    Thank you very much.
    Removing the kext and booting ok

    Thanks

  97. Morten Grønvad says:

    Hi Justin.
    Your post here solved my problem some months ago, when I upgraded to El Capitan. Great – Thanks.
    I was totally lost for a while, but fortunately I had a bootable system on another disk, and from there I opened “my main disk”/Library/Extensions and moved/deleted all kext files in my system. Eventually the programs I used afterwards pretty much pointed me to which kext files I needed, and all other files stayed out of the Extensions folder.
    That solved my problem then.
    Now, however, as I narrowed the obnoxious extensions down to being one of four printer extensions [BJUSBLoad.kext, CIJUSBLoad.kext, EPSONUSBPrintClass.kext, hp_io_enabler_compound.kext], I have to be cautious every time I update OS X as these files are a part of every update I’m offered. Eventually I will find out which of them is causing havoc on my computer.
    I don’t know if anybody else have trouble with these specific files or if there is a randomness to these issues.
    Anyway I just wanted to share my way to obtaining the desired goal.
    Suggestion: If you have another Mac available you can boot one of them in target mode (Hold down “T” when booting the machine) and connect the two machines via Thunderbolt or FireWire. From there you just have to navigate to the System/Extensions folder on the machine that fails booting and extract the kext files to new folder ie. “Bad Extensions”. Keep in mind that moving the files to another folder does not delete them within the Extensions folder – you have to do this after copying them…..!
    Best Vibes, Mo’.

  98. Joey Moro says:

    Justin, thank you so much, this is exactly what I needed! I tried so many re-installs and restores trying to find the culprit… Virtual Box and LittleSnitch! Great explanation, easy to follow terminal commands. Life saver!

  99. Barima Bartels says:

    Justin. I’ve read all these threads and I can’t seem to find a solution to my perculiar problem. I made a bootable usb thumb drive with OS X El Capitan on it. Using the sudo in terminal. But when I open the disk by holding the option key when booting, I have access to the drive and then the apple sign shows up and it skips and goes back to OS X utilities without allowing me to install the new OS X on my brand new SSD . Please help! Skype: nana.osei.bartels

    • Justin Silver says:

      Hi Barima, unfortunately this sounds like a different issue than I fixed in this post. When installing OSX (for the last several versions anyway) I have done an Internet install via Software Update. I don’t have any experience installing from a USB key so I’m not sure I can offer much help. Good luck!

  100. Markus says:

    How can i move all kext Files back to their place from Unsupported Folder?

    Thx

  101. Ivory says:

    Hi Justin,
    I’m glad I came across your page on this issue. However, the troubleshooting steps didn’t work in my case. I have a early 2011 MBP 17″ w/512GB SSD and 2.3GHz i7 & 8 GB RAM.
    About two months before I decided to upgrade from Snow Lepoard to El Capiton my MBP was acting sluggish. I’d get the death spiral from time to time. About two weeks after the upgrade was the first time my MBP EVER crashed. This would occur several more times before it would have problems booting up. Now months later it won’t boot at all.
    I tried your suggestions, Safe, Recovery & Verbose. In Verbose, it go thru the logs and then a black screen and then white screen. I videoed the screen in hope of reading it, but there is too much glare to read it. When I tried to boot from my backup drive it would show the white screen after about 3/4 progress.
    Any advice you can share would be greatly appreciated.
    Kind regards
    Ivory

    • Justin Silver says:

      Hi Ivory, it’s possible that you have an incompatible kext file, but that would usually pop up immediately after upgrading. Try taking a look at your crash logs to see if there is anything helpful there – running First Aid on the drive from Disk Utility can’t hurt either. The crash logs are located here: /Volumes/Macintosh HD/Library/Logs/DiagnosticReports/.

      • Ivory says:

        I can’t log on my MBP by any of the methods that’s on this blog. Do I have to take it to a Apple store?

  102. Fortune says:

    Hello Justin,

    Thanks for this post, i wish i had gotten to your post well before i did other things that i am afraid may have worsened the issue on my MBP, i followed through the steps as you kindly spelt out, but once it reboots, it gets to the usual screen and at about 60-70% whilst booting, it goes off. Any advice would be much appreciated.

    • Justin Silver says:

      Hi Fortune – when you say “goes off” does it just hang or does your computer actually turn off? If you moved the kernel extension files and it is still doing the same thing, it sounds like they might not be the issue. I would recommend checking out your crash/debug logs to see if there is more info there. Good luck!

      • Fortune says:

        Hello Justin,

        It turns off. I followed your instructions to the letter, so i am pretty certain i moved all the kext files. Like i said earlier, I had tried to fix the boot problem initially, by using disk utility and the repair function. I got the following message from using the first aid option (while the First Aid option was running, I noticed my Macintosh HD available space had changed to 0KB, even after the process completed it showed this), after the process completed it came back with this error “First Aid process has failed. If possible back up the data on this volume. Click Done to continue.” when i clicked the Show Details option. It had this:
        “The volume Macintosh HD could not be verified completely.
        File system check exit code is 8.
        Updating boot support partitions for the volume as required.
        File system verify or repair failed.
        operation failed…”

        Before using the Disk Utility First Aid Option, it would boot up to let’s say 90% and just freeze, but after doing that process it would boot to about 60 -70% and then turn off.
        Where do I access the crash/debug log, so I can send for you to see?

        I had installed El Capitan roughly 6-8 weeks ago without problems, I suspect the Avira anti virus I Installed friday last week, maybe responsible, because when I went through the list of kext files on terminal you posted up there, the only one out of place was filecontrol.kext (maybe it is for Avira), following your instruction this is what my Terminal looks like:

        -bash-3.2# mount -rw /
        -bash-3.2# cd /Volumes/Macintosh\ HD/Library/Extensions/
        -bash-3.2# mkdir Unsupported
        mkdir: Unsupported: Read-only file system
        -bash-3.2# mv *.kext Unsupported
        usage: mv [-f | -i | -n] [-v] source target
                    mv [-f | -i | -n] [-v] source ... directory
        -bash-3.2# reboot
        

        When I press enter it restarts and and then turns off at that boot percentage of 60%.
        At another time I used the FileAccessControl.kext instead of *.kext and it shows this. “mv: rename FileAccessControl.kext to Unsupported: Read-only file system”, then I press enter to reboot, and it turned off at the same percentage, this last time, I have used both commands and it still turns off.
        Thank you so much.

        • Justin Silver says:

          It looks like your drive is still read-only, so you won’t be able to create new directories or move files, which is likely why it is still hanging. Try running mount -uw / to see if that works, if not you could try running First-Aid from Disk Utility. If you have Filevault encryption enabled on the drive, make sure to disable as well.

          The crash logs can be found in this directory: /Volumes/Macintosh HD/Library/Logs/DiagnosticReports/

          Good luck!

          • Fortune says:

            Hello Justin,
            I have tried the Crash log command nothing comes up, it just says “/Volumes/Macintosh HD/Library/Logs/DiagnosticReports/: is a directory”. I dont know how to check, or disable Filevault encryption for my drive. I am beginning to think, I should back up my documents, using another Mac’s Disk Utility and then delete the HD and reinstall. Is this safe? And are there any ideas on how I can go about the process?

            Thanks

            • Fortune says:

              Hello Justin,
              It turns out my hard drive was bad, luckily i was able to recover all the data I had on it. I have gotten a new hard drive, and i intend to re-install El-Capitan on the new hard drive. A guide on how to do this, would be most appreciated.
              Thanks

  103. jason says:

    My macbook successfully installed El Capitan and can only be booted up by pressing the SHIFT key upon boot. If I try to reboot normally the OSX Install screen pops up and then ultimately fails and the log pops up on the screen. Reboot and it falls into the same loop. How can I get it out of the loop and just start up normally?

    • Justin Silver says:

      Hi Jason – it’s hard to say what the problem is without some more information. I would recommend rebooting into Recovery mode and use the Terminal to check out your crash/debug logs, they might have some more info as to what is going on. Good luck!

  104. Michael G. says:

    This guy is good. Thanks and yes it worked a treat.
    In my case it was an Epsilon printer kernel extension.
    My procedure for solving a hanging boot:
    1. iDefrag .. I thought a core file had been corrupted. Zero.
    2. Checked the logs … Zero.
    3. Repaired file permissions. Zero.
    4. PRAM reset .. and single user mode. A DSMOS error appeared, so .kext error suspected,
    5. Removed my graphics .kext files in /System/Library … not very clever at all. Later I returned them and had to delve into a backup for the one I deleted.
    6. I followed the instructions here to remove /Library/Extensions/ .kext … Bingo! I placed all the non-suspect files back to the Extensions dir, except the Epsilon file, which was the last “alien” file to be downloaded before the hanging job error occurred.

  105. Anthony says:

    Hi Justin (et al.),

    First of all thank you. Thank you, thank you. I’ve had your page open all day. Your work, knowledge, and presence are exemplary and critical to users like us finding solutions to Apple’s wormhole-like unanticipated technical problems.

    Secondly: your fix ended up not being my fix. I did your thing and wrestled with my .kext files for hours. I’ll get to my solution but first of all, when moving kext files back from the Unsupported folder, I did this step straight-up in my normal Mac OS, not in terminal during recovery mode.

    That is to say, I did your steps in Recovery Mode and rebooted and then from Finder moved all but the logitech drivers BACK into /Library/Extensions — upon which I was greeted with both a permissions pop-up and, after providing my password, an error message. The kext files were in /Extensions but I’d then deleted the “originals” from /Extensions/Unsupported — looks like the originals were not moved back to /Extensions, but copied.

    I’d emptied the trash and deleted the originals. OOOPS. I was still having rebooting hangup issues, so I continued to troubleshoot various things.

    At some point I re-did your initial steps on this page: in Recovery Mode, moved kext files from /Extensions to /Extensions/Unsupported. Then I followed the advice someone else here commented to press Command while dragging the kext files back — no error messages.

    So right now I have copies of the kext files in my /Extensions folder …

    At this point I’m still unable to restart. The one workaround I found was to go to the Login Window (by clicking my username in the upper right) and restarting from there. It asks you to provide user/pass for whoever’s still logged in, but it will restart.

    What I think fixed the restart hangup was related but different. Related because it’s to do with outdated driver conflict. Different because it was solved, ironically, from within the easy-to-use Mac OS System Preferences pane.

    As others have noted, old Wacom drivers will sometimes remain on the system after apparently full Wacom uninstall. I went to System Preferences –> Users & Groups –> Login Items and noticed that a “Bamboo” helper app was still opening automatically upon login. This means that this invisible, conflicting app was hanging up my OS whenever I was trying to restart or shut down.

    At least, I think it does? Things seem to be working now. I may have used your advice to ultimately just delete my original .kext files, but nothing so far has fallen apart.

    Thanks again and I hope my advice can help someone who’s unable to solve their problem with your post.

    Anthony

    • Fortune says:

      Hello Anthony,
      I can tell you are tech savvy, I already called for Justin’s attention, but seeing that you recently posted, I believe you may also know what I should do. I followed all of Justin’s instruction, but prior to my coming here, i had tried some other things and i fear i may have done more damage. My MBP boots to like 60-70% and then goes off. I will be glad if you can help me. Thank You

    • Justin Silver says:

      Hi Anthony – glad things are working for you. I’m not sure what the default kext files that Apple provides are for, but it should be possible to copy them from the Recovery partition if you deleted them from your main hard drive. All of the others are provided by third party software, so re-installing the software should put the correct kext file back on your drive. Thanks for all the details!

  106. Ash says:

    Hey Justin,
    After rebooting in recovery mode and selecting the language a menu pops up that titles ” OS X Utilities” then subheadings of ‘Restore From Time Machine Backup’ , ‘Reinstall OS X’ , ‘Get Help Online’ , ‘Disk Utility’. there is no Utilities or Terminal option do you have any advice?

    • Justin Silver says:

      Hi Ash, to open Terminal you need to select it from the “Utilities” menu at the top of the screen:

      Max OS X Recovery Mode Terminal

  107. Andy Meler says:

    Hi Justin I have got a Problem with 10.11.5 el capitan ,mac boots in safe mode when i use shift key then restarts in normal mode ,but after i shut down it wont boot again,its hard to get in safe boot cos not always it works ,is there an easy way to fix that kext files in normal mode? or using program script ? i can only put into sleep mode my mac 🙁 please help 🙂

    • Justin Silver says:

      Hi Andy, It’s hard to say for sure what the problem is. Are there any debug/crash logs when it doesn’t boot? Does it just hang or restart? Hard to say if the issue is with a kernel extension or not… Good luck!

  108. Jorma says:

    Hey Justin
    I’ve had the problem of El Capitan not booting so I went back to Mavericks. Do you think, I can move all the kext-files to a disabled folder before I do another system update? This way I wouldnt have to do all the Terminal things.
    What do you think?
    Best, Jorma.

    • Justin Silver says:

      I haven’t done it that way so I can’t say for sure, but it does make sense that if you remove the incompatible files before upgrading you shouldn’t have the same issue. Keep in mind that you don’t need to remove everything, just the ones that won’t work with newer versions of OS X. Hard to say what those are specifically, but if you don’t have many kext files you can always try Google. Good luck!

  109. Ijarotimi says:

    Thanks a lot Justin , you really made my week. My Nacbook has been in bootable for 5days until I read you fix. It greatly worked . However , how do I get the list of kext files , I mean what command do I type. Also the last post to disable the non default kext files seem a liitle confusing , is it possible to write it out again. Thanks alot, I really really appreciate you.

    • Justin Silver says:

      Hi! To list files in a directory from the command line just type ls. The last bit of the post is a little complicated, but it basically compares the files in your Recovery partition to the ones on your OS hard drive and only moves the kext files that aren’t provided by Apple.

      • Hi Justin, thank to your guide I’ve been able to boot my 2009 fusion drive diy iMac that wouldn’t start after updating to 10.11.5. Since I haven’t notice the warning, I moved all the .kext files to the Unsupported folder. Should I run the script you add right away or should I put the files back to where they belong before doing that? Using terminal from the OS X recovery mode or can I do it from the operative system? Many thanks Francesco

        • Justin Silver says:

          Some of the kernel extensions are provided by Apple, and some are needed by various pieces of hardware, but some are also incompatible with newer versions of OS X and prevent it from booting. It will take some time but you can move them back one at a time to determine which one is causing the problem or re-install your software to get the latest version of the kext files.

  110. Edwin says:

    Hi Justin,

    Thanks so much!! You saved my macbook!

    Edwin

  111. Christine Oshita says:

    Aloha Justin,

    It is so encouraging to see all the posts of success stories. I am just tech savvy enough to follow your instructions. Otherwise I know nothing about Terminal commands. I feel like an idiot because I have no idea how to bring up this list everyone has of their .kext files. If you can share that command line with me I would like to see what comes up.

    I followed the steps in your article – first the 4 steps moving the kext files to Unsupported and rebooting which did not fix, then the steps to Disable kexts, and I still get the gray screen with the progress bar stuck at about 3/4 of the way.

    I have been working on this for 2 days as time permits, and do not have the money to pay the $300+ I will be charged to recover my data. I also tried someone’s (was it yours?) suggestions for trying to back up my files to an external using Disk Utility, but the instructions were for maybe 10.7 not 10.11 so I may not have done it right – I had to guess on some steps.

    Any help would be greatly appreciated!
    Mahalo!

  112. Bernd Rac says:

    Hi
    did not read all the comments but as I have not clue about terminal or better not much so did not see if someone mentioned it another way (if you have a second mac) to boot the non booting machine in target mode and then us the other computer to move the files just like you would be from a external hard drive. And it seemed to work for me. got it back up and booted now i have to find which of the kext file is the bad one

  113. Terry Gibson says:

    This is a brilliant fix. The later version which automatically shifts unsupported Keats solved my problem once I copied and pasted the text by accessing it in safari (tried typing it manually and must have got something wrong). Found an Epson USB print extension and an old HP extension were the issues

    Thanks so much Justin and no thanks to Apple!

  114. Todd says:

    If you have Apache OpenOffice and removing old extensions didn’t resolve your boot problems, or only resolved them temporarily try booting into Safe Mode by holding down the Shift button after you power on your Mac until the gray screen lights up. If you can boot into Safe Mode uninstall OpenOffice. Make sure there are no OpenOffice folder or files inside the Library/Application Support folder. This worked for me!

    Thank you Justin, for taking the time to help out those of us who know our way around computers, but aren’t experts! You’ve saved a lot of frustrated people like me a lot of unnecessary frustration!

  115. Todd says:

    I was having this problem of being not being able to boot my MacBook Pro past the gray apple loading screen. I followed your instructions for disabling extensions you had found incompatible such as old HP and Epson printer extensions. This allowed me to boot again but only for several days. I checked everything I could find other people having problems with on this thread and others I found from countless google searches. Finally I remembered that I had recently installed Apache OpenOffice 4 and that shortly afterwards it frooze up my MacBook while I was editing spreadsheets a couple times. As I remember, this was not long before the boot issues began. I booted into Safe Mode by pressing the Power button and before the screen lights up white or gray pressing and holding down the Shift key until the Apple logo and/or progress bar appears. After a few minutes it was able to boot in Safe Mode. Once in I uninstalled Open Office support files by opening Terminal, typing “open library”, once it opened a Finder window in the Library folder I opened the Application Support folder in it and located the OpenOffice folder inside it and dragged it to the trash. Then after deleting those support files I opened my Applications folder and dragged the OpenOffice icon to the trash to uninstalled the program. Then I emptied the trash to delete everything permanently, and VOILA, I checked for and installed system updates, restarted, and I am happy to say it booted up quickly on the very first try and everything seems to be back to normal. Hope this helps anyone else who has been dealing with this issue for the last several weeks now like I have! My advice for anyone with this same problem, try installing Libre Office instead. It is also freeware compatible with MS Office file formats, and I haven’t had any problems with it since I installed it on the bootable external hard drive I’ve been using the last few weeks while I’ve been working on this issue with my internal hard drive not booting up.

  116. Richard Butler says:

    Justin, thank you so much. I was pulling my hair out on this until I found your fix.

  117. Jessica says:

    Thank you so so so much for this post and especially the specific text to put in the terminal window. It totally fixed my el capitan installation problems and saved me from resorting to the genius bar. I’m so grateful.

  118. Jarrett says:

    Hey Justin! I don’t know how, but my last post didn’t go through.

    Every time I enter the text it comes back “no such file…”

    How can’t turn off FileVault from Recovery Mode, also.

    Can anyone help?

    • Justin Silver says:

      Hi Jarrett,

      Everything is case sensitive, so make sure you match what is in this post exactly. If you renamed your hard drive to something other than “Macintosh HD” you will need to use that instead. To double check you can list the contents of the /Volumes with “ls /Volumes”. You should be able to disable FileVault in Recovery Moe using Disk Utility. Good luck!

  119. Kevin Oppegaard says:

    My Macbook Pro (2009) couldn’t boot up after the 10.11.5 update. I was able to log in as Guest but unable to access my account. I tried your fix but it didn’t resolve the problem. I found the solution here:

    https://discussions.apple.com/thread/7376445?start=30&tstart=0

    1. Login as guest
    2. Open Terminal (cmd + space then search terminal)
    3. enter su “your_account”
    4. enter your password
    5. sudo find /private/var/folders/ | grep com.apple.LaunchServices | grep castor
    6. sudo rm /private/var/folders/cd/someLongRandomNameHere/someFolderNumberHere/com.apple.L aunchService-whatever.csstore

    • Wim Van Wassenhove says:

      Kevin, thanks for pointing to this forum article. I had tried everything, and then Justin’s method didn’t resolve things either. So happy to have found your reference to this forum article.
      I would suggest to Justin to update his article and mention this method at the end. Just point to it as an: “in case the above fails”. Note that when you go into the recovery console and then terminal, you do not need the su and sudo commands, you can start the find straight away and then delete reach of the cache files.
      When you copy/paste the cache file names, do not forget to add an escape before the space in the hard drives name.
      Also, applicable to all things here: my drive is called “Macintosh SSD”, as that is similar to “Macintosh HD”, it is easy to overlook that your disk name is different.

  120. Jarrett says:

    Hey Justin, thanks for what you’ve done already.

    I can’t get any of my text recognized in Terminal. Everything I type is “no such file…” Also, I can’t turn off File Vault since I can’t access System Preferences. Thoughts?

    I would just back up the computer to Time Machine and reinstall the OS, but I can’t do that from Recovery Mode. Really struggling here. Thanks for your advice.

    Jarrett

  121. Frank says:

    Justin, I am trying to follow everything you posted and believe to fouND the ext that might be causing the issue but I am getting the mkdir read only file system. The way I put the command :

    mount -rw /
    cd /Volumes/Macintosh\ HD/Library/Extensions/
    mkdir unsupported
    Then it tells me read only file system
    I don’t know what is the issue maybe you can shed some light on this I tried the above mentioned mount -uw also. Please help

    • Justin Silver says:

      Hi Frank,

      That command should mount the volume as read/write. If you are still getting errors it’s possible that the drive is corrupted – did you try running First Aid on the drive from Disk Utility? Are you using FileVault by any chance? Good luck!

  122. Monique says:

    Hi Justin,
    I’m really not good with computers and I just installed El Capitan and am having so much trouble. I tried terminal and all the commands just seem like a different language to me. Please help me out. I cannot use it and this is urgent as I need my computer for school.. :((

    • Justin Silver says:

      Hi Monique, sorry for not responding sooner, I have been traveling. Unfortunately there can be a lot of things that could be wrong so if you need help quickly you might want to try the Apple Genius bar or other tech support companies. Good luck!

  123. Dominique says:

    Dude, it worked! Thanks a million

  124. Euris says:

    Absolutely amazing!!! My unit wasn’t able to boot in 10.11. Fsck, diskwarrior etc didn’t resolved my issue.
    One question only: Is it possible to create a script file and run it through a USB stick, while we are in Single User?

    • Justin Silver says:

      I wasn’t able to boot into Single User mode, but I don’t think you could get it to run a script automatically. If you just want to run it – not automatically on boot – you should be able to mount the USB device and access it just like any other part of the filesystem.

      • Euripides says:

        No I didn’t mean to run it automatically. My thoughts are to save your script on a USB stick (as an .sh I believe?), mount it through Single User and run it. So that you don’t have to write everytime those lines.

        • Justin Silver says:

          That should work fine, you just need to mount the USB device, but hopefully you don’t need to do this more than once. As an alternative, I was able to start Safari in Recovery Mode and then just navigated to my own blog post, copied the script, and then pasted it into a Terminal window. Especially useful for the fancier script at the bottom since it has a lot more random regexes and diffs and whatnot in it.

          Good luck!

  125. this post really saved my day

  126. Josue Ochoa says:

    Thanks a lot I lost about 2 days trying to reset, reinstall, restore the backup, etc.without any luck, your solution to move the kext files to another place worked like a charm.

  127. Ann says:

    Absolutely fantastic! Thank you so much, you helped me save some very important stuff that I hadn’t backuped yet!

    I was wondering about these kext files that seem to be default and unproblematic:

    ACS6x.kext
    ArcMSR.kext
    ATTOCelerityFC8 07.08.53.kext
    ATTOCelerityFC8.kext
    ATTOExpressSASHBA2 07.08.53.kext
    ATTOExpressSASHBA2.kext
    ATTOExpressSASRAID2 07.08.53.kext
    ATTOExpressSASRAID2.kext
    CalDigitHDProDrv.kext
    HighPointIOP.kext
    HighPointRR.kext
    PromiseSTEX.kext
    SoftRAID.kext
    

    I’ve noticed that they are also in the System Library Folder, so perhaps they don’t need to be in the Library folder as well?

    My problematic files were some surfstick drivers. The following don’t seem to cause any problems, but do you happen to know what they might be from?

    cdc_10_9.kext
    cdc_ecm_qmi_10_9.kext
    

    Ann

    • Justin Silver says:

      Hi Ann – Glad you were able to fix your problem. I did a quick Google search but I’m not familiar with those files. The 10_9 part things they might be designed for an earlier OS though, but I can’t say for sure.

  128. mahesh says:

    i updating mac os 70% download then stacked then power off the lap after os not booting give me any solution much impotent data there in same Lap

    • Justin Silver says:

      Hi Mahesh, I don’t think you have the same issue – if the update was interrupted it might be corrupted. Your best bet is probably to restore from a backup and try again. Good luck!

  129. Dave says:

    After hours of damn crappy apple forums! Problem solved. Huge thanks. I won’t be updating again in a hurry. Must also make some proper backups now! Thanks

  130. Christian says:

    Thank so much you for your article, which helped me to get my MacBook Pro (17′, mid 2010) updated to El Capitan! After I got OS X 10.11.4 booted again with your instructions, as a final step, I had to reinstall OS X from recovery mode since graphics were terribly slow (especially with iTunes and Chrome). Maybe this addition may help other people with the same problem.

  131. Richard Posner says:

    Alas, no way could I even comprehend (let alone execute) the Terminal commands you invoked, but I think you DID solve my Reboot Refused mystery. I recently installed a Logitech mouse, so I wouldn’t be surprised if Logitech didn’t mess me up as well. Lacking your programming skills, I went Draconian and did an Erase and Restore via Time Machine. It worked, and happily, I didn’t lose any files. But I’m saving your Terminal commands for future use!

  132. Edgar says:

    Thank you so much! It was of great help

  133. Matt says:

    Justin, thank you so much for sharing this – YOU SAVED MY DAY !!!!
    My problem was not with “El Capitan” but Mavericks (10.9.5).
    After a shutdown (for cleaning, normally machins keeps running) system wouldn’t restart.
    Hung at “installing drivers” (CMD+V).
    With your help, I found a recently installed Kernel Extension from a CITRIX Receiver named “CitrixGUSB.kext”. Moved this away (I have a recovery partition arranged which can access my normal boot partition – comes handy sometimes), and the problem was fixed (after all other popular tricks, like fsck, NVRAM reset, SMD reset, fix permissions on FS failed)

  134. Dharmesh shah says:

    Hi Justin,
    Many thanks after wasting three hours trying to.reboot into 10.11.4, I resorted to your advice. I movrf these two kexts
    1) BJUSBLOAD.KEXT
    2) CIJUSBLOAD.KEXT

    And then rebooted.
    The mbp booted fine.
    Thanks for your post
    Dharmesh shah
    Mumbai, India

  135. Alexandra says:

    A MILLION TIMES THANK YOU!!! After hours and hours of Googling and much hair-tearing, my brand new MBP is happy and shuts down as it ought. (*whew!*)

  136. Stephan says:

    I had the same issue today and thanks to your article I was able to resolve it. What really bothers me are two things:
    1) why is the safe mode not exactl doing this? Ignoring all non Apple system kernel extensions and all library kernel extensions! I wasted a lot of time because the safe mode did not work and I assumed the problem is somewhere else
    2) why are there no error messages in the verbose mode about extensions that block the starting process?

    • Justin Silver says:

      Hi Stephan – those are both very good questions but unfortunately I don’t have an answer for you. I too would suspect that Safe Mode would avoid the non standard extensions, but that doesn’t seem to be the case.

  137. DanSolo says:

    No second Mac I’m afraid.
    I left it unplugged over night after losing my mind with it last night.
    Today I am met with the flashing question mark on a folder icon. I try the Cmd+r restart and just brings me back around full circle?

    Does that tell you anything?

    Cheers for your time replying, it’s appreciated.

    This sounds like it might get expensive? Or is it a relatively simple fix for someone who both knows what they are doing and has the right tools? In this case, another mac??

    Cheers again,

    • Justin Silver says:

      Possibly more expensive than if you had a working laptop 😛 It sounds like your drive is either corrupted or has errors, so if you don’t have a second Mac to boot from you can try to boot from a Time Machine backup into Recovery Mode. With your Time Machine plugged in, hold down Opt/Alt while it is booting to select the external drive. Hopefully from there you can run DiskUtil to fix an errors.

      I have never done this before and I’m not sure if would work on your system but I think you can replace the hard drive entirely and when you boot up it will ask you for your Apple ID and then re-install the OS from the operating system.

      • Zach H says:

        Hi Justin – All your advice and efforts on this page is so much appreciated!!
        I had found my mid 2009 MacBook Pro essentially unresponsive after I accidentally left it sleeping for several days last week. It has been slower and aloof since updating to el Cap a couple months ago. Then, on the restart last week it was just hanging forever. I tried your basic suggestions with some success (also reinstalled O’s 10.11.4 in recovery mode and some terminal fixes, then rebooted etc). A question tho: being completely new to using terminal commands myself, when I type your script I don’t really know when to hit return during the “view files” and then the “move extra kexts” parts. In other words, after each line or after the complete command? I’d also like to check out which kexts I currently have now that I’ve rebooted, but not sure I’ve figured it out. I’d like to know whether I still need to move some again. Thanks again – this has really saved me! Best, Zach

        • Justin Silver says:

          Hi Zach,

          The best thing to do would be to open Safari in Recovery Mode and cut and paste the script at the very bottom. In general each newline can be considered a return, and when you paste it will do this automatically, though perhaps not the last line. The script I mentioned moves anything that isn’t found in the Recovery partition, so basically anything that isn’t Apple provided. I would just reinstall the software if you can rather than restoring the files.

          Good luck!

  138. DanSolo says:

    No second Mac I’m afraid.
    I left it unplugged over night after losing my mind with it last night.
    Today I am met with the flashing question mark on a folder icon. I try the Cmd+r restart and just brings me back around full circle?

    Does that tell you anything?

    Cheers for your time replying, it’s appreciated.

    This sounds like it might get expensive? Or is it a relatively simple fix for someone who both knows what they are doing and has the right tools? In this case, another mac??

    Cheers again,

  139. Michael says:

    Finally a problem solved ! Thanks for your help.Made my day, Heck made my week!!!

  140. DanSolo says:

    Hi Justin,

    My iMac just suddenly stopped working and a few searches lead me here.

    I can’t even get into recovery mode ( tried all the steps you said).
    I just get the grey “no entry” sign. Occasionally it will cycle between the “no entry” sign and the apple logo. But ultimately goes nowhere.
    Any ideas?

  141. Pierre says:

    Just had the same problem on a brand new MBP mid 2015, 2 months old. It was freezing on boot or right after entering my login. I had no problem until yesterday, the I did the last update on my mac (not sure on what I updated, just clicked yes…) and after it was just a nightmare.

    I tried justin solution without success (and every single solution on google !). I ended erasing the whole disk and reinstalling a brand new OSX 10.11.4 : no success, it was still freezing while booting or just after login.

    What solve the problem : restart on recovery mode, on disk utility, do a S.O.S (log showed no problems). Reboot. Et voilà, my MBP is working again. (spent my day reinstalling stuff…)

    NB : I have tried this (SOS) before formatting without success.

    Good luck and thanks for this thread. It helped me during that long night 🙂

  142. James says:

    Thanks so much Justin. I had the same problem after updating to 10.11.4. I spent 2 days trying to resolve the issue to no avail. Your fix worked.

    I did however have some issues which I’ll mention here in case others have had the same.

    First, typing the script didn’t seem to work despite writing it exactly as instructed. I kept getting invalid command errors or directory not found errors. To resolve this I ran safari in recovery mode and copied the script off this website right into terminal. This worked for me.

    Second, I discover that Little Snitch was the likely cause of my grief. After successfully running the script and booting I installed the latest version of Snitch and I am now able to boot without issue. Hopefully the system remains stable but if not I can just run the script again.

    Thanks again, you’re a legend.

  143. Mike says:

    I have an early 2009 mac mini with 2Gb ram. I’m having problems with OS X 10.11.4 randomly hanging at boot up. It was working fine with 10.11.3. Here is a list of the .kext files on my system.

    ALF.kext:
    AMD2400Controller.kext:
    AMD2600Controller.kext:
    AMD3800Controller.kext:
    AMD4600Controller.kext:
    AMD4800Controller.kext:
    AMD5000Controller.kext:
    AMD6000Controller.kext:
    AMD7000Controller.kext:
    AMD8000Controller.kext:
    AMD9000Controller.kext:
    AMDFramebuffer.kext:
    AMDRadeonX3000.kext:
    AMDRadeonX4000.kext:
    AMDSupport.kext:
    ATIRadeonX2000.kext:
    Apple16X50Serial.kext:
    AppleACPIPlatform.kext:
    AppleAHCIPort.kext:
    AppleAPIC.kext:
    AppleBMC.kext:
    AppleBacklight.kext:
    AppleBacklightExpert.kext:
    AppleBluetoothMultitouch.kext:
    AppleBluetoothRemote.kext:
    AppleCameraInterface.kext:
    AppleCredentialManager.kext:
    AppleEFIRuntime.kext:
    AppleFDEKeyStore.kext:
    AppleFIVRDriver.kext:
    AppleFSCompressionTypeDataless.kext:
    AppleFSCompressionTypeZlib.kext:
    AppleFWAudio.kext:
    AppleFileSystemDriver.kext:
    AppleGraphicsControl.kext:
    AppleGraphicsPowerManagement.kext:
    AppleHDA.kext:
    AppleHIDKeyboard.kext:
    AppleHIDMouse.kext:
    AppleHIDTransport.kext:
    AppleHPET.kext:
    AppleHPM.kext:
    AppleHSSPIHIDDriver.kext:
    AppleHSSPISupport.kext:
    AppleHV.kext:
    AppleHWSensor.kext:
    AppleIRController.kext:
    AppleInputDeviceSupport.kext:
    AppleIntelBDWGraphics.kext:
    AppleIntelBDWGraphicsFramebuffer.kext:
    AppleIntelCPUPowerManagement.kext:
    AppleIntelCPUPowerManagementClient.kext:
    AppleIntelFramebufferAzul.kext:
    AppleIntelFramebufferCapri.kext:
    AppleIntelHD3000Graphics.kext:
    AppleIntelHD4000Graphics.kext:
    AppleIntelHD5000Graphics.kext:
    AppleIntelHDGraphics.kext:
    AppleIntelHDGraphicsFB.kext:
    AppleIntelLpssDmac.kext:
    AppleIntelLpssGspi.kext:
    AppleIntelLpssI2C.kext:
    AppleIntelLpssI2CController.kext:
    AppleIntelLpssSpiController.kext:
    AppleIntelLpssUART.kext:
    AppleIntelLpssUARTCommon.kext:
    AppleIntelLpssUARTv0.kext:
    AppleIntelLpssUARTv1.kext:
    AppleIntelMCEReporter.kext:
    AppleIntelPCHPMC.kext:
    AppleIntelSKLGraphics.kext:
    AppleIntelSKLGraphicsFramebuffer.kext:
    AppleIntelSNBGraphicsFB.kext:
    AppleIntelSlowAdaptiveClocking.kext:
    AppleKextExcludeList.kext:
    AppleKeyStore.kext:
    AppleKeyswitch.kext:
    AppleLPC.kext:
    AppleLSIFusionMPT.kext:
    AppleMCCSControl.kext:
    AppleMCP89RootPortPM.kext:
    AppleMatch.kext:
    AppleMikeyHIDDriver.kext:
    AppleMobileDevice.kext:
    AppleMobileFileIntegrity.kext:
    AppleMultitouchDriver.kext:
    AppleOSXUSBNCM.kext:
    AppleOSXWatchdog.kext:
    ApplePlatformEnabler.kext:
    AppleRAID.kext:
    AppleRAIDCard.kext:
    AppleRTC.kext:
    AppleSDXC.kext:
    AppleSEP.kext:
    AppleSMBIOS.kext:
    AppleSMBusController.kext:
    AppleSMBusPCI.kext:
    AppleSMC.kext:
    AppleSMCLMU.kext:
    AppleSRP.kext:
    AppleSmartBatteryManager.kext:
    AppleStorageDrivers.kext:
    AppleThunderboltDPAdapters.kext:
    AppleThunderboltEDMService.kext:
    AppleThunderboltIP.kext:
    AppleThunderboltNHI.kext:
    AppleThunderboltPCIAdapters.kext:
    AppleThunderboltUTDM.kext:
    AppleTopCase.kext:
    AppleTyMCEDriver.kext:
    AppleUSBACM.kext:
    AppleUSBAudio.kext:
    AppleUSBCDC.kext:
    AppleUSBDMM.kext:
    AppleUSBDisplays.kext:
    AppleUSBECM.kext:
    AppleUSBEEM.kext:
    AppleUSBEthernet.kext:
    AppleUSBEthernetHost.kext:
    AppleUSBFTDI.kext:
    AppleUSBMultitouch.kext:
    AppleUSBNCM.kext:
    AppleUSBNetworking.kext:
    AppleUSBTopCase.kext:
    AppleUSBWCM.kext:
    AppleUpstreamUserClient.kext:
    AppleWWANAutoEject.kext:
    AppleXsanScheme.kext:
    Apple_iSight.kext:
    AudioAUUC.kext:
    BootCache.kext:
    CellPhoneHelper.kext:
    CoreCaptureResponder.kext:
    CoreStorage.kext:
    Dont Steal Mac OS X.kext:
    GeForce.kext:
    GeForceTesla.kext:
    IO80211Family.kext:
    IOACPIFamily.kext:
    IOAHCIFamily.kext:
    IOATAFamily.kext:
    IOAVBFamily.kext:
    IOAcceleratorFamily.kext:
    IOAcceleratorFamily2.kext:
    IOAudioFamily.kext:
    IOBDStorageFamily.kext:
    IOBluetoothFamily.kext:
    IOBluetoothHIDDriver.kext:
    IOCDStorageFamily.kext:
    IODVDStorageFamily.kext:
    IOFireWireAVC.kext:
    IOFireWireFamily.kext:
    IOFireWireIP.kext:
    IOFireWireSBP2.kext:
    IOFireWireSerialBusProtocolTransport.kext:
    IOGraphicsFamily.kext:
    IOHDIXController.kext:
    IOHIDFamily.kext:
    IONDRVSupport.kext:
    IONVMeFamily.kext:
    IONetworkingFamily.kext:
    IOPCIFamily.kext:
    IOPlatformPluginFamily.kext:
    IOReportFamily.kext:
    IOSCSIArchitectureModelFamily.kext:
    IOSCSIParallelFamily.kext:
    IOSMBusFamily.kext:
    IOSerialFamily.kext:
    IOSlowAdaptiveClockingFamily.kext:
    IOStorageFamily.kext:
    IOStreamFamily.kext:
    IOSurface.kext:
    IOThunderboltFamily.kext:
    IOTimeSyncFamily.kext:
    IOUSBAttachedSCSI.kext:
    IOUSBFamily.kext:
    IOUSBHostFamily.kext:
    IOUSBMassStorageClass.kext:
    IOUSBMassStorageDriver.kext:
    IOUserEthernet.kext:
    IOVideoFamily.kext:
    Libm.kext:
    NVDAGF100Hal.kext:
    NVDAGK100Hal.kext:
    NVDANV50HalTesla.kext:
    NVDAResman.kext:
    NVDAResmanTesla.kext:
    NVDAStartup.kext:
    NVSMU.kext:
    OSvKernDSPLib.kext:
    PPP.kext:
    Quarantine.kext:
    SMCMotionSensor.kext:
    Sandbox.kext:
    System.kext:
    TMSafetyNet.kext:
    acfs.kext:
    acfsctl.kext:
    autofs.kext:
    cd9660.kext:
    cddafs.kext:
    corecapture.kext:
    corecrypto.kext:
    exfat.kext:
    iPodDriver.kext:
    mcxalr.kext:
    msdosfs.kext:
    ntfs.kext:
    pmtelemetry.kext:
    pthread.kext:
    smbfs.kext:
    triggers.kext:
    udf.kext:
    vecLib.kext:
    webcontentfilter.kext:
    webdav_fs.kext:
    
  144. Orion says:

    You just saved from a few more hours of pulling my hair out.!! Thank you sir.

  145. Neil says:

    I had the same problem with the 10.11.4 update. I tried everything. I didn’t get to try this method yet, but I was able to get in. Just by holding the shift and and letting go whenever the apple logo appeared! Also, please make sure to unplug all device connected to the Mac first. Good luck to everyone!

    Neil
    iMac/2011/10.11.4 update

  146. Jean-Charles says:

    Hello Justin, I’m french and I want to congratulate you for this paper…
    It helped me because my MacBook was unable to boot and I didn’t know why…
    A little remark: The first time i booted after applying your solution, the mac had restarted (the first boot was not complete) but after a second boot it was OK. Thank you very much….

  147. Jay says:

    Hello Justin, words cannot express my gratitude for your immense assistance in these difficult times. May the good lord bless you. Thanks you for putting a smile on my face again.

  148. Olivier says:

    It works for me !

    Thanks a lot.

  149. Jay says:

    Hello Justin, I am glad I found your post and I see others have benefited from you. However I am quite new at this and I think I have messed up the steps . This is what I see after I try to write the commands please note that my hard drive name is MacBook Pro HD
    Mount -rw
    Cd /Volumes/MacBook Pro HD\ HD/Library/Extensions/
    Cd: /Volumes/MacBook: No such file or directory
    Mkdir Unsupported
    Mv *.kext Unsupported
    Mv: rename *. kext to Unsupported/: No such file or directory

    Please where did I go wrong and what is the way forward. Thanks

    • Jay says:

      Ooh Justin I forgot to mention that my drive is encrypted. Thanks in advance

    • Justin Silver says:

      Hi Jay,

      You should probably use the script at the very bottom of this post as it’s a bit more clever and only removes non-default kext files. That said the problem you are having is with the hard drive name – the default is “Macintosh HD”, but it sounds like you might have renamed yours “Macbook Pro HD”? No matter what the name is, it’s important that you escape the spaces in it with a backslash. That means that “Macintosh HD” becomes “Macintosh\ HD” on the command line, and “Macbook Pro HD” becomes “Macbook\ Pro\ HD”. I’m sure you noticed that it is case sensitive, so you need to use lowercase mount (don’t forget the “/” at the end to indicate your root), cd, mkdir, and mv. Good luck!.

      • Jay says:

        Hi Justin

        Thank you for the prompt reply I appreciate your patience and assistance

        This is what I got afterwards:
        -bash-3.2# mount -rw /
        -bash-3.2# cd /Volumes/Macbook\ Pro\ HD/Library/Extensions
        -bash-3.2# mv Unsupported/*.kext .
        mv: rename Unsupported/*.kext to ./*.kext: No such file or directory

        • Justin Silver says:

          Hi Jay,

          You’ll need to make sure to turn off FileVault first, then for the last line use:

          mv *.kext Unsupported

          Note that some of the kext files here are default and don’t need to be moved. If you want to copy and paste from this article directly, start Safari in Recovery Mode by entering:

          /Applications/Safari.app/Contents/MacOS/Safari &

          Cheers!

  150. Yash P. says:

    Hey Justin,

    I have been having the same issues with the booting. And I tried your suggestion and it let me input the mount -rw / command. However whenever I try the ” cd /Volumes/Macintosh\ HD/Library/Extensions/ it says no such file or directory. Could you possible help me out. I really need to get into my laptop asap, bc all my notes for my final exams are on it.

    • Justin Silver says:

      Hi Yash,

      Did you rename your hard drive? “Macintosh HD” is the default, but if you change it then you need to use the new name. You can type `ls -la /Volumes` to see what’s there, it might give you a hint. Remember that if there are any spaces in the name you need to escape them with a backslash. Good luck!

      • Yash P. says:

        I dont ever remember changing it. but when I typed in ls -la /Volumes, it gave me,

        drwxrwxrwt 5 root admin 238 Apr 5 13:34

        and a repeated stuff like that but nothing about the name

        • Justin Silver says:

          That makes it sound like your hard drive isn’t mounted, which might not be a good sign. It’s possible that it’s not mounted because it’s using FileVault or something? At any rate you probably want to check out DiskUtil and see if you can see your drive there, and if so run a Verify / Repair on it. If you want to try from the command line type diskutil list to show your drives, then diskutil mount /dev/disk1s2 where disk1s2 is the ID of your disk. Some more details on mounting/unmounting disks here: http://osxdaily.com/2013/05/13/mount-unmount-drives-from-the-command-line-in-mac-os-x/.

  151. Kathleen says:

    You are a life saving. I spent 8+ hours trying to figure out why new laptop with El Capitan stopped working after I installed Java SE 6 and the USB modem software from Huawei. Your fix is what finally did the trick – with all files saved. Thank you SO SO much for posting this solution.

  152. Thando says:

    Hi Justin,

    Kindly assist. The only .kext file I have is this one:

    SoftRAID.kext

    Whenever I move it into Unsupported & reboot my Mac, it laods then shows a black screen(switches off).

    Thanks in advance,

    Thando

    • Justin Silver says:

      Hi Thando,

      SoftRAID.kext is one of the default ones, but there should be some others there as well. You might want to check the /Library/Extensions directory when you boot into Recovery Mode. These are the default ones, so you might want to try moving them to /Volumes/Macintosh\ HD/Library/Extensions. There are also kext files in your System folder, but I haven’t seen any there conflicting. That said…. maybe it is something else entirely? Good luck!

      • Thando says:

        Thank you for your swift response Justin.

        Here are the .kext files I found under

        /Library/Extensions :

        ACS6x.kext
        ATTOCelerityFC8.kext
        ATTOExpressSASHBA2.kext
        ATTOExpressSASRAID2.kext
        ArcMSR.kext
        CalDigitHDProDrv.kext
        HighPointIOP.kext
        HighPointRR.kext
        PromiseSTEX.kext

        How do I go abput moving them to the Unsupported folder, & is there a need for me to re-install the OS after they’ve been moved?

        Thanks,

        Thando

        • Justin Silver says:

          Hmm, not sure if that’s your issue. I have all the same kext files, plus SoftRAID:

          drwxr-xr-x   3 root  wheel   102 Jun 12  2014 ACS6x.kext
          drwxr-xr-x   3 root  wheel   102 Aug 26  2013 ATTOCelerityFC8.kext
          drwxr-xr-x   3 root  wheel   102 Aug 26  2013 ATTOExpressSASHBA2.kext
          drwxr-xr-x   3 root  wheel   102 Aug 26  2013 ATTOExpressSASRAID2.kext
          drwxr-xr-x   3 root  wheel   102 Aug 20  2013 ArcMSR.kext
          drwxr-xr-x   3 root  wheel   102 Aug 31  2013 CalDigitHDProDrv.kext
          drwxr-xr-x   3 root  wheel   102 Aug 14  2014 HighPointIOP.kext
          drwxr-xr-x   3 root  wheel   102 Aug 14  2014 HighPointRR.kext
          drwxr-xr-x   3 root  wheel   102 Apr 27  2014 PromiseSTEX.kext
          drwxr-xr-x   3 root  wheel   102 Jul 20  2015 SoftRAID.kext
          

          You could try restoring SoftRAID.kext from your /Library/Extensions folder in Recovery Mode, or it’s possible that something under /System/Library/Extensions is causing the trouble.

          • Thando says:

            SoftRAID.kext is there, I just didn’t include it ’cause you mentioned that it’s a default .kext file.

            Kindly have a look at the .kext files under /System, & please advice on which might be troublesome.. :

            ALF.kext
            AMD2400Controller.kext
            AMD2600Controller.kext
            AMD3800Controller.kext
            AMD4600Controller.kext
            AMD4800Controller.kext
            AMD5000Controller.kext
            AMD6000Controller.kext
            AMD7000Controller.kext
            AMD8000Controller.kext
            AMD9000Controller.kext
            AMDFramebuffer.kext
            AMDSupport.kext
            Apple16X50Serial.kext
            AppleACPIPlatform.kext
            AppleAHCIPort.kext
            AppleAPIC.kext
            AppleBMC.kext
            AppleBacklight.kext
            AppleBacklightExpert.kext
            AppleBluetoothMultitouch.kext
            AppleCameraInterface.kext
            AppleCredentialManager.kext
            AppleEFIRuntime.kext
            AppleFDEKeyStore.kext
            AppleFIVRDriver.kext
            AppleFSCompressionTypeDataless.kext
            AppleFSCompressionTypeZlib.kext
            AppleFWAudio.kext
            AppleFileSystemDriver.kext
            AppleGraphicsControl.kext
            AppleGraphicsPowerManagement.kext
            AppleHDA.kext
            AppleHIDKeyboard.kext
            AppleHIDMouse.kext
            AppleHIDTransport.kext
            AppleHPET.kext
            AppleHPM.kext
            AppleHSSPIHIDDriver.kext
            AppleHSSPISupport.kext
            AppleHV.kext
            AppleHWSensor.kext
            AppleIRController.kext
            AppleInputDeviceSupport.kext
            AppleIntelBDWGraphicsFramebuffer.kext
            AppleIntelCPUPowerManagement.kext
            AppleIntelCPUPowerManagementClient.kext
            AppleIntelFramebufferAzul.kext
            AppleIntelFramebufferCapri.kext
            AppleIntelHDGraphicsFB.kext
            AppleIntelLpssDmac.kext
            AppleIntelLpssGspi.kext
            AppleIntelLpssI2C.kext
            AppleIntelLpssI2CController.kext
            AppleIntelLpssSpiController.kext
            AppleIntelLpssUART.kext
            AppleIntelMCEReporter.kext
            AppleIntelPCHPMC.kext
            AppleIntelSKLGraphicsFramebuffer.kext
            AppleIntelSNBGraphicsFB.kext
            AppleIntelSlowAdaptiveClocking.kext
            AppleKextExcludeList.kext
            AppleKeyStore.kext
            AppleKeyswitch.kext
            AppleLPC.kext
            AppleLSIFusionMPT.kext
            AppleMCCSControl.kext
            AppleMCP89RootPortPM.kext
            AppleMIDIFWDriver.plugin
            AppleMatch.kext
            AppleMikeyHIDDriver.kext
            AppleMobileFileIntegrity.kext
            AppleMultitouchDriver.kext
            AppleOSXUSBNCM.kext
            AppleOSXWatchdog.kext
            ApplePlatformEnabler.kext
            AppleRAID.kext
            AppleRAIDCard.kext
            AppleRTC.kext
            AppleSDXC.kext
            AppleSEP.kext
            AppleSMBIOS.kext
            AppleSMBusController.kext
            AppleSMBusPCI.kext
            AppleSMC.kext
            AppleSMCLMU.kext
            AppleSRP.kext
            AppleSmartBatteryManager.kext
            AppleStorageDrivers.kext
            AppleThunderboltDPAdapters.kext
            AppleThunderboltEDMService.kext
            AppleThunderboltIP.kext
            AppleThunderboltNHI.kext
            AppleThunderboltPCIAdapters.kext
            AppleThunderboltUTDM.kext
            AppleTopCase.kext
            AppleTyMCEDriver.kext
            AppleUSBACM.kext
            AppleUSBAudio.kext
            AppleUSBCDC.kext
            AppleUSBDMM.kext
            AppleUSBDisplays.kext
            AppleUSBECM.kext
            AppleUSBEEM.kext
            AppleUSBEthernet.kext
            AppleUSBMultitouch.kext
            AppleUSBNCM.kext
            AppleUSBNetworking.kext
            AppleUSBTopCase.kext
            AppleUSBWCM.kext
            AppleVADriver.bundle
            AppleWWANAutoEject.kext
            AppleXsanScheme.kext
            Apple_iSight.kext
            BootCache.kext
            CellPhoneHelper.kext
            CoreCaptureResponder.kext
            CoreStorage.kext
            DVFamily.bundle
            Dont Steal Mac OS X.kext
            EAP-KRB.ppp
            EAP-RSA.ppp
            EAP-TLS.ppp
            IO80211Family.kext
            IOACPIFamily.kext
            IOAHCIFamily.kext
            IOATAFamily.kext
            IOAVBFamily.kext
            IOAccelerator2D.plugin
            IOAcceleratorFamily.kext
            IOAcceleratorFamily2.kext
            IOAudioFamily.kext
            IOBDStorageFamily.kext
            IOBluetoothFamily.kext
            IOBluetoothHIDDriver.kext
            IOCDStorageFamily.kext
            IODVDStorageFamily.kext
            IOFireWireAVC.kext
            IOFireWireFamily.kext
            IOFireWireIP.kext
            IOFireWireSBP2.kext
            IOFireWireSerialBusProtocolTransport.kext
            IOGraphicsFamily.kext
            IOHDIXController.kext
            IOHIDFamily.kext
            IONDRVSupport.kext
            IONVMeFamily.kext
            IONetworkingFamily.kext
            IOPCIFamily.kext
            IOPlatformPluginFamily.kext
            IOReportFamily.kext
            IOSCSIArchitectureModelFamily.kext
            IOSCSIParallelFamily.kext
            IOSMBusFamily.kext
            IOSerialFamily.kext
            IOSlowAdaptiveClockingFamily.kext
            IOStorageFamily.kext
            IOStreamFamily.kext
            IOSurface.kext
            IOThunderboltFamily.kext
            IOTimeSyncFamily.kext
            IOUSBAttachedSCSI.kext
            IOUSBFamily.kext
            IOUSBHostFamily.kext
            IOUSBMassStorageClass.kext
            IOUSBMassStorageDriver.kext
            IOUserEthernet.kext
            IOVideoFamily.kext
            Libm.kext
            NVDAGF100Hal.kext
            NVDAGK100Hal.kext
            NVDANV50HalTesla.kext
            NVDAResman.kext
            NVDAResmanTesla.kext
            NVDAStartup.kext
            NVMeSMARTLib.plugin
            NVSMU.kext
            OSvKernDSPLib.kext
            PPPSerial.ppp
            Quarantine.kext
            SMARTLib.plugin
            SMCMotionSensor.kext
            Sandbox.kext
            System.kext
            TMSafetyNet.kext
            acfs.kext
            acfsctl.kext
            autofs.kext
            cd9660.kext
            cddafs.kext
            corecapture.kext
            corecrypto.kext
            exfat.kext
            mcxalr.kext
            msdosfs.kext
            ntfs.kext
            pmtelemetry.kext
            pthread.kext
            smbfs.kext
            triggers.kext
            udf.kext
            vecLib.kext
            webcontentfilter.kext
            webdav_fs.kext
            

            Much appreciated,

            Thando

            • Justin Silver says:

              Hi Thando, those extensions seem to match the ones on my machine (I have more actually) so I’m not sure if that is the issue. Apologies but I’m not sure what else to check.

              • Thando says:

                Hi Justin, thank you so much for your help. I’ll troubleshoot some more & try figure out the issue. I’ll format & reload an older OS version. Again, thank you for taking your time to assist.

  153. Daniel says:

    You just saved my day!!!! Thank you SO much!

  154. Morgan says:

    Justin,

    I’d like to thank you very much. This worked for me. I find it amazing that people such as yourselves willingly spend time and energy putting pages together such as this to aid the world – why Apple hasn’t done something similar or fixed this known issue is beyond me. Really appreciate that you took the time to spell out in simple terms the way to fix this issue.

    Thank you.

  155. Peter says:

    Hi Justin
    10/10 !
    Brilliant fix. I moved all the .kext files into “Unsupported” and my macbook air boots after installing 10.11.4
    Many thanks
    cheers
    Peter

    • Justin Silver says:

      Great to hear! Keep in mind that some of the kext files are useful and shouldn’t conflict with OS X starting up. At the end of this post I included a script to move all the kext files that differ from the Recovery Partition to their own folder so you only disable the non-default ones. I found that reinstalling the software that the incompatible kexts belonged to often fixes the issue because the developer has updated the extensions.

      • Francesco says:

        Hi Justin, thank to your guide I’ve been able to boot my 2009 fusion drive diy iMac that wouldn’t start after updating to 10.11.5. Since I haven’t notice the warning, I moved all the .kext files like Peter did to the Unsupported folder. Should I run the script you add right away or should I put the files back to where they belong before doing that? Using terminal from the OS X recovery mode or can I do it from the operative system? Many thanks Francesco

  156. Janet says:

    Hi Justin

    Thank you so much for the tutorial, first of all.

    I successfuly installed El Capitan just now (version 10.11.4, I believe), but after typing my password in to login, the progress bar seemed to stop moving after it reached 100%. Talked to some guys in Apple Support and they all wanted to do a clean install.

    I tried your suggestion, but it came out like this:

    -bash-3.2# mount -rw
    /dev/disk1s1 on / (hfs, local)
    devfs on /dev (devfs, local, nobrowse)
    /dev/disk2 on /private/var/log (hfs, local, union, nobrowse)
    /dev/disk3 on /Volumes (hfs, local, union, nobrowse)
    /dev/disk4 on /private/var/tmp (hfs, local, union, nobrowse)
    /dev/disk5 on /private/var/run (hfs, local, union, nobrowse)
    /dev/disk6 on /System/Installation (hfs, local, union, nobrowse)
    /dev/disk7 on /private/var/db (hfs, local, union, nobrowse)
    /dev/disk8 on /private/var/folders (hfs, local, union, nobrowse)
    /dev/disk9 on /private/var/root/Library (hfs, local, union, nobrowse)
    /dev/disk11 on /Library/Preferences (hfs, local, union, nobrowse)
    /dev/disk12 on /Library/Preferences/SystemConfiguration (hfs, local, union, nobrowse)
    /dev/disk13 on /Library/Keychains (hfs, local, union, nobrowse)
    /dev/disk14 on /private/var/tmp/RecoveryTemp (hfs, local, union, nobrowse)
    /dev/disk0s3 on /Volumes/Image Volume (hfs, local, journaled)
    /dev/disk15 on /Volumes/Macintosh HD (hfs, local, journaled)
    -bash-3.2# cd /Volumes/Macintosh \HD/Library/Extensions
    -bash: cd: /Volumes/Macintosh: No such file or directory
    -bash-3.2# cd /Volumes/Macintosh\ HD/Library/Extensions
    -bash-3.2# mkdir Unsupported
    mkdir: Unsupported: File exists
    -bash-3.2# mv *.kext Unsupported
    mv: rename *.kext to Unsupported/*.kext: No such file or directory
    

    You see, “No such file or directory” showed up when I tried to move the .kext files to Unsupported.

    I was wondering if you can help me to go about this?

    My Macintosh HD is now unlocked, and after an error of running First Aid, now it’s all fixed.

    Thank you!

    • Justin Silver says:

      Hi Janet,

      For the first mount command you need to make sure to include a forward slash at the end for “root”, so mount -rw /.

      It looks like you did escape the space in “Macintosh HD” the second time, and it seems like you probably already did this since the “Unsupported” folder already exists. My guess is that the last mv says “No such file or directory” because you have already moved all the files to “Unsupported”. If you want to move them back try the following, and then just run the script at the very end of the post to automatically remove anything that isn’t also found in your Recovery Partition.

      mount -rw /
      cd /Volumes/Macintosh\ HD/Library/Extensions
      mv Unsupported/*.kext .
      

      Good luck!

      • Janet says:

        Hi Justin

        Thank you for the prompt reply.

        This is what I got afterwards:
        -bash-3.2# mount -rw /
        -bash-3.2# cd /Volumes/Macintosh\ HD/Library/Extensions
        -bash-3.2# mv Unsupported/*.kext .
        mv: rename Unsupported/*.kext to ./*.kext: No such file or directory

        • Janet says:

          Omgomg it worked! I don’t know what happened, but it suddenly opened the desktop!

          Thank you so much for your help!

  157. Nate says:

    Justin Silver, you are a Mac genius and my hero for the night!! After a week of messing around with everything imaginable short of sending it half way around the world to the nearest Apple store, I tried your Terminal lines and the Mac finally booted after the update. Genius I say!!

  158. Débora says:

    Hi Justin! I could figure out which kexts files are wrong although when I try to create the new directory it shows “read-only file system”. I alreadylookend and it isn’t encrypted by FileVault. Do you have any idea of what it’s may happening and what should I do? Thanks a lot for the help!

  159. Mark says:

    Oh maaan, thank you so much for this Justin. Literally spent days trying to fix this. Turns out it was HP printer kext that was causing the issue for me. Sweet relief.

  160. Emily says:

    I appreciate your post so much, but my MacBook still won’t boot after performing your fix. I only had 1 kext file that was not on your list (an HP file), which I moved to Unsupported, but no luck.

    The interesting part is that my MacBook “crashed” literally right before I was to run Migration Assistant and transfer files to a new MacBook over wifi. The new MacBook does not have any ports (except USB-c). I bought a new MacBook b/c my old one was dreadfully slow and low on memory. Could that be the problem? I saw one line on my terminal that read “cache too full for physical memory” (or something like that).

    You’ll have to forgive me. I’m tech savvy but definitely not as computer-gifted as you! I would greatly appreciate any advice you have.

    • Emily says:

      I should note that in order to run the Migration Assistant, I had to update both computers to OS X 10.11.4. The old computer stalled during the installation process. I had to power down. When I try to power it up, I get the Apple logo with the status bar, but then it shuts down. I had been running El Capitan prior to the update without having this start up issue. It only began after attempting to install 10.11.4 (albeit, my computer had been running very slowly).

      • Justin Silver says:

        Is it just hanging with the status bar or actually turning off? On my older Mac I just had more problems upgrading to 10.11.4 so I wrote a script that moves anything not found in your Recovery partition, but it’s also possible you have an incompatible kext file somewhere else as well. Or it’s possible that it’s another issue altogether too… are there any crash logs in /Volumes/Macintosh HD/Library/Logs/DiagnosticReports/?

  161. Manuel says:

    Hi,

    I have a this problem:

    I try reinstall OS X El Capitan in my macbook pro:

    1- format hard drive and try install OS X
    2- Select hard drive and continue
    3- Sign in to download from de app store
    4- ERROR:
    An unexpected error occurred while signing in.
    AMD-Action:authenticate:SP

    Help please!!!

  162. David says:

    Fantastic! Finally after problems with every update since 10.11 I’m up and running 10.11.4 Thank you for your guide.

  163. Menno Hoffmann says:

    Thanks very much for your very informative post, saved me a lot of time not having to do another fresh install and backup recovery. I left my Macbook on for months out of fear I might have to restart 🙂

    Great to post all your .kext files, so I could move all .kext files back that you show in your list (excluding the Logitech ones). And voila, I was able to reboot as well! In my case the culprit was a printer related .kext file from 2010 from an Epson A3 printer. So I downloaded the newest, reinstalled the printer and all OK. Now all .kext files are back again in my /Extensions, but this time it all works.

    From my experience with this fix:
    – the final Terminal command “reboot” did nothing visible, so I rebooted myself, which worked as well
    – I dragged the correct .kext files from /Unsupported to /Extensions and got weird error messages. Then I realised I was not moving them back, but copying them. Holding the Command-key solved that.

    Trawling around the web looking for possibly suspect .kext files I stumbled across thes following .kext files reported by other people:
    Virtualbox
    Evernote
    EltimaSync
    JMicronATA
    LivescribeSmartpen
    SSuddriv
    Videoglide
    Airparrotdriver
    LogitechHIDDdDevices
    Logimgrdriver
    Logitechunifying
    EPSONUSBPrintclass

    I also have a question: there are also .kext files in System/Library/Extensions. Could they also cause startup problems?

    • Justin Silver says:

      Thanks for posting the additional details, that’s actually why I made this post originally when Google wasn’t returning anything for some of my specific searches. To add a few more to your list based on my upgrade to 10.11.4:

      • 360Controller
      • Wireless360Controller
      • WirelessGamingReceiver

      I also had an issue with the reboot command yesterday – it told me the disk was locked – but closing the Terminal window and selecting Reboot from the menu did the trick.

      As for the kext files in System/Library/Extensions, I don’t see why they couldn’t also cause a problem, however from my experience and what I’ve seen on the Internet it only seems to be ones in Library/Extensions.

  164. Dario says:

    Thanks a lot Justin, your help was precious. Everything works now!!!

  165. Daniel Polo says:

    Thank you very much for your post. This solve me my startup problem. Only I move the *.kext files from Target mode on other computer. Everything is working now.

  166. Sandra says:

    Hi Justin, I have the same issue. I believe I could solve it according to your instructions (as the rest of the people), though I get a “No such file or directory” when I enter “cd/Volumes/Macintosh\ HD/Library/Extensions/”. I have tried many combinations, also checked – “Macintosh HD” – mounted, unlocked and encrypted. I have no idea how to overcome it. Maybe you would have any suggestions? As it is so pitty I can not move forward with your solution…

    • Justin Silver says:

      Are you using FileFault or other encryption by any chance? If so you will need to turn it off before you can continue. You might also want to try just navigating to cd /Volumes and then type ls -la to see what files and directories are present. Good luck!

  167. Stéphane says:

    I had the same symptoms and your procedure helped me find the faulty extension (Little Snitch).
    I learned how to use the command line on the way, which I actually find fun and rewarding.
    Thank you so much for a precious help Justin !

    • Justin Silver says:

      No problem, happy to help. It’s good to hear you discovered the command line too, it can be a very powerful way to interact with a computer 🙂

  168. Paul says:

    At first this didn’t work for me. I found that my drive was locked and encrypted so was having some difficulty navigating to the correct volume. After searching around, I followed this instruction (http://superuser.com/questions/834993/unlocking-filevault-encrypted-drive-from-terminal-to-allow-pasting-password) and then re-tried Justin’s advice and worked perfectly. Thanks a lot 🙂

    • Justin Silver says:

      Glad to hear it worked for you. My system had FileVault enabled as well, but I turned it off via Recovery Mode and the DiskUtil GUI. It did report some errors at first but then seemed to sort itself out.

  169. Marcus says:

    Thank you very much Justin!

    I’m not the type of person to comment in forums, but you helped me so much, I cannot thank you enough!

    I’ve been reinstalling and migrating my system about 9 times in the past week and talked to Apple support some 8 hours+

    You were the only one with the solution.

    All the best to you!

  170. Alon says:

    Hi, I dont seem to have the “Macintosh” folder inside “Volumes”. What I do have is only a folder called “OS X Base System”. How can I continue from that?

  171. Juan S. says:

    Justin Silver thank you so much. after expending 5 hours searching and trying different methods none of them work. You fix worked like a charm. quick question do I need to move those files back to it original directory? my computer seen to be working fine. maybe a little slow but I shut it off and back on and it booted up fine.

    • Justin Silver says:

      Hi Juan, glad I could help. I removed all the kext files from my user library initially and then moved back all but the ones that were incompatible, through trial and error. If you restore an incompatible file you’ll be back where you started – unable to boot.

  172. Antoine says:

    Very interesting post. I’m having the same problem and trying to find the faulty kext file. Unfortunately I could not find any culprit, all kext files seem to be genuine Apple kext. Is it safe to put all kext file in a temporary folder just to see if the OS can boot? Thanks.

    • Justin Silver says:

      Proceed at your own risk, but that’s what I did on my system and then moved them back one at a time :/

      • Kevin says:

        Hi Justin your tips seem to ‘ve helping a lot of people. I tried doing them for my MBP but I screwed up ?. When the next files were being moved to the unsupported folder I quit terminal because I thought it was being unresponsive. Now I realized it was moving the files. When I try to do the process over again it tells me that the unsupported folder already exists. I created another folder “not supported” and tried to move them there but is says: rename *.kext to unsupported/*.kext: no such file or directory . What can I do??? Hope you can help thanks.

        • Justin Silver says:

          Hi Kevin,

          It shouldn’t take very long to copy the files, so make sure you’re in the right directory. If the Unsupported directory already exists that should be fine, just skip the “mkdir” command and proceed with the rest of the steps.

          Good luck!

        • Juan S. says:

          Kevin you are provably getting error when you try to do step 3 mkdir because that directory already exist. so you try skipping the step and you should be good. note do use the numbers – i just put it so you can see what i mean. Use the command after the – Let us know if you have any luck

          1- mount -rw /
          2- cd /Volumes/Macintosh\ HD/Library/Extensions/
          3- mv *.kext Unsupported
          4- reboot

  173. patrick Schrevens says:

    Thanks Justin you’ve helped me a lot! You rock!!!

  174. Arlac says:

    Yes actually I got it to work now. My slootiun was:Make sure USB drive partition is Active after you format to FAT32Go to CMD.exe in windows and run these commandsDISKPARTlist disk (to find the disk number of the USB drive)select disk n (n is your USB drive’s disk number)select partition 1ACTIVEit should now say your partition is active. Now run ddmac and prep the USB drive per Guillaume’s instructions.Once prepped, plug the drive in to you Wind U90. Power on, but go to your BIOS Go to Advanced tab, then down to USB settings. Find the USB drive that you have plugged in, and set it to USB Hard Disk (mine was FDD Disk as default). Save & Exit, and then boot to the USB drive when it restarts. Mine started booting at this point, no errors.

  175. I just installed El Capitan and after a day I experienced the gray screen. After hours on the phone with Apple and a visit to the Apple store, I found that there was an on going issue with the video card of my MACBOOK PRO (17-INCH, LATE 2011). Apple is repairing it for free.

  176. Luke says:

    Thank Justin, saved me too. MBP 15″ Retina. After time machine recovery of El Capitan when upgrading from a Macbook Air which I’d sold, I needed to install El Capitan again over the recovery prior to removing HuaweiDataCardDriver_10_9.kext.

  177. Alex says:

    Thanks Justin! I’ve been stuck for days trying to solve this. Did everything there was on internet (reset PRAM, SMC, Re-install, internet install, disk repair, decrypt the disk using filevault, etc…). This was the only solution that worked!!

    Thanks a lot!

  178. Lorraine says:

    OMG!!! It worked!!! Thank you. It was those *.kext that kept me up 36 hours after upgrading from Mavericks to El Capitan. I hope I can rest in peace now. Justin…..u r the best!!

  179. Max says:

    Hey Justin,

    this is just great! I have tried so many things, to get it allive but nothing worked for me. Except your instructions 🙂

    Thank you so much!

    Greeting from Germany

  180. Mo maged says:

    Man you made my day, thank you very much.

  181. M. Lombard says:

    well done and thank you

  182. Francisco Aguilar says:

    FINALLY!
    i tried everything i found on google and forums your solution works perfect!
    i did it on Single User Mode
    Thanks so much!

    • Justin Silver says:

      Excellent, I’m glad you got it working. Definitely stressed me out until I figured it out for my laptop 🙂

  183. PrairieDad says:

    Your set of musings/instructions is really first rate, an excellent examplar of how to troubleshoot. Against my better judgement, and in a hurry, I updated my son’s MBP (mid 2012) from 10.8.5 to 10.11.2. Natch, it didn’t work…nor go into safe-boot. So, into Recovery I went, and moved only those extensions to Unsupported that you hadn’t ultimately (and successfully) moved back in your description above. BUT, still no luck, indeed, the bar went less far than it had done. Fortunately, you still provided the key (to me and anyone who reads closely)…I went to Logs, found the latest crash report, and lo and behold it turns out that an extension I’d stuck in Unsupported was needed…so I moved it back, and am looking proudly at El Capitan now. Many thanks, you’ve made a friend and supporter/promoter.

    • Justin Silver says:

      Glad to point you in the right direction! It sounds like El Capitan is pretty particular when it comes to kernel extensions.

  184. Clanker Jones says:

    Hey justin, i have the same problem, but it’s unclear to me because the only valid command is the mount -rw working, the rest of the command are invalid, can you help me out? Can i skype you? I’m dj amd producer amd my hole life is in there, and saturday i’m gig’n, i really need to fix this, please get back to me!

    • Justin Silver says:

      Hi Clanker, I feel your pain – I’m a developer so having a computer is pretty important for me too. I’m going to be out of the country as of this weekend and am rushing to finish a bunch of stuff but will help if I can. When you say that the only valid command is mount, are you not able to run ls, mv, mkdir, etc? That should be all you need to move the kext files to a new location so that they don’t load. If you can send the exact output you get when you try to run the series of commands in the post it might point to the issue.

  185. Klaus says:

    Thank you so much for this post. After consulting two times the Apple Care hotline, – they gave up, – after 20 hours, — and recommended I should visit a local service point to reinstall my hard drive.
    Thrn I found your post, and the easy to handle instructions how to remove the incompatible .kext files. (In my case it were two outdated HP printer driver files, and two files named klif.kext and klnke.kext). I only moved these 4 files, as all others were those in your list not causing problems.
    Reboot. El Capitan finished installation and started!
    Super!

    • Justin Silver says:

      Awesome, glad I could help!

      • Clanker Jones says:

        Hey Justin, i have the same issue but nothing seems to work, maybe i’m not doing it right, please can you get back to me, it’s a matter of life and death to me, i have everything in there, i’m a dj and producer, it’s really important to have this fixed by saturday, please help me!

  186. Kenny says:

    Which text editor is this in those images?

    • Justin Silver says:

      Hi Kenny – those aren’t images, they are styled text (better for search engines and copy/pasting). I’m using the SyntaxHighlighter Evolved plugin and the monokai theme, though FWIW I use Sublime Text as my editor with the monokai theme and it looks the same.

  187. Pawel Niemiec says:

    Hi,
    This workaround works perfect, thanks for posting that. However there is still an issue. After rebooting and starting the system deleted libraries comes back. How you got any idea how to remove them permanently?

    • Justin Silver says:

      It sounds like they are being restored from a cache of some kind. Depending on the specific extensions you had to remove, you could try uninstalling the software that loaded them in the first place once you’ve booted. You could also try the Kext Utility – it should be able to go through and clean up all the permissions, caches, etc. One other option is to either try to remove the cache manually or use a tool like Onyx to clear them.

      Good luck!

  188. Daniel says:

    Thank You! Have been lurking around on apple support forums and found almost same info, but less informative, here it’s very useful!
    BUT I have a bit different situation, maybe you can help me on that, or give a better advice?
    MBP retina 15 2012(mid) , updated – then stuck, but(!) had something like that before , with Yosemite and prev. OSX ver.
    I dunno what exactly could it be but things got worsen for me during Yosemite, I upgraded with problems but uprgraded, then – I forgot (completely) my password and had to overran a system ( reinstall or smth like that) do not remember exactly ><
    Soo, well the plus is i'm writing that from Windows 10 Pro (which is AWEEESOME and FLAWLESS after El Captain) in Boot Camp, trying to sort out the things with Kext..
    Any advice? Suggestions??

    • Justin Silver says:

      Hi Daniel, I’m sorry but I’m not that familiar with the scenario you described. If you do a full reinstall it should overwrite everything, including the kext files, as well as reset your password. I think there is a way to do a password reset via recovery mode as well (as long as you don’t have FileVault turned on, then it’s encrypted).

  189. Hi —
    Could someone have a look at my kext – list – Which ones might not be compatible with El Capitain..

    or how do i find out ?

    ACS6x.kext
    ATTOCelerityFC8.kext
    ATTOExpressSASHBA2.kext
    ATTOExpressSASRAID2.kext
    ArcMSR.kext
    CalDigitHDProDrv.kext
    DisplayLinkDriver.kext
    DisplayLinkEthernetDriver.kext
    HDSPMADI.kext
    HighPointIOP.kext
    HighPointRR.kext
    PromiseSTEX.kext
    SoftRAID.kext
    Unsupported
    find: Library/Application Support/Apple/ParentalControls/Users: Permission denied
    Library/Application Support/Blackmagic Design/Blackmagic DeckLink/Unsigned Extensions/Blackmagic_Multibridge_Driver.kext
    Library/Application Support/Blackmagic Design/Blackmagic DeckLink/Unsigned Extensions/BlackmagicIO.kext
    Library/Application Support/Blackmagic Design/Blackmagic DeckLink/Unsigned Extensions/BlackmagicUsbIO.kext
    Library/Application Support/Blackmagic Design/Blackmagic DeckLink/Unsigned Extensions/DeckLink_Driver.kext
    Library/Application Support/Blackmagic Design/Blackmagic DeckLink/Unsigned Extensions/DeckLink_Driver.kext/Contents/PlugIns/DeckLink_File.kext
    Library/Application Support/Blackmagic Design/Blackmagic DeckLink/Unsigned Extensions/DeckLinkFrameBufferDriver.kext
    Library/Application Support/IPNetRouterX/HelperTools/IPNetRouter_TNKE.kext
    Library/Application Support/IPVanish-OpenVPNHelper/bin/tap.kext
    Library/Application Support/IPVanish-OpenVPNHelper/bin/tun.kext
    Library/Application Support/VirtualBox/VBoxDrv.kext
    Library/Application Support/VirtualBox/VBoxNetAdp.kext
    Library/Application Support/VirtualBox/VBoxNetFlt.kext
    Library/Application Support/VirtualBox/VBoxUSB.kext
    Library/Filesystems/fusefs.fs/Support/fusefs.kext
    Library/Filesystems/fusefs_txantfs.fs/Contents/Resources/Support/10.4/tufs/tufsfs.kext
    Library/Filesystems/fusefs_txantfs.fs/Contents/Resources/Support/10.5/tufs/tufsfs.kext
    Library/Filesystems/fusefs_txantfs.fs/Contents/Resources/Support/10.9/tufs/tufsfs.kext
    Library/Filesystems/osxfusefs.fs/Support/osxfusefs.kext
    Library/Filesystems/prlufs.fs/Support/prlufs.kext
    System/Library/Extensions/3Dconnexion.kext/Contents
    System/Library/Extensions/AlesisFirewire.kext/Contents
    System/Library/Extensions/AuthenticationSupport.plugin/Contents
    System/Library/Extensions/AuthenticationSupportEnabler.plugin/Contents
    System/Library/Extensions/EyeTVAfaTechHidBlock.kext/Contents
    System/Library/Extensions/EyeTVCinergy450AudioBlock.kext/Contents
    System/Library/Extensions/EyeTVCinergyXSAudioBlock.kext/Contents
    System/Library/Extensions/EyeTVEmpiaAudioBlock.kext/Contents
    System/Library/Extensions/EyeTVVoyagerAudioBlock.kext/Contents
    System/Library/Extensions/IOAudioFamily.kext.bak/.DS_Store
    System/Library/Extensions/IOAudioFamily.kext.bak/Contents
    System/Library/Extensions/OSCulatorIOKit.kext/Contents
    System/Library/Extensions/PACESupportFamily.kext/Contents
    
    • Justin Silver says:

      I can’t say for sure, but I heard that some people had issues with VirtualBox, but some others that stand out are the unsigned “Blackmagic DeckLink” kexts, possibly the OpenVNP extensions. You can always rename them to *.kext.bak first to see if it will boot. If it does, try to find updated drivers (it looks like Blackmagic released a bunch of new software recently).

  190. Pawel says:

    Thanks for that!

    Really good input, helped at once.

    Br,
    /Pawel

  191. Aditya says:

    Hi Justin,

    Thanks for your prompt response. However, there was one more thing I forgot to mention that the whenever I reboot/restart I get the same problem and have to do all the steps you mentioned everytime. Is that an issue you get.

    Do you recommend I download the Update again after backing up my data ?

    Thanks again for your help.

    • Justin Silver says:

      I only had to remove the incompatible kext files once, and then they were gone upon rebooting. It sounds like you may have some kind of protection enabled where the files are restored. If you haven’t tried running Kext Utility I would give that shot, otherwise a reinstall might help, or do some research on “kext caching” or similar to find out why the files are coming back. Good luck!

  192. Aditya says:

    Thanks for your help . It was very helpful .
    However , as a result it seems I am unable to mount any external hard drive .

    • Justin Silver says:

      Glad to help, sorry to hear you can’t mount external drives. I would guess this is a related but different issue, I haven’t had any issues with external drives (but I did have to delete all my Bluetooth plist files yesterday to get it to connect to my speakers reliably).

      A quick search pulled up this which looks useful: https://discussions.apple.com/thread/6609042. I actually do have Kext Utility and ran it on my system recently, so I would give that a shot. There are other troubleshooting steps in that post as well. Good luck!

  193. MarkB says:

    Thanks Justin, you are a frickin’ genius!!!! I had tried everything, and went to dozens of sites looking for answers, but you were the only site I found that had clear, easy-follow directions. Thank you thank you thank you!!!!!

    • Justin Silver says:

      Glad I could help 🙂

      • Danny says:

        I second MarkB’s praise. Thanks! I did not know of single user mode, nor would never have thought to move my extensions into Unsupported to troubleshoot. I also had fun looking through my Diagnostics reports. Where did you learn this mac wizardry??

        • Danny says:

          I’ll add that, for me, moving my extensions to Unsupported allowed me to boot once. I then restarted to see if all was well, and it would not restart correctly (gray screen). I noticed a crash report from Flux about a month back in my Diagnostic Reports, so thought Flux could be the culprit. I booted into recovery mode, opened terminal, deleted the Flux app, and was able to restart. I upgraded all my software, including 10.11.1 to 10.11.4, and things are working fine now. Haven’t yet tried to reinstall Flux or move any extensions out of the Unsupported folder.

  194. Nana says:

    Hi Justin sorry am being a bother but I have tried all the commands but unfortunately not making any head way.

    I just run cmd+v and the last line I get is
    Unexpected payload found for message 9 datalen 0
    Standing by on what to do next ???

  195. Nana says:

    Hi am having the same problem but unfortunately am not good at using terminal commands.

    Can you please send me step by step terminal commands on how to do what you have recommended

    Thanks

    • Justin Silver says:

      Hi Nana,

      If you are having the same problem I was the cause is incompatible kernel extension files which have the extension *.kext. In my case it was some Logitech files, but it could be a different filename in your case. This is the step by step process I took.

      1. Reboot into Recovery Mode by holding Cmd+R before you hear the chime while starting, keep holding while it boots.
      2. You should see a prompt asking you to choose a language, then you are in Recovery Mode.
      3. From the file menu at the top choose Utilities, then select Terminal.
      4. In Terminal you need to use cd to change directories to your extensions folder, then use mkdir to make a new directory called “Unsupported”.
        cd /Volumes/Macintosh\ HD/Library/Extensions/
        mkdir Unsupported
        
      5. From here you can use ls to list the files in the directory. Refer to the article and the list of extensions on my system – if they are in the list then they are probably fine. Anything that isn’t in the list might be the culprit, so you can move it to the Unsupported folder with the mv command. Replace “Filename.kext” with the name of the kext file you want to move.
        mv Filename.kext Unsupported
        
      6. After the kext files you suspect are causing an issue have been moved to the Unsupported folder type “reboot” to restart the system.

      Good luck!

      • Nana says:

        Hi Justin I typed in the cd/Volumes ……….. but I got NO SUCH FILE OR DIRECTORY

        Can I please get your email address or Skype my username name is kwabesei

        • Nana says:

          When I type in mkdir unsupported it responds with read-only file system

          • Justin Silver says:

            Sorry, I’m in the middle of moving so I can’t do Skype at the moment. Forgot to mention that you need to mount the filesystem as read/write by typing:

            mount -rw /
            
  196. Nejat says:

    Thank you very much for detailed explanation.You saved my week.:))

Leave a Reply

Your email address will not be published. Required fields are marked *