Kexts, How to Install, Remove and Manage Kernel Extensions
This is an incomplete article
Kexts stands for Kernel Extensions, Kernel is actually the heart of macOS, It is basically the one that gets your Operating System boot & work. The function of Kexts are similar to Drivers in Windows. Kexts extend the functionality of macOS by providing additional codes to the kernel. Basically, Kexts are loaded when macOS boots. Simply Kexts are similar to Drivers in Windows, Different hardware needs different drivers that are the basics.
macOS comes with hundreds of defaults kexts, When you use a Macintosh you will probably never have to install any kexts because every Kexts which are needed by your computer are already bundled with macOS.
System kexts are usually found in /System/Library/Extensions folder (Shortly /S/L/E) but most third-party kexts can be found in /Library/Extensions folder (Shortly /L/E). Users were allowed to install kexts to /S/L/E folder in OS X Yosemite and previous Mac OS X Versions but starting from OS X EL Capitan Apple restricts write access to many system folders including /System/Library/Extensions folder. Users can install Kexts /S/L/E by disabling System Integrity Protection or Kexts can be installed to /Library/Extensions folder.
Kexts needs special macOS Permissions to work in macOS, without correct permissions Kexts will not be loaded by macOS. Permissions on macOS are used to keep your files secure. They are designed so that certain programs can not tamper into system files they have no business with and modify it. Every file and folder on your Mac comes with an associated set of permissions. So are Kexts, Technically Kexts must have 755 permissions and owned by root:wheel, When kexts are failed to load, You may have to fix kexts permissions manually as described in upcoming paragraphs.
Let assume you have a kext named Example.kext in your downloads folder.
cp -R ~/Downloads/Example.kext /Library/Extensions/
You have successfully copied kexts, You can also simply copy-paste kexts to /L/E any Repairing Kexts permissions is essential to make installed kext work and load with macOS.
chown -R root:wheel /Library/Extensions/Example.kext
chmod -R 755 /Library/Extensions/Example.kext
but when you are installing a lot of kexts set permissions to Extensions folder itself to make the process easy.
chown -R root:wheel /Library/Extensions
chmod -R 755 /Library/Extensions
Kext wizard is an application to Install kexts, Kext Wizard only allows Installation to /S/L/E folder, You can not install to /L/E with it.
- Download Kext Wizard
- Open Kext Wizard application, Select Installation Tab.
- Drag and Drop kexts into the white space of the kext wizard app.
- Select “Backup kexts that will be replaced” if you want to keep a backup of kext, This is optional and doesn’t applies if you are installing a brand new kext.
- Click Install.
Download Kext Utility Application.
Copy Kext Utility to Applications folder.
Pin Kext Utility to Dock by dragging it from Applications folder and dropping in Dock.
Select all the kexts that you want to install, Drag all kexts and drop them over the Kext Utility Icon in Dock.