Is there an easy way to make the mapping from kernel extension to the file it came from?

I can get the list of currently loaded kernel extension via kextstat. This gives me the bundle names, like com.AmbrosiaSW.AudioSupport or jp.plentycom.driver.SteerMouse. But how can I then find the actual file locations of these bundles? For example, the Ambrosia bundle is AmbrosiaAudioSupport.kext, and I can only find the bundle name in the Info.plist inside that bundle. I could grep the /System/Library/Extensions/ directory, but this does not necessarily contain extensions loaded after booting, and I assume there is a better way to do it?

3 Answers 3


See kextfind

  • 2
    kextfind is interesting, but it seems it only searched in the standard /System/Library/Extensions/ folder. Is there a way to find the location of bundles that were not loaded from this folder? Something that remembers the -r parameter of kextutil?
    – Jan Fabry
    Jan 11, 2011 at 8:20

You can use kextfind -b <bundlename> to find the file defining a kext you only know the bundle name of.

EDIT: newer versions of kextfind need a -print predicate to show output. Example updated below.

For example:

kextfind -b com.AmbrosiaSW.AudioSupport -print
  • Doesn't work :( - Mac-Pro.local ➜ Extensions kextstat | grep rehab 18 0 0xffffff7f8131f000 0x4000 0x4000 com.rehabman.driver.USBInjectAll (0.6.5) A63DACD5-10FE-3A1C-BCB1-4EEF5308B7CC <13 12 5 3> Mac-Pro.local ➜ Extensions kextfind -b com.rehabman.driver.USBInjectAll Mac-Pro.local ➜ Extensions Apr 5, 2020 at 16:17
  • @RomanGaufman newer versions of kextfind need a -print predicate to show output, else it will just return true if the bundle is found. I have updated the answer accordingly Apr 14, 2020 at 2:03

Try About this mac -> System report -> Software section -> Extensions.

It shows the filepath upon selecting an extension.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .