Seit macOS Catalina 10.15.4 weist das Betriebssystem direkt nach dem Hochfahren in einzelnen Warnmeldungen auf veraltete Systemerweiterungen hin, die in Zukunft nicht mehr unterstützt werden. Der genaue Wortlaut der Meldung ist dieser:
Ältere Systemerweiterung – Software auf deinem System hat eine Systemerweiterung mit Signatur von „Name-des-Entwicklers“ geladen, die mit zukünftigen Versionen von macOS nicht kompatibel sein wird. Wende dich für Unterstützung an den Entwickler.
Die ersten paar Male habe ich die Hinweise ignoriert, aber langsam nerven sie und ich wollte mich mal ans Werk machen, um die Systemerweiterungen bzw. Kernel-Erweiterungen zu entfernen, die ab macOS 10.16 nicht mehr kompatibel sein werden.
Kapitel in diesem Beitrag:
- 1 Hinweis von macOS wenig hilfreich
- 2 Tools wie CleanMyMac X finden die Erweiterungen nicht
- 3 Update 05.01.2020: MacUpdater in Pro-Version findet .kext-Dateien
- 4 Suche der Kernel-Extensions über Terminal-Befehl
- 5 In welchen Ordner befinden sich Systemerweiterungen und Kernel-Extensions?
- 6 Was sind „StagedExtensions“?
- 7 Wichtig: Backup vor dem Löschen der Extensions
- 8 Meine Tipps & Tricks rund um Technik & Apple
- 9 Ähnliche Beiträge
Hinweis von macOS wenig hilfreich
Das Erste, was mir auffällt: der Hinweis vom System, in dem auf die veralteten Systemerweiterungen hingewiesen wird, ist fast komplett für die Füße. Es wird zwar der Name des Entwicklers genannt, aber das Programm, zu dem die Erweiterung gehört, findet man in dem Fenster nicht.
Ebenso gibt es keine Anzeige des Pfads, wo die Systemerweiterung zu finden ist. So bleibt also nur, sich mit den vagen Informationen selbst auf die Suche zu machen.
Tools wie CleanMyMac X finden die Erweiterungen nicht
Mein erster Hoffnungsschimmer für die Suche war das Tool CleanMyMac X, mit dem ich in der Regel auch Startobjekte und Ähnliches ausmiste. Leider zeigt es die Erweiterungen, die macOS ankreidet, in keiner der Listen an, durch die ich mich geklickt habe.
Damit ist leider ein einfacher Weg über ein Klickibunti-Programm scheinbar ausgeschlossen und man muss sich andere Wege suchen, um hier fündig zu werden.
Update 05.01.2020: MacUpdater in Pro-Version findet .kext-Dateien
Ein Leser hat mich eben darauf hingewiesen, dass die Software „MacUpdater“ in der neuen, gekauften Version 2 auch nach veralteter Software im System suchen kann und damit auch Kernel-Extensions findet. Ich habe mir direkt die Software geklickt und tatsächlich zeigt sie mir vier kext-Dateien an, die ein Update brauchen. Man muss nur vorher in den Optionen unter „Scannen“ die Einstellung „Alle Softwaretypen“ wählen. Dies geht mit der Demo-Version nicht.
Suche der Kernel-Extensions über Terminal-Befehl
Nach der Suche in einigen Foren bin ich auf einen Terminal Befehl gestoßen, mit dem man sich die Kernel-Extensions anzeigen lassen kann, die NICHT von Apple sind. Dazu öffnet man das Dienstprogramm „Terminal“ und gibt folgenden Befehl ein:
mdfind 'kMDItemKind == "Kernel-Erweiterung"'
Update: Ein Leser schrieb mir eben, dass dieser Befehl beim ihm nichts ausgeworfen hat. Er konnte aber mit der Eingabe von dieser Zeile eine Liste mit Drittanbieter KEXTs erzeugen:
kextstat | grep -v com.apple
Daraufhin spuckt der Mac eine Liste mit Erweiterungen aus, die man sich näher anschauen sollte. Praktisch bei dieser Liste ist, dass man direkt sehen kann, in welchen Ordnern sich die Dateien befinden.
In welchen Ordner befinden sich Systemerweiterungen und Kernel-Extensions?
Um eine Liste der Ordner zu machen, an denen sich die KEXTs (Abkürzung für Kernel-Extensions) befinden, habe ich einfach mal in meinen Ergebnissen geschaut, wo diese so liegen. Hier sind die „üblichen Verdächtigen“, die ich bei mir ausfindig machen konnte:
- /Library/StagedExtensions/Library/Extensions/
- /Library/StagedExtensions/System/Library/Extensions/
- /Library/Application Support/
- /System/Library/Extensions/
- /Library/Extensions/
Was sind „StagedExtensions“?
In den Ordner „StagedExtensions“ schiebt macOS alle Kernel-Erweiterungen, die Programme von Drittanbietern installieren wollten, was jedoch vom System aus Sicherheitsgründen unterbunden wurde. In der Regel erscheint nach der Installation von solchen Erweiterungen in den Systemeinstellungen > Sicherheit > Allgemein für kurze Zeit ein Hinweis, über den man die Genehmigung für die Installation erteilen kann. Dazu muss man noch das Admin-Passwort eingeben und die Kernel-Extension kommt in den Ordner „Extensions“, in dem sie dann auch ausgeführt werden.
Wenn ihr gerade nichts vermisst, könnt ihr den Ordner „StagedExtensions“ in der Regel mit folgendem Terminal-Kommando leeren:
sudo kextcache --clear-staging
Wichtig: Backup vor dem Löschen der Extensions
Bevor man nun fleißig alle möglichen Dateien in den Papierkorb befördert, sollte man sich mit Carbon Copy Cloner, Smart Backup oder SuperDuper ein 1:1 Backup machen, mit dem man auch wieder starten kann. Bei Arbeiten in Systemordnern kann man unter Umständen viel kaputt machen, sodass man im schlimmsten Fall den Mac nicht einmal mehr von dem Volume booten kann.
Beachten sollte man auch, dass einige Hersteller Extensions mit mehreren Programmen nutzen. Wer also von Adobe CC oder Microsoft Office nur bestimmte Teile verwendet, benötigt in der Regel dennoch alle Systemerweiterungen, die die Programme installieren. Entfernt man diese trotzdem, funktioniert die Software manchmal nicht mehr richtig.
Solltet ihr noch Fragen zu den Systemerweiterungen haben, könnt ihr diese gerne als Kommentar hier hinterlassen.
Meine Tipps & Tricks rund um Technik & Apple
Ähnliche Beiträge
Seit 2012 betreibe ich meinen Blog als Sir Apfelot und helfe meinen Lesern bei technischen Problemen. In meiner Freizeit flitze ich auf elektrischen Einrädern, fotografiere mit meinem iPhone, klettere in den hessischen Bergen oder wandere mit meiner Familie. Meine Artikel behandeln Apple-Produkte, Drohnen-News und Lösungen für aktuelle Bugs.
Danke für den Tipp????! Coronafreies Wochenende gewünscht????.
Danke! Ebenfalls! :D
Bei mir hat der Befehl nichts gefunden. Ich konnte mit „kextstat | grep -v com.apple“ die Kernel Erweiterungen, die nicht von Apple sind finden
Hallo Klaus! Danke für den Hinweis. Ich ergänze deinen Befehl mal im Artikel. LG!
Ich bekomme nach Aufruf des Befehls „kextstat | grep -v com.apple“ die folgenden Infos:
Index Refs Address Size Wired Name (Version) UUID
149 0 0xffffff7f81047000 0x1d000 0x1d000 com.kaspersky.kext.klif (3.4.0a25) 60A1E118-2531-354D-BD36-2FA6ADC11C07
150 0 0xffffff7f80edf000 0x5b000 0x5b000 com.kaspersky.nke (2.3.0a7) 245493BB-B11C-3C84-9051-A2E51E4D01C0
Ich gehe davon aus, dass diese der Grund für die Meldung „veraltete Systemerweiterungen (Kernel-Extensions)“ sind. Weiß jemand von Euch, wie man das bereinigen kann?
Hallo Marcel! Ja, das könnten alte Programmteile von Kaspersky sein. Also entweder mal mit dem Kaspersky Deinstaller probieren oder eben mit der Anleitung, zu der du gerade den Kommentar geschrieben hast. :D
Mit dem Konsolenbefehl bekomme ich folgende Antwort, aber leider finde ich die Dateien absolut nicht… Hilfe wäre toll!!
Index Refs Address Size Wired Name (Version) UUID
174 0 0xffffff7f84705000 0x13000 0x13000 com.kaspersky.kext.kimul (46) A8797394- 1582-3199-B848-57168A700E56
175 0 0xffffff7f84718000 0x1e000 0x1e000 com.kaspersky.kext.klif (3.6.12a2) 6BA1AFA7-F84D-3C69-9E56-0C3E21139D2E
176 0 0xffffff7f84736000 0x5b000 0x5b000 com.kaspersky.nke (2.4.0a6) 45D3BCC3-2FB1-37A1-8148-801CBB1D353B
Hallo Toxitec! Hast du denn in den genannten Ordnern geschaut? kext-Dateien sollten in der Regel in einem der Ordner zu finden sein. Wenn nicht, weiß ich leider auch keinen Rat.
Was heisst das denn? Sind das Extensions zum löschen? Und er fragt nach Passwort? Ich habe keines…………Danke herzlichst. Meinen Namen habe ich gelöscht…….
The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.
For more details, please visit https://support.apple.com/kb/HT208050.
/Library/StagedExtensions/Library/Extensions/ATTOExpressSASRAID2.kext
/Library/StagedExtensions/Library/Extensions/ATTOCelerityFC8.kext
/Library/StagedExtensions/Library/Extensions/HighPointRR.kext
/Library/StagedExtensions/Library/Extensions/CalDigitHDProDrv.kext
/Library/StagedExtensions/Library/Extensions/HighPointIOP.kext
/Library/StagedExtensions/Library/Extensions/ATTOExpressSASHBA2.kext
–clear-staging
Password:
???
Hallo Caroline! Ja, diese Extensions können alle weg. Du kannst sie im Terminal mit diesem Befehl löschen: sudo kextcache –clear-staging
Dass er nach dem Passwort fragt, ist normal. Schließlich darf nicht jeder im Systemordner rumwerkeln. :D
Hallo.
Leider kann ich nicht ersehen, wo ich Ihren Befehl eingeben muss.
Bitte einmal für Laien: wenn der Mac eingeschaltet ist, was dann ?
Vielen Dank
Hallo Michael! Ah, ok… ich probiere es mal: Mac ist eingeschaltet, dann gehst du in den Ordner Programme > Dienstprogramme und öffnest darin das Programm „Terminal“. In diesem gibst du dann den Befehl ein. LG, Jens
Hallo zusammen!
Ich hatte vor einiger Zeit schon einmal das Programm MacUpdater empfohlen.
Es gibt nun eine neue Version 2.0 , die nicht nur veraltete Apps sondern jetzt auch veraltete Plugins, Screensaver, Kernelextension, usw. findet und automatisch/manuell updaten kann.
Man kann die App auch so konfigurieren, dass der Speicherort der veralteten .kext mit einem Doppelklick im System angezeigt wird, falls man das wünscht.
Vielleicht kann das hier ja dem ein oder anderen helfen.
Die Suche „über die Apps“ hinaus ist der Pro-Version vorbehalten … ich kann das Programm jedoch guten Gewissens empfehlen.
Ah, das ist ein guter Tipp! Ich werde es mal im Beitrag oben einbauen und auch mal ausprobieren. Klingt aber auf jeden Fall nach einer hilfreichen Funktion.
…. habe noch eine Ergänzung. Habe versuchsweise beide Terminalbefehle ausprobiert.
Der erste gibt mir 8 Kernelerweiterungen aus. Der zweite gibt mir zwar die 8 .kext nicht aus, dafür aber eine weitere.
Habe danach die Version 2.0 von MU gestartet und sie hat mir eine veraltetet Drucker-USB-kext angezeigt. Durch Doppelklick wurde mir der Ordner angezeigt, indem sich noch weitere diverse .kext befinden … hier finde ich jedoch die 8 + 1 + weitere 7 !! .kext
– seltsam.
Hallo Dirk! Ja, verstehen tue ich auch nicht ganz, warum hier verschiedene Angaben erfolgen. Wahrscheinlich liegt die Wahrheit irgendwo dazwischen… :D
Danke habe es versucht mit Deinen Befehlen. Danach bekomme ich diese riesen Liste von Systemerweiterungen und habe immer noch Abstürze. Was kann ich da tun?
Executing: /usr/bin/kmutil clear-staging
clearing all staged extensions…
dweib@Ds-iMac-2 ~ % mdfind ‚kMDItemKind == „Kernel-Erweiterung“‚
/Library/Extensions/EPSONUSBPrintClass.kext
/Library/Extensions/EyeTVVoyagerAudioBlock.kext
/Library/Extensions/EyeTVCinergyXSAudioBlock.kext
/Library/Extensions/EyeTVEmpiaAudioBlock.kext
/Library/Extensions/HighPointIOP.kext
/Library/Extensions/SoftRAID.kext
/Library/Extensions/EyeTVAfaTechHidBlock.kext
/Library/Extensions/EyeTVCinergy450AudioBlock.kext
/Library/Extensions/HighPointRR.kext
[…]
/System/Library/Extensions/AGXFirmwareKextG11GRTBuddy.kext
/System/Library/Extensions/AGXFirmwareKextG13GRTBuddy.kext
/System/Library/Extensions/AGXFirmwareKextRTBuddy64.kext
/System/Library/Extensions/AFKACIPCKext.kext
NAchtrag inbesondere die Eye TV erweiterungen brauche ich nicht mehr, wie werde ich sie los?
/EyeTVCinergyXSAudioBlock.kext /Library/Extensions/EyeTVEmpiaAudioBlock.kext /Library/Extensions/HighPointIOP.kext /Library/Extensions/SoftRAID.kext /Library/Extensions/EyeTVAfaTechHidBlock.kext /Library/Extensions/EyeTVCinergy450AudioBlock.kext /Library/Extensions/HighPointRR.kext
/EyeTVAfaTechHidBlock.kext /Library/Extensions/EyeTVCinergy450AudioBlock.kext /Library/Extensions/HighPointRR.kext
Hallo Dominik! Die Kernel Extensions findest du im „Library/Extensions/“-Ordner. Du kannst den Ordner aufrufen und dann die Dateien in den Papierkorb werfen. Hier eine Anleitung, wie du in den Ordner Library kommst.
Dann habe ich noch folgende Anleitung gefunden:
1. Erweiterungen aus /Library/Extensions entfernen
2. Booten im Recovery Modus (CMD + R beim Neustart halten)
3. Terminal aufrufen
4. Diesen Befehl eingeben: kmutil invoke-panic-medic
5. Mac neustarten
6. dem Hinweis folgen und die Systemeinstellungen öffnen und in „Sicherheit & Privatsphäre“ wechseln
7. dem Hinweis folgen und neu starten
Ich habe diese Anleitung nicht ausprobiert, aber vielleicht kommst du damit weiter.
Noch eine Bemerkung: Ich habe die Probleme erswt seit ich auf big sur upgedatet habe. Gibt es für dieses OS andere Befehle?
Ich habe aus dem Internet ein Programm runtergeladen um meinen Mac Bildschirm mit dem Ipad zu teilen. Habe leider trotz mehrere Warnung die Sicherheitswarnungen ignoriert und Zugriffsrechte erlaubt. Habe das Programm gelöscht doch bei der Suche blieb “YamDisplayDriver.kext“ . Und ich konnte dies auch nicht löschen. Habe den Befehl “sudo kextcache –clear-staging“ eingegeben und hoffe das dadurch Alles von diesem Datei(wahrscheinlich Virus oder Spionage Programm) gelöscht wurde. Kann mir das jemand bestätigen?
Hallo Ali! Es wäre sicher hilfreich, wenn du sagen könntest, wie das Programm hieß, das du geladen hast. Wenn es – der Kernel Extension nach zu urteilen – um Yam Display geht, scheint es keine Spionage-App zu sein. Es kann sein, dass das Programm unter Big Sur sowieso nicht mehr läuft, da Apple keine Kernel Extensions mehr von Drittanbietern zulassen möchte.
Wie lautet der Befehl, wenn man im Verzeichnis StagedExtensions nur gezielt eine .kext Datei löschen möchte?
Hallo Rene! In der Regel löscht man Dateien im Terminal mit rm /pfad-zur-datei/dateiname.kext
Aber ich habe keinen Schimmer, ob das eine Kernelextension auch tatsächlich rauswirft. Versuch macht kluch, sage ich immer. :D
Leider hat dieser Befehl nicht gefruchtet. Das System meldet
rm: /Library/StagedExtensions/Library/Extensions/SamsungPortableSSDDriver.kext: is a directory
Die Date bleibt bestehen
Hallo Rene! Verzeichnisse löscht man mit
rm -r /Library/StagedExtensions/Library/Extensions/SamsungPortableSSDDriver.kext/
Vielleicht klappt das?
Das war die Systemantwort:
override rw-r–r– root/wheel restricted for /Library/StagedExtensions/Library/Extensions/SamsungPortableSSDDriver.kext//Contents/_CodeSignature/CodeResources?
Leider immer noch nicht erfolgreich. Scheint (für mich zu) schwierig zu sein. Auch mit einem Script von Samsung hat es nicht geklappt.
Auch verschieben in den Papierkorb fruchtet nicht. Die Datei bleibt….
Warum macht Apple es so schwer, sein Betriebssystem zu aktualisieren? Ich bin kein Programmierer und es sollte nicht so schwer sein! Ich weiß, dass etwas schief gehen wird, wenn ich diese Anweisungen ausprobiere. Tut mir leid, dass ich mich hier Luft mache und danke für die Tipps. Leider werde ich wohl bei OS 10.14.6 bleiben.
Hallo,
Ich wollte noch hinzufügen, dass die Extensions auch unter → Über diesen Mac → Systembericht → Software → Erweiterungen aufgelistet werden können. Über die Spalte ganz rechts können die Ergebnisse anschliessend nach Entwickler sortiert werden. Zu beachten ist, dass das Auflisten aller Erweiterungen in manchen Fällen einige Minuten in Anspruch nehmen kann. Solange unten rechts im Fenster eine Ladeanimation angezeigt wird sollte man einfach kurz warten.
Durch das Anklicken eines Menüitems werden unter Anderem der Dateipfad und der Entwickler (!) angezeigt. Somit kann man die Extensions identifizieren, die die MacOS-Benachrichtigungen verursachen und nur gezielt solche Extensions vom Gerät löschen, indem man den Dateipfad kopiert, den Finder öffnet, den Dateipfad im Menü, das man durch die Kombination ⇧+⌘+G öffnet, einfügt, und anschliessend mit Enter bestätigt. Die Extension wird anschliessend im Finder revealt wo man diese in den Papierkorb schieben kann. In einigen Fällen kann es dazu kommen, dass Extensions nur mit einem Admin-Passwort oder gar nicht (nur bei Extensions von Apple) löschen kann.
Ich hoffe, mit diesem Kommentar jemanden geholfen zu haben. Falls du ihn in deinen Beitrag einfügen solltest würde ich mich über einen kleinen Credit („Dylan W.“ genügt) freuen.
Ich übernehme keinerlei Haftung beim Verlust von Daten oder dem Beschädigen vom MacOS-System bei der Durchführung meiner vorgeschlagenen Schritte. Um sicher zu sein sollte zuerst ein Backup erstellt und keine Extensions von Apple gelöscht werden.
PS: Im Detailmenü, welches sich öffnet, wenn man auf ein Menüitem in den Systeminformationen klickt, befindet sich der Punkt «Abhängigkeiten». Dort sieht man, ob die Extension noch kompatibel ist (Wenn «Erfüllt» steht wird sie noch unterstützt, ansonsten steht «Nicht mehr unterstützt»).
Dank dir für deine Ergänzungen. Das ist interessant!
Vielen Dank, hat mir geholfen.
Bei mir nervte beim Booten die „Ältere Systemerweiterung … von Parallels“. Meine Suche per kextload hatte nichts ergeben, es zeigte sich aber, dass diese wirklich ältere Erweiterung gar nicht geladen war sondern in einem der „Staged-Ordner“ rumgammelte, wohl von einer früheren Version.
Was mir die Suche (mit dem unverzichtbaren „Find Any File“) schwierig machte, war die Tatsache, dass die Parallels-Erweiterungen nicht „parallels_irgendwas.kext“ heißen sondern „prl_irgendwas.kext“.
Ein beherztes Aufräumen mit dem angegebenen „–clear-staging“ hat mich vom dem lästigen Dialog befreit :)
Hallo Robert! Ja, das gute, alte Find Any File. Das hat auch einen Blogbeitrag verdient! Muss ich die Tage mal machen. 😊 Schön, dass das Nervdings bei dir jetzt weg ist.