Wie kann ich unter Mac OS X einen .kext deinstallieren und entfernen?

186966
Marc

Ich kaufte einen X-in-1-Medienkartenleser und musste einen Treiber installieren, um SD-HC-Karten lesen zu können. Wenn ich jetzt den Leser vom USB-Port trenne, bekomme ich manchmal eine Kernel-Panik.

Nun möchte ich diese Kernel-Erweiterung entfernen, aber das Treiberinstallationsprogramm gibt mir diese Option nicht.

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

30

5 Antworten auf die Frage

31
Chealion

Wenn Sie den Namen der .kext-Datei nicht kennen, können Sie dies mithilfe eines QuickLook-Plugins 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 Kextes aus der Kernel-Panic ermitteln: Sie finden diese Informationen unter ~/Library/Logs/panic.logoder, wenn Sie Ihren Computer nach der Panik neu starten, werden Sie gefragt, ob Sie den Fehler an Apple melden möchten. Klicken Sie auf Bericht und dann auf die mittlere Registerkarte, um die Absturzdetails anzuzeigen.

Ein Beispiel wäre:

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 auseinandergesetzt. Insbesondere suchen Sie nach der ersten Zeile nach "Kernel ladbare Module ...". In diesem Fall lautet das Element com.apple.iokit.AppleYukon (dies ist die Ethernet-Treiber- / Kernel-Erweiterung). Der Dateiname lautet also com.apple.iokit.AppleYukon.kext .

Bevor Sie mit dem nächsten Schritt fortfahren, stellen Sie sicher, dass Sie die richtige Kernel-Erweiterung haben. Das Deaktivieren der falschen Kernel-Erweiterung kann das Leben wirklich schwer machen - z. USB-Geräte funktionieren erst, wenn sie erneut aktiviert werden.

Zum Entladen:

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

Danke für Ihre ausführliche Antwort und vielen Dank auch für Ihre Hilfe. Marc vor 15 Jahren 0
`kextunload`ing ist nicht dauerhaft. 110% sind also etwas übertrieben. Sie können einfach neu starten ... Alec Jacobson vor 10 Jahren 3
6
Matthew Schinckel

Sie müssen den Befehl kextunload verwenden. Möglicherweise müssen Sie sudo verwenden, wenn es als systemweiter (nicht als einzelner Benutzer) Kext installiert wurde.

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

+1. kextunload hat einen Fehler zurückgegeben, aber das Löschen des .kext löste mein Problem direkt, danke. gary vor 13 Jahren 0
4
Alexis Hirst

Dies ist für Hackintoshes, aber ich bin mir ziemlich sicher, dass die Kommandozeile auch für normale Macs funktioniert ...

http://ihackintosh.blogspot.com/2008/10/how-to-remove-kext-file-in-mac-osx.html

Seien Sie vorsichtig, was Sie eingeben :)

2
cobbal

Schauen Sie sich Suspicious Package an . Mit diesem Plugin können Sie schnell sehen, was eine .pkg-Datei (vorausgesetzt, das ist das Installationsprogramm) für das System tun wird. In der Regel ist es ziemlich einfach, die installierten Dateien zu entfernen.

1
Smeterlink

Versuchen Sie zunächst, die Kext-Datei zu entladen. Welche Kext-Dateien mit Kext Wizard 3.7.11 geladen werden, sehen Sie im Tab "Loaded":
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

Any NAME_OF_THE_KEXT_FILE.kextist keine Datei, es ist ein Ordner.