So können Sie den Mac-NVRAM-Inhalt vom Terminal in OS X anzeigen und löschen

Fortgeschrittene Mac-Benutzer finden es möglicherweise notwendig, Firmware-Variablen, die im NVRAM auf dem Computer gefunden wurden, anzuzeigen oder direkt zu manipulieren. Typischerweise enthält der NVRAM spezifische Systemdaten über Dinge wie die Systemaudiopegel, Startdiskettendetails, einen aktiven Benutzernamen, Bildschirmhinterleuchtung und -auflösung und andere technische Details. Während die meisten Benutzer nicht mit NVRAM interagieren, gibt es Zeiten, in denen das manuelle Anzeigen und Löschen von NVRAM-Variablen für die Fehlerbehebung von Vorteil sein kann.

Mit Hilfe eines Befehlszeilen-Tools in Mac OS X können Mac-Benutzer Firmware in OS X direkt lesen und anpassen, ohne den Mac neu starten und einen allgemeinen NVRAM-Reset durchführen zu müssen.


Dies ist wahrscheinlich selbstverständlich, aber abgesehen von der Aufzählung der NVRAM-Inhalte sollten Benutzer nVram-Variablen nicht löschen oder löschen, wenn sie nicht genau wissen, was sie tun und warum.

Um zu starten, starten Sie das Terminal, finden Sie unter / Programme / Dienstprogramme / und geben Sie die folgenden Befehle aus, abhängig von Ihrem gewünschten Ziel:

So zeigen Sie alle NVRAM-Inhalte auf dem aktuellen Mac an

Geben Sie den folgenden Befehl aus, um alle aktuellen NVRAM-Inhalte auszugeben:

nvram -xp

Dadurch wird die Ausgabe im XML-Format angezeigt, die deutlich lesbarer ist als das Standardformat, das mit dem Flag -p gelesen wird:

nvram -p

Wenn Sie das Flag -x nicht angeben, sehen Sie wahrscheinlich eine Menge Kauderwelsch, XML und vielleicht etwas Klartext, der leicht lesbar ist, aber diese Daten werden größtenteils nur für fortgeschrittene Macs relevant sein Benutzer für die Fehlersuche.

Ein Beispiel für die nvram -p-Ausgabe könnte folgendermaßen aussehen:
$ nvram -p
efi-apple-payload-data %20%10%00%CC%00U%00P%00D%00A%20%10%00%CC%00U%00P%00D%00A%20%10%00%CC%00U%00P%00D%00A%20%00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A00U%00P%00D%00A
efi-boot-device IOMatchIOProviderClassIOMediaIOPropertyMatchUUIDBD2CB9D3-8A79-4E2F-94E2-C5EC9FEBBA64BLLastBSDNamedisk0s3%00
SystemAudioVolumeDB %00
prev-lang:kbd en:0

Auch dies ist für die meisten Benutzer bedeutungslos, aber fortgeschrittene Mac-Benutzer können hilfreiche Details im NVRAM finden, wenn sie wissen, wonach sie suchen sollen.

So löschen Sie alle NVRAM über die Befehlszeile in Mac OS X

Der nächste nützliche Trick besteht darin, NVRAM mit derselben Befehlszeichenfolge löschen zu können. Um alle nvram-Variablen zu löschen, verwenden Sie einfach die folgende Syntax:

nvram -c

Damit die Änderungen wirksam werden, müssen Sie den Mac neu starten. Wenn Sie nicht gerade etwas anderes tun, möchten Sie möglicherweise einen Neustart von der Befehlszeile aus starten, während Sie dort sind.

Löschen bestimmter NVRAM-Variablen unter Mac OS X

Um genauer zu sein, können Sie auch eine festgelegte nvram-Variable zum Entfernen mit dem Flag -d ansteuern:

nvram -d (variable key name goes here)

Um beispielsweise die Systemaudioeinstellung von nvram zu löschen:

nvram -d SystemAudioVolume

Mit nvram-Modifikationen weiter gehen

Der nvram-Befehl kann auch für fortgeschrittene Benutzer verwendet werden, von Einstellungen wie dem Deaktivieren des Starts des Startklingel-Sounds auf einem Mac bis hin zum Starten des ausführlichen Modus in OS X oder sogar zum Aktivieren des sicheren Boot-Modus vom Terminal für Remote-Management oder kopflos / tastaturlos Mac. Für diejenigen, die mehr über diesen mächtigen Befehl erfahren möchten, ist die man-Seite für nvram sehr hilfreich, ebenso wie das grundlegende Hilfeflag, um andere Syntaxoptionen anzuzeigen:

% nvram --help
nvram: (usage: no such option as --)
nvram [-x] [-p] [-f filename] [-d name] [-c] name[=value] ...
-x use XML format for printing or reading variables
(must appear before -p or -f)
-p print all firmware variables
-f set firmware variables from a text file
-d delete the named variable
-c delete all variables
name=value set named variable
name print variable
Note that arguments and options are executed in order.

Ob Sie das nötig oder leicht finden, hängt von Ihrem Können und Ihren Bedürfnissen ab. Viele fortgeschrittene Mac-Benutzer wissen, dass sie das PRAM / NVRAM beim Booten auch mit einer Tastenfolge zurücksetzen können, was bei der Behebung bestimmter Probleme hilfreich sein kann, und diese Vorgehensweise entfernt während eines tatsächlichen Neustarts alles vom NVRAM, ähnlich dem Flag -c. das ist vielleicht für viele Benutzer leichter zu merken. Dies ist besonders nützlich für die Arbeit mit Remote-Computern, die über SSH verbunden sind oder sich an einer anderen Stelle im Netzwerk befinden, wo es unmöglich wäre, NVRAM manuell mit einer Tastenkombination wiederherzustellen.

Ein weiteres gängiges Beispiel, bei dem das Löschen von NVRAM für die Fehlersuche nützlich sein kann, ist, wenn der Mac App Store eine leere Anzeige lädt, die keinen Inhalt enthält oder Daten speichert. Aus irgendeinem Grund behebt das nvram -c-Flag und das Neustarten fast immer dieses Problem allein.