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

If your OS X El Capitan/Sierra/High 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.

Update 1/18/2018 – I updated to 10.13.3 High Sierra Beta 5 and once again was unable to boot. I am using the Beta version because 10.13.2 had very high CPU usage by the WindowServer process that was fixed in 10.13.3. Before I knew this I installed Malwarebytes to check for spyware/adware causing the CPU usage, then uninstalled it after installing the OS X beta. It seems to have left behind a kext named com.malwarebytes.mbam.rtprotection.kext and once I deleted it, things work again.

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

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

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; 


Incompatible OS X 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...

436 Responses

  1. Eduard Pozuelo says:

    Thank you mate, you are great!

  2. Guille says:

    Thaaaaaanks!!!!! lol

  3. Carl Arrowsmith says:

    A massive thank you, thank you, thank you. After trying lots of stuff over several hours your “Script to Disable Non-Default Kext Files” worked great and the instructions were perfect.

  4. Luke Dubber says:

    thank you for saving my hide! you’re a legend. stupid drivers!

  5. L says:

    Oh, I don’t know how to thank you. You just saved my life. Your article and your code are SOOO helpful, I ran it, and now my computer is back to normal, I thought I lost everything. Thank you so much.

  6. Ivan says:

    Justin, YOU just ROCK! Thank you so much fot taking the time to share these lifesaving informations. Another desperate vintage Mac user.

  7. Manish says:

    Hi Justin
    I also have a similar problem and I tried how you have explained above. I still get the AWDLPeermanager is restarting. I did everything you said using single user mode terminal but still not working. Anything I missed. Thanks a lot

  8. Frederik says:

    Justin, let me just join the stream of comments here and say THANK YOU! I was starting to panic as I couldn’t get my machine to boot. But after moving the kernel extensions to a separate folder as you suggested I can at last write this message from my laptop!

  9. Robert Habolin says:

    Thank you so much for this solution!!!! My late 2015 model froze on reboot from installing Epson Printer drivers. Endless loop and wouldnt start, this fixed it.
    I have actually done a similar thing before when my older MacBooks GPU kicked it, thankfully they had dual graphics chips so in a similar fashion in Verbose mode i had to create a new folder manually and move GPU drivers to disable the faulty GPU on startup. Just like this script move the bad kexts. Fantastic, thank you so much! I thought i was going to have to bake my motherboard in the oven again.. lol ( actually a legit way to reflow dead GPUs ) but thankfully this wasnt hardware related.

  10. Frank says:

    my mac pro had kernel panics and was endlessly restarting.
    just finished chatting with apple support and they said it was a hardware issue.

    I ran the script in recovery mode and that solved it!
    Awesome fix! Thank you!

  11. Indra Aji Wiratama says:

    Everytime i type anything it always be “no such file or directory”. I don’t use ane quotes, and why is your terminal looks blue and mine is white? Any part that I miss?

    • User Avatar Justin Silver says:

      If you have any spaces in the path you have to escape them or put the entire thing in quotes. The “terminal” on my site isn’t a screenshot it’s styled text so that it can be found via search engines.


  12. Life saver, thank you so much!

    I came here because my Mojave was stuck in “Attempting system restart… MACH reboot”. Hope this comment also helps others (Apple support included) find this post faster/easier in the sea of hackintosh posts that get in the way.

    Again, many thanks!

    BTW: mine was a kext related to HP printers.

  13. RA. Lucas says:

    Hey Justin,
    Thanks for this, I was suspecting a bad kext after I installed a new driver for a usb ethernet adapter. One thing I wanted to mention is I’m on High Sierra and the Macintosh HD for me wasn’t initially mounted, so to mount it I first had to go into the Disk Utility where I could mount the Macintosh HD. I suspect this is due to password protection. Hope this helps someone else out there. Best and thanks!

  14. Matt M says:

    Thank you so much! You saved me. I knew my problem was related to Logitech, as installing an update and (attempting) rebooting is what lead to my computer being bricked. But I wasn’t sure how safe it was to start deleting every instance of Logitech in my already seemingly damaged OS. Your guide helped me do it safely and confidently.

    I’m eternally grateful. I had work that I would not have been able to retrieve through Target Disk Mode (xampp is weird) and you helped me get back all of my hard work!

  15. Roy says:

    Hi, could you please help? I”m using this method to update from Yosemite to El Capitan. But it doesn’t work 100% for me. My PC is bootlooping.
    PC Specs:
    Mobo H61 Gigabyte GA-Z77X-D3H
    Ram 16GB
    i5 Intel Processor 3.9Ghz
    HDD 2TB non SSD
    Ext VGA Geforce 730

    What should I do now?

    • User Avatar Justin Silver says:

      Hi Roy,

      If your system is bootlooping it could be a variety of issues. I would recommend calling Apple Support or going in to a store to see if they can help troubleshoot. Good luck!

  16. Ambrogio says:

    Thank you so much!!! You saved me 🙂

  17. Theo says:

    Hi Justin, I’m hoping you could help me out. When I’m using terminal in recovery mode it is telling me that cd /Volumes/Macintosh\ HD/Library/Extensions/ is not a directory. I am able to login to a backup admin account but not my main account and using terminal on the backup it tells me that it is a directory. I can’t move forward with the guide at this stage and really need access to my main account! please help!!!

    • User Avatar Justin Silver says:

      Hi Theo,

      Did you rename you hard drive by any chance? If so you will need to use it to access your drive, assuming it is mounting properly. You can check to see what is in the Volumes directory by typing cd /Volumes and then ls -l to list the folder contents. If you see a match for your drive here replace “Macintosh HD” with that name and then proceed with everything else the same.

      Good luck!


  18. Ashley says:

    You are a life saver!! Quite literally wasted days on this and I had invoices to send out. Thank you very much.

  19. Jake C says:

    This article was very useful, but when I navigate to my extensions, it won’t let me make a directory. It reads back ‘mkdir: Unsupported: Unknown Error: -32730.’ Any help would be much appreciated.

  20. Lawrence says:

    OMG! you wizard! 🙂
    Ive been using with an old 3.1 and just installed bootcamp Win10. All was working fine until i decided to install an OWC PCIE SSD to run windows with dualboot. Windows was behaving fine, but when i rebooted to MAC, ta.ta…. and nothing! none of the standard things fixed it (Safe, Verbose, Single, PRAM, SMC flashing.etc..). i reinstalled IOS on a usb and while it was reinstalling, i saw your post. I rebooted to Recovery mode, went to terminal and found a OWCdualboot.kext. I promptly removed it….and i knew it was going to be fine. i entered the reboot command and……VOILA!!!!! 🙂 This step should be in EVERY manual or webpage for MAC reboot issues…. thx man!

  21. keltbrat says:

    Can i just add my appreciation for this fix. Thank you Justin. i was at my wits end after 24 hours in total researching a fix for my “stalling @ boot up” problem. booting up in recovery cmd +R then into terminal and inputing:

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

    it rebooted and everything is back to normal.

  22. HB says:

    This is fantastic. Thank you Justin , you saved me. I was about to reinstall my OS

  23. alex says:

    thank you!!!

  24. Michalis says:

    Justin, my name is Michalis from Greece. You saved me big time!!!! all my critical files were saved! i called Apple and couldnt do anything. they told me to format it. I didnt loose my hope and started researching again, until i saw your link. You are the best:)))

    • User Avatar Justin Silver says:

      Really happy to help! I probably don’t need to say it but now is a good time to buy an external drive to use with Time Machine for backups 🙂

      • Alessia says:

        Please please please help, I have tried this method once befor and it worked perfectly, now get this message: /Volumes/Macintosh HD/Library/Extensions/: No such file or directory

        • User Avatar Justin Silver says:

          Hi Alessia – are you using quotes around the path? If so make sure you are accessing it with the correct name, etc. You can try running First Aid too from Disk Utility in case there are errors on the drive. Good luck!

  25. You’re the man. I migrated from a Hackintosh to a Macbook Air, and apparently using Migration Assistant to migrate applications will copy kexts too. Thank you!

  26. Jon says:

    Hey, thanks for the continually updated post!

    I’m definitely still getting this issue, though.

    How did you know which System kext files to move?

    I don’t seem to have any before 2017 on mine, but I’m still getting the hang up after trying these steps. I’m thinking I should just back up my files and try a fresh install or take it into the shop.

    I’m getting the same pci: pause error as you on start up as well. I’m running the High Sierra update. I completely renamed the Extensions folder so there shouldn’t be any kexts running outside of the system ones.

    Here’s a list of them (not that I expect you to sort through them, I just have no idea which ones are needed for basic functioning).

    -bash-3.2# ls -lat /System/Library/Extensions/
    total 0
    drwxr-xr-x    6 root  wheel   204 Jan 19 07:24 IONDRVSupport.kext
    drwxr-xr-x    6 root  wheel   204 Jan 19 07:24 IOPCIFamily.kext
    drwxr-xr-x    6 root  wheel   204 Jan 19 07:24 AppleBacklightExpert.kext
    drwxr-xr-x    7 root  wheel   238 Jan 19 07:24 IOGraphicsFamily.kext
    drwxr-xr-x  221 root  wheel  7514 Jan 19 07:22 .
    drwxr-xr-x   38 root  wheel  1292 Jan 19 07:22 ..
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:20 AppleKeyStore.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:20 AppleFDEKeyStore.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:19 AppleEffaceableStorage.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:19 AppleEffaceableNOR.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:18 AppleTopCase.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:18 AppleGraphicsPowerManagement.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:18 AppleIntelPCHPMC.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:18 AppleLPC.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:18 AppleTyMCEDriver.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:17 AppleHIDMouse.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:17 AppleHIDKeyboard.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:17 AppleBluetoothMultitouch.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:17 AppleStorageDrivers.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:16 AppleWWANAutoEject.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:16 IOPlatformPluginFamily.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 IOBluetoothHIDDriver.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 IOBluetoothFamily.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 AppleUSBNetworking.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 AppleUSBEthernet.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 AppleUSBCDC.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 AppleUSBECM.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 AppleUSBNCM.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 AppleUSBACM.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 AppleUSBDMM.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 AppleUSBWCM.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 IOUSBAttachedSCSI.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 IOUSBMassStorageClass.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 AppleUSBEEM.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 AppleOSXUSBNCM.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 IOUSBFamily.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:15 IOSerialFamily.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:14 AppleCredentialManager.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:14 AppleUSBAudio.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:13 AppleUSBFTDI.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:13 AppleUSBMultitouch.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:13 CellPhoneHelper.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:13 AppleUSBTopCase.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:13 IOUSBMassStorageDriver.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:13 AppleIRController.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:13 AppleUSBDisplays.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:12 IOAVBFamily.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:11 AppleACPIPlatform.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:11 AppleMikeyHIDDriver.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:11 IOUSBHostFamily.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:11 AppleHSSPIHIDDriver.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:11 AppleHSSPISupport.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:11 IOTimeSyncFamily.kext
    drwxr-xr-x    3 root  wheel   102 Jan  9 00:10 IOHIDFamily.kext
    drwxr-xr-x    3 root  wheel   102 Jan  2 00:23 smbfs.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMDRadeonX5000HWServices.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD10000Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD5000Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD6000Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD7000Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD8000Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD9000Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD9300Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD9500Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD9510Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD9515Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD9520Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMDFramebuffer.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMDSupport.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD2400Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD2600Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD3800Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD4600Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMD4800Controller.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMDLegacyFramebuffer.kext
    drwxr-xr-x    3 root  wheel   102 Dec 21 01:33 AMDLegacySupport.kext
    drwxr-xr-x    3 root  wheel   102 Dec 20 05:09 AppleIntelKBLGraphicsFramebuffer.kext
    drwxr-xr-x    3 root  wheel   102 Dec 20 05:09 AppleIntelBDWGraphicsFramebuffer.kext
    drwxr-xr-x    3 root  wheel   102 Dec 20 05:09 AppleIntelFramebufferAzul.kext
    drwxr-xr-x    3 root  wheel   102 Dec 20 05:09 AppleIntelFramebufferCapri.kext
    drwxr-xr-x    3 root  wheel   102 Dec 20 05:09 AppleIntelSKLGraphicsFramebuffer.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 18:00 acfsctl.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 18:00 acfs.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:51 apfs.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:42 AppleIntelHDGraphicsFB.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:42 AppleIntelSNBGraphicsFB.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:42 NVDANV50HalTesla.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:42 NVDAResmanTesla.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:39 AppleRAIDCard.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:39 AppleLSIFusionMPT.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:38 AppleHPM.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:37 AppleThunderboltUTDM.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:37 IOFireWireSerialBusProtocolTransport.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:37 IOSCSIParallelFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:37 Quarantine.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:37 AppleHDA.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:36 AppleIntelLpssSpiController.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:36 AppleIntelLpssDmac.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:36 AppleIntelLpssGspi.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:36 AppleIntelLpssI2CController.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:36 AppleIntelLpssI2C.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:36 AppleIntelLpssUARTCommon.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:36 AppleIntelLpssUARTv1.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:36 AppleIntelLpssUARTv0.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:36 AppleGraphicsControl.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:35 IOSCSIArchitectureModelFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:35 IOAudioFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:34 Sandbox.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:34 IOAcceleratorFamily2.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:34 IONVMeFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:34 IOUserEthernet.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:34 AppleOnboardSerial.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:33 IOBDStorageFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:33 AppleSMCLMU.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:33 AppleBusPowerController.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:33 SMCMotionSensor.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:33 vecLib.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:33 AppleBacklight.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:33 AppleMCCSControl.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:33 AppleSEPManager.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:33 Dont Steal Mac OS X.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:32 AppleThunderboltEDMService.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:32 AppleCameraInterface.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:32 IONetworkingFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:32 Apple16X50Serial.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 IODVDStorageFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 cddafs.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 AppleThunderboltIP.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 IOFireWireIP.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 IOSkywalkFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 AppleSDXC.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 Apple_iSight.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 AppleSMC.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 NVSMU.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 IOATAFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 AppleAHCIPort.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 AppleSMBusController.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 AppleThunderboltPCIAdapters.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:31 AppleSMBusPCI.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:30 AppleMCP89RootPortPM.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:30 AppleThunderboltNHI.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:30 AppleAPIC.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:30 AppleOSXWatchdog.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:30 IOFireWireFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:30 AppleThunderboltDPAdapters.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:29 IOAHCIFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:29 IOHDIXController.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:29 AppleMobileFileIntegrity.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:29 CoreStorage.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:29 AppleFileSystemDriver.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:29 AppleRAID.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:29 IOCDStorageFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:28 AppleXsanScheme.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:28 IOVideoFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:28 AppleIntelSlowAdaptiveClocking.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:28 AppleEmbeddedOSSupportHost.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:28 AppleFIVRDriver.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:28 AppleHPET.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:28 AppleRTC.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:28 AppleSmartBatteryManager.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 Libm.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 EAP-KRB.ppp
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 HFS.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 EAP-TLS.ppp
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 HFSEncodings.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 pthread.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 udf.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 AppleSRP.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 AppleIntelMCEReporter.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 IOReportFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 webdav_fs.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 AppleMatch.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:27 corecrypto.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 mcxalr.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 autofs.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 ALF.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 triggers.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 IOBufferCopyEngineFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 corecapture.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 AppleHWSensor.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 OSvKernDSPLib.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 IOStorageFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 webcontentfilter.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 AppleIntelCPUPowerManagementClient.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 AppleInputDeviceSupport.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 IOSurface.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 AppleSMBIOS.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 IOACPIFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 IOSMBusFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 IOSlowAdaptiveClockingFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 TMSafetyNet.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 ntfs.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 BootCache.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 pmtelemetry.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 IOStreamFamily.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 exfat.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 AppleFSCompressionTypeDataless.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 cd9660.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 msdosfs.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 AppleEFIRuntime.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 AppleFSCompressionTypeZlib.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 AppleIntelCPUPowerManagement.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 ApplePlatformEnabler.kext
    drwxr-xr-x    3 root  wheel   102 Dec 17 17:26 AppleHV.kext
    drwxr-xr-x    6 root  wheel   204 Dec 17 17:22 System.kext
    drwxr-xr-x    3 root  wheel   102 Nov 15 00:49 AppleKextExcludeList.kext
    drwxr-xr-x    3 root  wheel   102 Nov 10 00:35 AppleMultitouchDriver.kext
    drwxr-xr-x    3 root  wheel   102 Nov  1 01:38 AppleVADriver.bundle
    drwxr-xr-x    3 root  wheel   102 Nov  1 01:19 IOAccelerator2D.plugin
    drwxr-xr-x    3 root  wheel   102 Oct 26 21:38 NVMeSMARTLib.plugin
    drwxr-xr-x    3 root  wheel   102 Oct 25 23:13 NVDAGF100Hal.kext
    drwxr-xr-x    3 root  wheel   102 Oct 25 23:13 NVDAGK100Hal.kext
    drwxr-xr-x    3 root  wheel   102 Oct 25 23:13 NVDAResman.kext
    drwxr-xr-x    3 root  wheel   102 Oct 25 23:13 NVDAStartup.kext
    drwxr-xr-x    3 root  wheel   102 Oct 23 18:52 IOThunderboltFamily.kext
    drwxr-xr-x    3 root  wheel   102 Oct 11 00:06 EAP-RSA.ppp
    drwxr-xr-x    3 root  wheel   102 Jul 15  2017 AppleFWAudio.kext
    drwxr-xr-x    3 root  wheel   102 Jul 15  2017 PPPSerial.ppp
    drwxr-xr-x    3 root  wheel   102 Jul 15  2017 SMARTLib.plugin
    drwxr-xr-x    3 root  wheel   102 Jul 15  2017 IOFireWireAVC.kext
    drwxr-xr-x    3 root  wheel   102 Jul 15  2017 IOFireWireSBP2.kext
  27. H says:

    Just wanted to warn anyone that this issue is still persistent and I was able to replicate this problem several times after installing Logitech Gaming Software (Mac) version 8.96.38. After I bought my G502 and wanted to install the software in my Mac, it would constantly lock up my laptop during it boot sequence.

  28. Maeve says:

    Justin, thank you so much! I ran into this exact problem after approving third party kernel extensions in System Preferences > Security & Privacy per this article: https://developer.apple.com/library/content/technotes/tn2459/_index.html

    The two KEXT files that I authorised were for VirtualBox and Logitech. Common culprits, it seems. *facepalm* Double whammy.

    Thank you for unbricking my Mac! Really appreciated.

  29. Djxandros says:

    Hi, it’s crazy with all letters… my Mac no turn on.. help me please

  30. Roberto says:

    That fixed it after a year of trying everything!!! Thanks

  31. Pakin says:

    Brilliant, big thx!

  32. Tom Smith says:

    Dear Justin,
    Thank you so much for giving such detailed and well researched instructions, you have clearly helped a great number of people.
    I am attempting to restore an image of Time Machine back to my mac, as I need all my IMAP folders and emails back, the server does not have them. Once I have the emails i can re-upload them to a new server.

    Using Migration Assistant and V3 folder restore do not work as in both instances it attempts to rebuild these folders and the nature of GMAIL is that the subfolders are merely linked by a relationship to the All Mail folder and as such appear empty when restored this way. The only solution is a 1:1 image restore via Time Machine through CMD+R at startup.

    When I restore this image via CMD+R it runs the GUI successfully, then tells me ‘system must reboot’ then I get the Apple logo and the progress bar hangs once it gets to the very end. I have run all of your scripts in terminal to no avail, the same issue. My HD is called Macintosh HD. I have tried both copying and pasting and typing out the commands being careful to add a ‘\’ next to ‘Macintosh’.

    The image is based on El Capitan. I did also wipe Macintosh HD via Disk Utility before the restore. This is my third, unsuccessful attempt. Do you have any suggestions?

    Kind Regards,


    • User Avatar Justin Silver says:

      Hi Tom,

      If you press CMD+S and it stops on “pci pause: SDXC” then it could be an incompatible kext file. Since you have a backup to restore from you can be a little more aggressive and just try to delete them all to see if it will start? If you just need to get your mail folder back, you could also use the Restore mode to navigate to the mailbox folder and copy it to a USB drive (or the Internet) then use that to get the IMAP data, for example if you use Mail – https://www.lifewire.com/find-and-open-stored-attachments-1172808

      Good luck!

      • Tom Smith says:

        Yes it does stop on that. How do I go about deleting these?

        I can restore the mail folder back but as I alluded to the problem is that Gmail stores all the emails in a folder called All Mail. Then the emails in subfolders (an organisational structure I am keen to preserve) are merely linked via the database in the mbox folders. They are not actually stored at a finder level in their relevant subfolder as they appear on the server / mail sidebar.

        If you restore the folder Apple Mail recognises this and attempts to rebuild everything, which it does successfully, except for linking the emails from All Mail to their corresponding Subfolder such as Income, Revenue, Tax etc. My only chance therefore, as Apple on the phone agree, is restoring the image as that way the computer will be exactly how it was when it was last backed up – i.e all subfolders populated and no requirement to rebuild Apple Mail.

        Most grateful for your response!



        • User Avatar Justin Silver says:

          Unfortunately I don’t have any recommendations for cleaning up kext files outside of what is in the post above. Make sure that you check both the typically extensions folder as well as the systems folder. Good luck!

  33. Victor says:

    you just saved my life. thank you.

  34. Jota Oliveira says:

    Hi there, how are you? Can someone please take a look and comment at this topic of mine? I can’t recover from this… I deleted a kext and the Mac won’t boot now.


    Best regards.

    • User Avatar Justin Silver says:

      Hi Jota – do you have a copy of the kext you deleted? You should be able to boot into Recovery Mode and replace the file from an external source (or the Internet) from there.


  35. Memo says:

    Thank you so much 🙂

    My iMac wouldn’t start after installing Logitech Gaming software, so I moved three logitech kext files, and after that everything has been working. The logitech software even works without the kext files.

  36. Waseem says:

    Thanks a tonne Justin! I am glad i found your post.This really saved my life. I had no back up in place.
    So here’s the story and I hope it help someone else.
    I am running High Sierra 10.13.2, on a Macbook Pro Mid 2012.
    I use a Audio Interface/Recorder Zoom R24 to connect to my recording software Ableton Live Suite.
    High Sierra seems to have some inherent problem with Ableton. There is a constant hiss/whitenoise no matter how much you adjust the gain, levels and recording volumes. Everything was fine otherwise. I guessed there was a problem with my Zoom driver. I upgraded from V 1.6 (working fine) to V 2.1.0.
    . Installation done and i hit reboot. Reboot status was 100% but nothing after that.
    I did the usual NVRAM reset, First Aid Partition check in recovery mode, SMC reset and so on.
    Then I had to research more, I did not want to risk a Recovery via internet or a re-install. Finally your solution came to my rescue. I moved the kext files and rebooted. It worked.
    Finally,strange as it may seem, i was not able to boot to Safe Mode at all. Could you comment on that?

    • User Avatar Justin Silver says:

      Hi Waseem – I was also unable to boot into Safe Mode, my guess is that the some kernel extensions are low level enough that they are loaded even when booting into Safe Mode. Recovery Mode uses an entirely different partition so it will still work. Glad you got things working!

  37. ArishG says:

    Thanx, I moved the newly installed epson driver according to your help and now its good. Thanx again.

  38. Thank you!

    Deleting the kexts (kernel extensions) unblocked my upgrade from El Capitan to High Sierra.

    • User Avatar Justin Silver says:

      Great to hear – you usually don’t need to delete all of the kernel extensions and some are necessary for certain pieces of software to function so if you don’t want to figure out the ones that are incompatible you might need to reinstall some of your applications. Cheers!

      • Makint says:

        Hi Justin,
        I’ve followed the instruction for the terminal the kernel extension into disabled folder then code returned a completed message. I shutdown and restarted my MacBook Pro but no progress.

        Any other advice ?

        • User Avatar Justin Silver says:

          Hi Makint, check the system kernel extensions as well, but it is possible you have another issue. I would recommend going through the steps again to make sure everything worked, unfortunately I don’t have any other suggestions right now. Good luck!

  39. Elisa says:

    Thank you for this great article, I had the same problem after an update that was downloaded and probably installed against my will! (I never accepted to do it…)
    But sadly the solutions you provided didn’t work for me, or anything else I found on the web. I ended up doing a clean install….
    I’m very angry against Apple and I don’t know where to turn to complain but thank you again for this article, I felt a bit less alone!

    • User Avatar Justin Silver says:

      Hi Elisa – I have had my computer autoupdate as well, often not so smoothly and nearly always inconveniently timed. Sorry to hear you had to do a clean install but glad you were able to get it working at least! The first time I did this I took it as a less/warning to be better about backups so I would recommend getting an external drive to use with Time Machine to protect yourself in the future. Good luck!


  40. Jevon says:

    Hi All,

    Thanks for all the replies and suggestions, its indeed super helpful in saving the macbook without reinstalling. I just want to add on some details incase some of you have the same issues as me. The primary issue is indeed a malfunctioning Kext file. To resolve is to simply move the files to another folder and try starting up. Moving non-familiar kext to the system is sufficient. Now here comes the tricky part. For some of us , our logical volumes are encrypted and for some of us like me , we will be stuck on trying to find out which kext files as non-familiar on a volume that is the recovery volume. What we need to do is to mount our logical volume. To ascertain if you need to do that , start system in recovery as per instructions :

    1. command + R while powering up to reach recovering mode.
    2. Login as per normal and start Terminal
    3. at the bash command prompt type : diskutil list
    4. you should see the a list of /dev/disk. if you have an offline disk which is listed as encrypted . That will be your logical volume.
    5. type in diskutil corestorage list
    6. a list of corestorage logical volume group will be shown.
    7. Look for the information Logical Volume with a string of UUID (e.g., Logical Volume 43E6C312-24EA-4987-AA65-FB517AA966AD )
    8. highlight and copy the UUID : 43E6C312-24EA-4987-AA65-FB517AA966AD
    9. next unlock the volume and it will mount :
    diskutil corestorage unlockVolume UUID -stdinpassphrase —-( replace UUID with yours in this example its the 43E6C312-24EA-4987-AA65-FB517AA966AD)
    10. System will prompt you for the passphrase to unlock your volume, Key in your password and the drive will mount.
    11. Once mounted. you can follow the instruction to move the unsupported kext to a folder and restart it. for me the issue was some LG 360 camera usb kext and the Huawei data card kext.

    for the benefit of those who is wondering what I am talking about :
    1. cd /Volumes/#your Macintosh volume id/Library/Extensions
    2. ls -lat or ls -lrtc
    3. mkdir /Volumes/#your Macintosh volume id/Library/backup
    4. mv /Volumes/#your Macintosh volume id/Library/Extensions/*unfamiliarext.kext /Volumes/#your Macintosh Volume id/Library/backup/
    5. move all the unsupported kext over and you can type : reboot.

    if everything goes well. you will boot back into your system!

    hope it helps some one!!!


    • Eisa says:

      I was following all instructions but I felt lost here ,,, I need more explanation on how to into terminal and step by step till my mac back to work again 🙁 please anybody gots time to explain that would be appreciate it,, I have high value items on there and don’t wanna lose them


      • Eisa says:

        One thing to add is
        I don’t want to delete Google Chrome Extension by mistake ,, all my crypto currencies wallets are saved into that extension 🙁

        • User Avatar Justin Silver says:

          Hi Eisa, I would definitely recommend making a backup of your wallet and private keys to another safe location. Storing crypto wallets in a Chrome extension sounds very risky to me. That said, kernel extensions (kext files) are at the operating system level, not the application level (like Chrome), and are not the same as a browser extension. Good luck!

  41. Tito says:

    Thank you so much Mr. Silver, you’re a life-saver!

  42. Nikita says:

    Hi, Mac itself started going to High Sierra from Sierra at December 3rd. And it stuck, now when i turn notebook on and enter password, it goes near 70% and then goes to black screen with a ball progress icon. I did what you said here, but still can’t enter.
    And most strange part, i don’t see directories ExstansionsDisabled and etc at that folders, it must be gone with all that kext…
    Could you help somehow?

    • User Avatar Justin Silver says:

      Hi Nikita,

      The “ExtensionsDisabled” directory does not exist by default, you need to create it first. It does sound like the issue could be an invalid kernel extension either in /System/Library/Extensions/ or /Library/Extensions/

      Good luck!


  43. Dean Johnton says:


    Thanks for the hard work. This may be a simple/silly question, but I need to ask it. This is all caused by stuff that’s kept when you install an OS version upgrade right (at this point in time it is going from Sierra to High Sierra)? If you boot into recovery mode and wipe the disk first, and then clean install, will it fix the problem?

    I’m having this issue with my MacBook Pro, and all my files, photos, etc. on it are back up (not Time Machine, but manually to an external disk), so I’m not worried about losing anything.

    Thank you.

    • User Avatar Justin Silver says:

      That’s correct! If you wipe the disk and do a fresh install it should work fine 😛 The issue in this post that seems to be fairly common is related to old kernel extensions left over from previous installs. Even though all my data is backed up externally (currently my data goes to Time Machine, NAS, Dropbox, and cloud backup) I am a web developer so setting up my machine again is possibly many days of work, and as they say time is money, so an upgrade is often preferable to a fresh install. Unfortunately several of these issues were caused when I accidentally clicked the “upgrade” button in the OS alert instead of “later” and wasn’t actually planning to upgrade at the time.

      • Dean Johnston says:


        That’s great, thanks. I’ll take the ‘should work.’ I appreciate the odds involved in getting kerjillians of zeros and ones to line up in a specific order and behave. I won’t be disappointed (or worse off) if it doesn’t go to plan.

        Now, if fixing the problem of my iPad’s Home button, which broke on Saturday, was only this easy…


        • User Avatar Justin Silver says:

          If you can start fresh it’s the best option since everything is much more likely to be set up in a way that Apple tested properly. It’s nearly impossible for them to test all the random things that people have installed over the years, so even though I’m not giving them a pass I can understand how it happens.

          Hopefully your Home button doesn’t contain TouchID, I think those can be crazy to fix…

  44. Sonam says:

    Thank you very much.You saved my day

  45. Semyon says:

    Hail to the King! Thank you so much, I was already preparing for the worst. I don’t understand how the Logitech developers continue to distribute the utility that hanging the system. Greetings from Russia and many thanks, again.

  46. Orlando says:

    Hi, Justin. When I try with the text:

    create a directory for “disabled” extensions mkdir /Volumes/Macintosh\ HD/Library/ExtensionsDisabled

    Terminal doesnt recognize it.

    Do you think what could be wrong?

    Thank you very much.

    • User Avatar Justin Silver says:

      It’s hard to say without the exact error message. Double check the name of your hard drive by using ls /Volumes and make sure that you have unlocked your drive if using FileVault. Good luck!

  47. Peter Shrubb says:

    Good Day, Mr Silver: Big problems with my iMac with progress bar frozen ar 100% after taking 20 minutes to get there. Apple care people have taken me through umpteen attempts to work through problem which seems identical to the one for which you have found a much praised solution. I have never written code and find it almost impossible to summon the courage and confidence to start now. But, is there anyone out there living near Barnet in north London that you know of whom I could hire to come and fix things for me? My machine is late 2009 model and recently upgraded to High Sierra. This took four hours last weekend and it seemed to work well at first. The problems started when I tried to log on last Monday and I’m now desperate as to next step. Many thanks for your attention. – Peter Shrubb

    • User Avatar Justin Silver says:

      Hi Peter, I live in California so unfortunately I can’t recommend anyone in North London. If there is an Apple store you can go to I would recommend scheduling an appointment there – if you think the problem in the post is the one affecting your computer you can show it to the technician so that they can use it in their troubleshooting. Good luck!

  48. Stason says:


    Can this be made into a script so it will just run every time you shut down? there are two canon extensions that keep the machine from booting when we restart, every time we delete them they reappear. I tried putting your code into script editor but it gives me an error:
    # 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;


  49. Nate says:

    You just saved my bacon, thanks Justin.

  50. David says:

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

    • User Avatar 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 🙂

  51. 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.

  52. 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

    • User Avatar 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!

  53. Dan says:

    Thanks a lot.

  54. 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.

    • User Avatar 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!

  55. 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!

    • User Avatar 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!

      • Charley says:

        Hi Justin and Colin,
        I’m in the same situation as Colin with my ~2 yr old Mac about week after what seemed to be a successful update to High Sierra.
        Following Justin’s very helpful tips, I got part way then had Colin’s problem. My bash version is 3.2.
        Solution to Colin’s problem: “mount -rw /” doesn’t work, but “mount” alone does.
        New problem:
        I can’t replicate Justin’s script to move old incompatible OS Sierra kexts, because it seems to presume that we’ve already created a list of old kexts:

        Justin wrote:
        mkdir /Volumes/Macintosh\ HD/Library/ExtensionsSystemDisabled
        mv /System/Library/Extensions/VeryOldKernelExtension.kext /Volumes/Macintosh\ HD/Library/ExtensionsSystemDisabled

        But I don’t have “VeryOldKernelExtension.kext”

        Justin’s Sept 21 comment suggested
        “find /sourcedirectory -maxdepth 1 -mtime +365 -type f -exec mv “{}” /destination/directory/ \;”
        but that doesn’t work bash3.2, where
        “find” alone yields a help note describing a different syntax. Apparently bash 3.2’s find is based on bsd unix, whereas Justin’s version using bash 4.4 includes the gnu-based find command.
        I’m now looking for how to do Justin’s find command for older kexts using the version of find in bash3.2
        Meanwhile, I’m trying to restore from a TimeMachine backup.

        • User Avatar Justin Silver says:

          Hi Charley,

          “VeryOldKernelExtension.kext” is just an example of an old kext file, you would get the actual names from your system. I installed bash 4 via homebrew – I forgot that OS X is stuck on 3.2 for licensing reasons.

          /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
          brew install bash

          With an older version of bash you might need to mount your drive as read/write with this command:

          mount -u -w /

          I’m not sure how to convert the find command to the older syntax off the top of my head so you will need to do some research.

          Good luck!

          • Ayush says:

            Hey Justin, Charley and Colin-

            I’m also stuck at the “….move old incompatible OS Sierra kexts, because it seems to presume that we’ve already created a list of old kexts:” bit.
            I’m still at bash3.2, not able to download 4.4.
            Does anyone now know the correct ‘find’ commands for 3.2?
            @Charley how did you get past this? Could really use your help here guys.

            • Ayush says:


              Here is a link for the ‘find’ command – https://ss64.com/osx/find.html …..

              Not sure how to solve this issue. The first set of commands worked perfectly. The 2nd command under OS Sierra kexts is not working. Please guide me here.

              • User Avatar Justin Silver says:

                Just realized that you might not be able to install bash 4.4 if you’re in Recovery Mode. The find command is just to find files older than 365 days, you should be able to just run something similar to find . -mtime +365 to get a list of old files and then move them manually. If that doesn’t work just list the files sorting by time using ls -lat, the oldest files will be listed last.

            • User Avatar Justin Silver says:

              Hi Ayush, I don’t have a way to test 3.2 right now but you can install bash4.4 using brew using the first two lines of shell commands in the comment above yours. Once you have the newer version you can use the find command to locate kexts that are more than 365 days old.

  56. 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.


    • User Avatar 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".

  57. 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’.

    • User Avatar 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!

  58. 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

    • User Avatar 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.

  59. Mischa says:

    Excellent post

  60. Amr Sayed says:

    You are a life saver .. Thanks a million

  61. 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?

    • User Avatar Justin Silver says:


      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 🙂

  62. 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.

    • User Avatar 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!

  63. 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

    • User Avatar 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/ \;
  64. 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!

  65. 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!

    • User Avatar 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!

  66. 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 🙂

  67. mattia says:

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

  68. 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!

  69. Joseph Daudi says:

    Bro ill give it a try

  70. David Giorgi says:

    Many thanks Justin, brilliant!
    Greetings from french alps

  71. 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.

  72. Jimmy P says:

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

  73. Jimmy P says:

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

  74. 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…

  75. 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!

    • User Avatar 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

        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?


        • Nuno says:

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

          • User Avatar 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.

  76. Markus says:

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

  77. woodey gundry says:

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

  78. Jesper Alvermark says:

    Thank you so very much! Worked perfectly!

  79. Stephen Brock says:

    Thank you so much!!!!

  80. 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!

  81. Eric says:

    Thank you, this saved me!

  82. 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!

  83. Fred Waltman says:

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

  84. Josh says:

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

  85. Captain Grateful says:

    You just saved my @$$.

  86. Patrick says:

    Thanks for writing this up, you rock!

  87. Gareth says:

    Thank you for this, was a lifesaver!

  88. 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

  89. Giovanni says:

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

  90. Richard says:

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

  91. 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.

  92. Richard says:

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

  93. 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.

    • User Avatar 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!

  94. 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.

    • User Avatar 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!

  95. 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.



  96. 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.


  97. 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?

    • User Avatar 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:


        Although these also keep reinstalling every time I reboot:


        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!


        • User Avatar 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.

  98. 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!

    • User Avatar 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!

  99. Martin says:

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

  100. 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.

  101. William says:

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

  102. 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!

  103. 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!!! :-)))

  104. 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.

  105. JMElicegui says:

    Thank you very much

  106. Lea says:

    I mean, i cant mount it as read/write

  107. Lea says:

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

  108. matt says:

    i love you, really saved this college students life

  109. 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.

  110. 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.

  111. 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!

  112. 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.


    • User Avatar 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.

  113. 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

  114. 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:

    • Myles says:

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

    • User Avatar 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!

  115. MICHAEL says:

    Thanks for the great article! SAVED MY DAY!

  116. 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

    • User Avatar 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!

  117. Aman says:

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

  118. Ivan says:

    One more thank you! 🙂

  119. Math says:

    Thanks Justin, your tips saved my day.

  120. 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!

    • User Avatar 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!

  121. 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?

    • User Avatar 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!

  122. 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.

  123. 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 ….

    • User Avatar 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!

  124. 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! 👍

    • User Avatar 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!

  125. 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.

  126. Pablo says:

    You saved my girlfriend’s macbook! Genius!

  127. 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.

  128. 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 :”)

    • User Avatar 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!

  129. 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.

  130. 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.

    • User Avatar 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.

  131. 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.

  132. Ivan Sinigaglia says:

    Thank you very much. Worked fine for me.

  133. 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

  134. 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!

  135. 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

  136. 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!

    • User Avatar 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!

  137. 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!

  138. 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!

  139. Ajay Ghale says:

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

  140. Christian says:

    You are a hero!

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

    My Macbook pro is back!

  141. 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.

  142. 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.

  143. 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)

    • User Avatar 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!

  144. Tomas says:

    Justin – you bow to no one!

    You kind of saved my digital life. 🙂

  145. Felix says:

    Thank you very much.
    Removing the kext and booting ok


  146. 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’.

  147. 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!

  148. 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

    • User Avatar 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!

  149. Markus says:

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


  150. 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

    • User Avatar 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?

  151. 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.

    • User Avatar 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.

        • User Avatar 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?


            • 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.

  152. 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?

    • User Avatar 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!

  153. 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.

  154. 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.


    • 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

    • User Avatar 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!

  155. 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?

    • User Avatar 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

  156. 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 🙂

    • User Avatar 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!

  157. 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.

    • User Avatar 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!

  158. 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.

    • User Avatar 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

        • User Avatar 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.

  159. Edwin says:

    Hi Justin,

    Thanks so much!! You saved my macbook!


  160. 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!

  161. Bernd Rac says:

    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

  162. 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!

  163. 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!

  164. 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.

  165. Richard Butler says:

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

  166. 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.

  167. 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?

    • User Avatar 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!

  168. 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:


    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.

  169. 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.


  170. 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

    • User Avatar 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!

  171. 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.. :((

    • User Avatar 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!

  172. Dominique says:

    Dude, it worked! Thanks a million

  173. 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?

    • User Avatar 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.

        • User Avatar 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!

  174. this post really saved my day

  175. 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.

  176. 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:

    ATTOCelerityFC8 07.08.53.kext
    ATTOExpressSASHBA2 07.08.53.kext
    ATTOExpressSASRAID2 07.08.53.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?



    • User Avatar 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.

  177. 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

    • User Avatar 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!

  178. 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

  179. 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.

  180. 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!

  181. Edgar says:

    Thank you so much! It was of great help

  182. 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)

    • Matt says:

      ah yes .. to be complete: “Safe mode” also did not help in this case.

      thank you so much again …

  183. 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

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

  184. 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!*)

  185. 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?

    • User Avatar 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.

  186. 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,

    • User Avatar 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

        • User Avatar 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!

  187. 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,

  188. Michael says:

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

  189. 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?

  190. 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 🙂

  191. 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.

  192. 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.

    Dont Steal Mac OS X.kext:
  193. Orion says:

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

  194. 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!

    iMac/2011/10.11.4 update

  195. 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….

  196. 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.

  197. Olivier says:

    It works for me !

    Thanks a lot.

  198. 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

    • User Avatar 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

        • User Avatar 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 &


  199. 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.

    • User Avatar 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

        • User Avatar 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/.

  200. 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.

  201. Thando says:

    Hi Justin,

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


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

    Thanks in advance,


    • User Avatar 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 :


        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?



        • User Avatar 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.. :

            Dont Steal Mac OS X.kext

            Much appreciated,


            • User Avatar 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.

  202. Daniel says:

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

  203. Morgan says:


    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.

  204. 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

    • User Avatar 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

  205. 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!

    • User Avatar 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!

  206. 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!!

  207. 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!

    • User Avatar Justin Silver says:

      Hi Débora, did you mount the root filesystem read-write? By default it is read-only. In the Terminal window enter mount -rw /.

  208. 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.

  209. 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).

      • User Avatar 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/?

  210. Manuel says:


    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.

    Help please!!!

  211. 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.

  212. 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:

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

    • User Avatar 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.

  213. Dario says:

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

  214. 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.

  215. 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…

    • User Avatar 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!

  216. 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 !

    • User Avatar 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 🙂

  217. 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 🙂

    • User Avatar 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.

  218. 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!

  219. 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?

  220. 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.

    • User Avatar 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.

  221. 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.

    • User Avatar 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.

        • User Avatar 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

  222. patrick Schrevens says:

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

  223. 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.

  224. 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.

  225. 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.

  226. 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!

  227. 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!!

  228. 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

  229. Mo maged says:

    Man you made my day, thank you very much.

  230. M. Lombard says:

    well done and thank you

  231. Francisco Aguilar says:

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

    • User Avatar Justin Silver says:

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

  232. 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.

    • User Avatar 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.

  233. 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!

    • User Avatar 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.

  234. 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!

    • User Avatar 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!

  235. Kenny says:

    Which text editor is this in those images?

    • User Avatar 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.

  236. Pawel Niemiec says:

    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?

    • User Avatar 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!

  237. 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??

    • User Avatar 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).

  238. 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 ?

    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
    • User Avatar 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).

  239. Pawel says:

    Thanks for that!

    Really good input, helped at once.


  240. 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.

    • User Avatar 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!

  241. 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 .

    • User Avatar 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!

  242. 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!!!!!

    • User Avatar 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.

  243. 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 ???

  244. 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


    • User Avatar 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

          • User Avatar 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 /
  245. 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 *