Sammelthread für IOREG-Befehle -> Welche kennt Ihr denn noch?

  • Hallöchen,


    viele von Euch haben schon mal vom IORegistryExplorer gehört, der in seiner ganzen Pracht eine IOREG-Datei mit den wirklich spannenden Daten Eures Systems erstellen und im Unterstützungsfall sehr viele sachdienliche Hinweise aufzeigen kann.


    Das geht aber auch ohne das Programm und zwar über den Terminal-Befehl ioreg.
    Die Hilfe im Terminal gibt uns folgende Infos zu dem Befehl:


    Wenn man den einfach so im Terminal ausführt, ohne zusätzlichen Parameter, wird man sofort mit einer Vielzahl von Daten überschüttet.
    Da wir aber meist wissen, was wir suchen *räusper* geht das auch mit gezielten Kombinationen aus Parametern.


    Der erste Ansatz ist schon mal die Unterscheidung der Bereich IOService, IODeviceTree und IOACPIPlane


    IOService zeigt die mit Kext versorgten Geräte im System und deren eingestellten Parameter an.
    IODeviceTree zeigt zusätzlich spannende Hardware-Eigenschaften, wie Hersteller- und Geräte-ID (vendor-id, device-id)
    IOACPIPlane gibt zusätzlich ACPI-Details der einzelnen Geräte an.


    Hier mal ein Beispiel für die Broadcom BCM4360 in meinem Kabylake-System.


    Der Befehl für die Abfrage im Bereich IODeviceTree sieht wie folgt aus:

    Code
    1. ioreg -p IODeviceTree -n ARPT -r


    "-p" gibt den Startpunkt für die Abfrage an - in diesem Falle "IODeviceTree"
    "-n" gibt die Details des nachfolgenden Gerätenamens aus - in diesem Falle "ARPT"
    "-r" gibt auch verzweigte Unterinfos aus...


    Das Ergebnis könnt Ihr wiederum hier bestaunen:


    Vergleicht mal in dem Ergebnis die Werte für "vendor-id" und "device-id" zum Wert von "IOName"... :D


    Und hier der Befehl für die Abfrage zur Broadcom BCM4360 unter "IOService":

    Code
    1. ioreg -f -p IOService -n ARPT -r


    Und passend dazu natürlich auch das Ergebnis:


    Wie Ihr unschwer erkennen könnt, wird hier der "IODeviceTree"-Anteil und die Infos zum eingesetzten Kext (AirPort_BrcmNIC) aufgeführt.


    Ihr werdet Euch nun fragen "Und warum jetzt dieser Thread? Soll er uns doch alle möglichen Kombinationen des Befehls hier einfach auflisten..." ;)


    NeNeNe... Ich möchte von Euch wissen, welche spannenden Infos Ihr mit dem Befehl aus dem Terminal locken könnt... :D
    Was nicht erwünscht ist, sind Abfragen, welche die SMBIOS- oder NVRAM-Daten des Systems ermitteln und präsentieren würden.


    Na dann... Los geht's und viel Spaß beim Tüfteln...

    Gruß
    Al6042

    Keine Unterstützung per PN oder Pinnwand... Eure Anfragen gehören ins Forum, nicht in mein Postfach!

  • Erster!!! :D


    Befehl zum Prüfen des Inhalts von "HDEF", dem internen AudioCodec:

    Code
    1. ioreg -p IODeviceTree -n HDEF -r


    Ergebnis:


    Übrigens -> Man kann im Terminal mit dem "grep"-Befehl die Ausgabe auf einzelne Objekte einschränken:
    Befehl:

    Code
    1. ioreg -p IODeviceTree -n IGPU | grep hda-gfx


    Ergebnis:

    Code
    1. al6042-iMac:~ al6042$ ioreg -p IODeviceTree -n IGPU | grep hda-gfx
    2. | | "hda-gfx" = <"onboard-1">


    Befehl:

    Code
    1. ioreg -p IODeviceTree -n GFX0 | grep hda-gfx


    Ergebnis:

    Code
    1. al6042-iMac:~ al6042$ ioreg -p IODeviceTree -n GFX0 | grep hda-gfx
    2. | | | | "hda-gfx" = <"onboard-2">

    Gruß
    Al6042

    Keine Unterstützung per PN oder Pinnwand... Eure Anfragen gehören ins Forum, nicht in mein Postfach!

  • Auch wenn ich kein Freund von IORegistryExplorer bin, hier einige weitere Terminal Befehle.


    Code
    1. ioreg -l -w0 -p IODeviceTree > derHackfan.ioreg.txt



    Code
    1. ioreg -l -w0 > ioreg.txt



    Code
    1. ioreg -p IODeviceTree -n HDEF | grep layout-id


  • Batterie-Infos auslesen


    ioreg -l | grep Capacity

    iMac17,1 GA-Z170N WiFi F22f |i5-6600 HD530 |RX560 |16GB |250GB SSD |macOS 14.4 |*
    MacBook9,1XiaoMi Air 12,5"(erster XiaoMi im Forum)|M3 6Y30 HD515 |4GB |128 & 250GB SSD |macOS 11.6 |Clover
    MacBookPro15,4XiaoMi-Pro-15,6" |i5-8250U UHD620 |8GB |250 & 250GB SSD |macOS 14.4 |*
    MacBookPro16,1XiaoMi RedMi 14" (erster RedMe im Forum)|i7-10510U | 8GB | 512GB SSD | macOS 14.4 |*
    MacMini8,1 NVISEN Y-MU01(erster NVISEN im Forum)|i7-10510U |24GB |256GB SSD |macOS 14.4 |*
    MacMini8,1HYSTOU S210H (Adventskalender vs. DSM2 samt Fake Profil)|i9-9880H UHD630|32GB |250GB SSD |macOS 14.4 |*
    MacMini8,1HYSTOU P05B (erster Hack mit OpenCore im Forum)|I7-8550U UHD620|16GB |500GB SSD |macOS 14.4 |*

    * BootLoader OpenCore REL-100-2024-03-12


    Experte ist nicht immer gleich Expertise

  • Hallo, wie kann ich mit ioreg herausfinden ob eine Kamera erkannt wird. Kann ich nach Kamera suchen? Was ist der beste Weg festzustellen ob eine Kamera erkannt wird?


  • al6042 Weißt du vielleicht, wie ich mir über ioreg anzeigen lassen, ob mein Apple TV als Display mit dem Mac verbunden ist?

    Ich würde über EventScripts gerne nen Befehl auslösen, sobald das Apple TV verbunden ist.


    Das sähe dann auszugsweise so aus:


    if "Apple TV" is in (do shell script "ioreg -l | grep 'XYXYXYXYXY?") then

    tell application "Shortcuts" to run shortcut "Fernseher anschalten"

    end if


    Mir fehlt jetzt eigentlich nur der Teil hinter "grep". ;-)

    HACKINTOSH für Musik- und Videoproduktion

    EFI-Ordner für mein System:

    Gigabyte Z390 DESIGNARE: OpenCore-EFI-Ordner und Anleitung

  • Dafür müsstest du mit dem IORegistryExplorer mal schauen, wo sich in der IOReg ein Eintrag für den "Apple TV" zu finden ist, wenn die Verbindung hergestellt ist.

    Damit kannst du den jeweiligen IODeviceTree eingrenzen und den richtigen "grep"-String identifizieren.

    Da ich keinen Apple TV habe, kann ich leider nicht selbst nachschauen.

    Gruß
    Al6042

    Keine Unterstützung per PN oder Pinnwand... Eure Anfragen gehören ins Forum, nicht in mein Postfach!

  • Danke dir! Leider taucht das Apple TV im IORegistryExplorer überhaupt nicht auf. Liegt wohl daran, dass es ein AirPlay-Gerät ist.

    Wobei ich hier nicht ganz durchsteige. In den Systeminformationen ist es jedenfalls zu sehen.


    EDIT: Hurra, ich hab einen anderen Befehl gefunden, der mir das Apple TV anzeigt:

    system_profiler SPDisplaysDataType


    So bekomme ich es jetzt hin. :-)

    HACKINTOSH für Musik- und Videoproduktion

    EFI-Ordner für mein System:

    Gigabyte Z390 DESIGNARE: OpenCore-EFI-Ordner und Anleitung

    Einmal editiert, zuletzt von JimSalabim ()