2009-07-15 08:38:42 +0000 2009-07-15 08:38:42 +0000
32
32

Come faccio a disinstallare e rimuovere un .kext su Mac OS X?

Ho comprato un lettore di schede multimediali X-in-1 e ho dovuto installare un driver per poter leggere le schede SD-HC. Ora a volte quando scollego il lettore dalla porta USB ottengo un panico del kernel.

Quindi ora vorrei rimuovere questa estensione del kernel ma il programma di installazione del driver non mi dà questa opzione.

Come posso disinstallare un'estensione del kernel (.kext) dal mio Mac OS X 10.5?

Risposte (5)

32
32
32
2009-07-15 15:45:29 +0000

Se non conosci il nome del file .kext puoi scoprirlo usando un plugin QuickLook come Suspicious Package se l'installer è un pacchetto standard (.pkg o .mpkg) che si apre in Installer.app.

Se non è un pacchetto puoi scoprire il nome del kext dal panico del kernel: puoi trovare questa informazione a ~/Library/Logs/panic.log oppure quando riavvii il computer dopo il panico ti chiederà se vuoi segnalare l'errore ad Apple. Premi Report e poi clicca sulla scheda centrale per vedere i dettagli del crash.

Un esempio potrebbe essere:

panic(cpu 0 caller 0x0035C330): freeing free mbuf
Backtrace, Format - Frame : Return Address (4 potential args on stack) 
0x2545bc08 : 0x128d08 (0x3c9afc 0x2545bc2c 0x131de5 0x0) 
0x2545bc48 : 0x35c330 (0x3ea258 0x3ae65000 0x23935100 0x493e0) 
0x2545bc88 : 0x7424a4 (0x36f19300 0x493e0 0x0 0x134b11) 
0x2545bca8 : 0x9f1458 (0x23935000 0x36f19300 0x0 0x0) 
0x2545bcd8 : 0x9ef6d6 (0x23935000 0x36f19300 0x0 0x0) 
0x2545bcf8 : 0x9fa0ce (0x23935000 0x36f15f00 0x1000000 0x0) 
0x2545bea8 : 0x9f375a (0x23935000 0x3a14880 0x40000000 0x34fb8b) 
0x2545bf08 : 0x398f79 (0x23935000 0x3a14880 0x1 0x13becf) 
0x2545bf58 : 0x39814b (0x3a14880 0x4121d48 0x4121d8c 0x0) 
0x2545bf88 : 0x397e81 (0x3a184c0 0x5d3734 0x452084 0x40431f4) 
0x2545bfc8 : 0x19a77c (0x3a184c0 0x0 0x19d0b5 0x696543c) Backtrace terminated-invalid frame pointer 0x0  

Kernel loadable modules in backtrace (with dependencies):
com.apple.iokit.AppleYukon(1.0.9b3)@0x9ed000  

dependency: com.apple.iokit.IONetworkingFamily(1.5.1)@0x73b000
dependency: com.apple.iokit.IOPCIFamily(2.2)@0x60a000
dependency: com.apple.iokit.IOACPIFamily(1.2.0)@0x6b6000
com.apple.iokit.IONetworkingFamily(1.5.1)@0x73b000

Kernel version:
Darwin Kernel Version 8.8.2: Thu Sep 28 20:43:26 PDT 2006; root:xnu-792.14.14.obj~1/RELEASE_I386

Ho separato le linee relative. Nello specifico stai cercando la prima riga dopo “Kernel loadable modules…”. In questo caso la voce è com.apple.iokit.AppleYukon (che è l'estensione del driver/kernel Ethernet) quindi il nome del file sarebbe com.apple.iokit.AppleYukon.kext.

Prima di passare al prossimo passo siate 110% sicuri di avere la giusta estensione del kernel. Disabilitare l'estensione del kernel sbagliata può rendere la vita realmente difficile - ad esempio, i dispositivi USB non funzioneranno finché non sarà riabilitata.

Infine per scaricarla:

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

6
6
6
2009-07-15 10:48:19 +0000

Devi usare il comando kextunload. Potresti aver bisogno di usare sudo se è stato installato come un kext a livello di sistema (piuttosto che di singolo utente).

Puoi anche cancellare direttamente il bundle kext e riavviare.

4
4
4
2009-07-15 10:00:14 +0000

Questo è per gli hackintosh, ma sono abbastanza sicuro che la linea di comando funzioni anche per i mac normali… http://ihackintosh.blogspot.com/2008/10/how-to-remove-kext-file-in-mac-osx.html

State attenti a cosa digitate però :)

2
2
2
2009-07-15 08:44:16 +0000

Dai un'occhiata a Suspicious Package , è un plugin che ti permette di vedere cosa fa un file .pkg (supponendo che sia questo il programma di installazione) al sistema, di solito è poi abbastanza facile rimuovere ciò che ha installato.

1
1
1
2016-08-12 20:35:23 +0000

Per prima cosa, prova a scaricare il file kext. Puoi vedere quali file kext sono caricati con Kext Wizard 3.7.11 nella scheda “Loaded”:
sudo kextunload /System/Library/Extensions/NAME_OF_THE_KEXT_FILE.kext

Poi, rimuovi la cartella kext in modo che non si carichi automaticamente al prossimo avvio:
sudo rm -r /System/Library/Extensions/NAME_OF_THE_KEXT_FILE.kext

Qualsiasi NAME_OF_THE_KEXT_FILE.kext non è un file, è una cartella.

関連する質問

12
5
13
8
8