如何在OS X Lion中kextunload


11

我开始学习有关Mac OS X内部的更多信息。现在我想加载和卸载一些内核扩展。

我开始通过加载MS-DOS文件系统

sudo kextload /System/Library/Extensions/msdosfs.kext 

我可以输入以下内容进行检查

kextstat | grep msdos 

命令输出显示已加载的kext文件。但是,当我要卸载 MS-DOS文件系统时:

sudo kextunload com.apple.filesystems.msdosfs

我只收到以下消息:

Can't create com.apple.filesystems.msdosfs.

上面的kextunload-行有什么问题?

Answers:


14

kextunload可以使用完整的内核扩展路径,就像kextload

sudo kextunload /System/Library/Extensions/msdosfs.kext

如果要使用捆绑标识符-由kextstat- 列出的标识符,请使用-b开关:

sudo kextunload -b com.apple.filesystems.msdosfs

2
我得到的Can't create –b.,如果我使用它......我在10.8.3。
mgol 2013年

2
我知道这已经很老了,但是如果您得到“无法创建-b”的信息,这是因为,连字符是错误的字符,可能是UTF-8编码的破折号或从网站复制并粘贴的内容。自己输入-b。
John Boker

2

kextload手册页可以为您提供详细信息。这是我一直在使用的命令:

sudo kextload /path/to/file.kext

kextutil手册页,如果加载过程中有错误,此工具可用于获取一些调试消息。

sudo kextutil /path/to/file.kext

当然,另一个答案是kextunload手册页。这是我主要使用的命令,因为我不想写出完整的bundle id:

sudo kextunload /path/to/file.kext

您还可以kextstat用来验证您的kext文件是否已加载:

kextstat | grep -v apple

只要捆绑包ID中没有“ apple”,它就会列出所有第三方kext。


2

我遇到了同样的问题(无法创建–b。无法创建com.apple.driver.AppleUSBFTDI。)在OS x 10.9.5上尝试“ sudo kextunload –b com.apple.driver.AppleUSBFTDI

但是在我使用完整路径(sudo kextunload /System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBFTDI.kext/)之后,它起作用了...

仅在某些 kext 上才会发生,例如在其他kext(/System/Library/Extensions/FTDIUSBSerialDriver.kext)上,它可以与“ sudo kextunload -b com.FTDI.driver.FTDIUSBSerialDriver ” 完美配合

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.