A volte, gli utenti Mac avanzati e gli amministratori di sistema potrebbero dover caricare o scaricare manualmente un’estensione del kernel. Poiché le estensioni del kernel sono spesso componenti critiche di OS X, questo è appropriato solo per gli utenti che hanno una ragione specifica per modificare se un kext viene caricato o scaricato nello spazio del kernel di OS X. La modifica inappropriata del comportamento di kext può rendere l’hardware Mac inutilizzabile o inaccessibile e può anche impedire a OS X di funzionare, quindi non tentare di modificare alcuna estensione del kernel senza un motivo valido e la comprensione di quale sia il suo utilizzo.
Caricamento di un’estensione del kernel in OS X con kextload
Per caricare un’estensione del kernel in OS X, è necessario utilizzare l’utilità kextload della riga di comando. La sintassi è altrimenti abbastanza semplice, richiedendo sudo per l’accesso amministrativo per eseguire l’azione:
sudo kextload /path/to/kext.kext
Puoi anche usare l’identificatore del bundle (che sono spesso i bersagli dei comandi di default) con l’opzione -b:
sudo kextload -b com.apple.driver.ExampleBundle
In ogni caso, premi Invio e con la voce della password dell’amministratore l’estensione del kernel verrà caricata in OS X.
Puoi confermare che un kernel è stato caricato elencandolo con kextstat, usando grep per cercare il nome dato in questo modo:
$ kextstat | grep com.apple.driver.ExampleBundle
125 0 0xdddddd7f23351040 0x5000 0x5000 com.apple.driver.ExampleBundle (1) 12 8 7 5 4 2 1
Questo può essere utile dopo aver installato manualmente un’estensione del kernel in OS X in quanto in alcune situazioni impedisce la necessità di riavviare il Mac.
Le versioni moderne di Mac OS X consentono anche il completamento dell’estensione del kernel con il comando kextutil, che è un po ‘più completo per ragioni di debug, ma è lo stesso per il caricamento di un kext.
Scaricamento di un’estensione del kernel con kextunload
Lo scaricamento di un’estensione del kernel da OS X è fondamentalmente lo stesso del caricamento di un kext, eccetto che userete l’utility kextunload con sudo come segue:
sudo kextunload -b com.apple.driver.ExampleBundle
O puntando direttamente al percorso delle estensioni del kernel:
sudo kextunload /System/Library/Extensions/ThirdPartyMystery.kext
Di nuovo, puoi confermare che l’estensione del kernel è stata scaricata usando kextstat e grep, dove non dovrebbe restituire nulla.