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

Wie deinstalliere und entferne ich ein .kext unter Mac OS X?

Ich habe einen X-in-1-Medienkartenleser gekauft und musste einen Treiber installieren, um SD-HC-Karten lesen zu können. Jetzt bekomme ich manchmal, wenn ich den Leser vom USB-Anschluss abziehe, eine Kernel-Panik.

Nun würde ich gerne diese Kernel-Erweiterung entfernen, aber das Treiber-Installationsprogramm gibt mir diese Option nicht.

Wie kann ich eine Kernel-Erweiterung (.kext) von meinem Mac OS X 10.5 deinstallieren?

Antworten (5)

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

Wenn Sie den Namen der .kext-Datei nicht kennen, können Sie ihn mit einem QuickLook-Plugin wie Suspicious Package herausfinden, wenn das Installationsprogramm ein Standardpaket (.pkg oder .mpkg) ist, das in Installer.app geöffnet wird.

Wenn es sich nicht um ein Paket handelt, können Sie den Namen des Kext aus der Kernel-Panik herausfinden: Sie finden diese Information unter ~/Library/Logs/panic.log oder wenn Sie Ihren Computer nach der Panik neu starten, wird er Sie fragen, ob Sie den Fehler an Apple melden wollen. Drücken Sie “Report” und klicken Sie dann auf den mittleren Reiter, um die Absturzdetails zu sehen.

Ein Beispiel würde lauten:

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

Ich habe die relativen Zeilen auseinander gesetzt. Genauer gesagt suchen Sie nach der ersten Zeile nach “Kernel loadable modules…”. In diesem Fall ist der Eintrag com.apple.iokit.AppleYukon (das ist die Ethernet-Treiber/Kernel-Erweiterung), also wäre der Dateiname com.apple.iokit.AppleYukon.kext.

Bevor Sie mit dem nächsten Schritt fortfahren, sollten Sie 110% sicher sein, dass Sie die richtige Kernel-Erweiterung haben. Das Deaktivieren der falschen Kernel-Erweiterung kann das Leben wirklich schwer machen - z.B. werden USB-Geräte nicht funktionieren, bis sie wieder aktiviert wird.

Schließlich wird sie entladen:

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

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

Sie müssen den Befehl “kextunload” verwenden. Möglicherweise müssen Sie sudo verwenden, wenn es als systemweites (und nicht als benutzerspezifisches) kext installiert wurde.

Sie können das Kext-Bundle auch direkt löschen und neu starten.

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

Dies ist für Hackintoshes, aber ich bin ziemlich sicher, dass die Befehlszeile auch für normale Macs funktioniert… http://ihackintosh.blogspot.com/2008/10/how-to-remove-kext-file-in-mac-osx.html

Seien Sie jedoch vorsichtig, was Sie eingeben :)

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

Werfen Sie einen Blick auf Suspicious Package , es ist ein Quick-Look-Plugin, mit dem Sie sehen können, was eine .pkg-Datei (vorausgesetzt, das ist das Installationsprogramm) mit dem System anstellt, es ist dann normalerweise ziemlich einfach zu entfernen, was es installiert hat.

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

Versuchen Sie zunächst, die Kext-Datei zu entladen. Sie können sehen, welche Kext-Dateien mit Kext Wizard 3.7.11 im Register “Geladen” geladen sind:
sudo kextunload /System/Library/Extensions/NAME_OF_THE_KEXT_FILE.kext

Entfernen Sie dann den Kext-Ordner, damit er beim nächsten Start nicht automatisch geladen wird:
sudo rm -r /System/Library/Extensions/NAME_OF_THE_KEXT_FILE.kext

Jedes NAME_OF_THE_KEXT_FILE.kext ist keine Datei, es ist ein Ordner.