Hur man visar & Rensa Mac NVRAM-innehållet från terminalen i Mac OS X
Avancerade Mac-användare kan finna det nödvändigt att visa eller direkt manipulera firmwarevariabler som finns i NVRAM på datorn. Vanligtvis innehåller NVRAM specifik systemdata om saker som systemets ljudnivå, startdiskdetaljer, ett aktivt användarnamn, bakgrundsbelysning och upplösning på skärmen och andra tekniska detaljer. Även om de flesta användare inte har någon verksamhet att interagera med NVRAM, finns det tillfällen då manuell visning och borttagning av NVRAM-variabler kan vara fördelaktigt för felsökningsändamål.
Med hjälp av ett kommandoradsverktyg i Mac OS X kan Mac-användare direkt läsa och justera firmware i Mac OS utan att behöva starta om Mac och utföra en allmän NVRAM-återställning.
Detta är förmodligen självklart, men förutom att lista nvram-innehållet, bör användare absolut inte ta bort eller rensa nvram-variabler om de inte vet exakt vad de gör och varför.
För att komma igång, starta terminalen, som finns i /Applications/Utilities/ och utfärda följande kommandon, beroende på önskat mål:
Hur man visar allt NVRAM-innehåll på nuvarande Mac
Utför följande kommando för att skriva ut allt aktuellt NVRAM-innehåll:
nvram -xp
Detta visar utdata i XML-format, vilket är mycket mer läsbart än standardformatet, som läses med flaggan -p:
nvram -p
Om du inte anger -x-flagga, kommer du sannolikt att se en hel del floskler, XML och kanske lite vanlig text blandat in som är lätt att läsa, men för det mesta är denna data kommer endast att vara relevant för avancerade Mac-användare i felsökningssyfte.
Ett exempel på nvram -p-utgång kan se ut så här: $ 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%000D%U000A%U000A %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
Återigen, detta kommer att vara meningslös data för de flesta användare men avancerade Mac-användare kan hitta användbara detaljer i NVRAM om de vet vad de ska leta efter.
Hur rensar du allt NVRAM från kommandoraden i Mac OS X
Det näst mest användbara tricket är att kunna rensa ut NVRAM med samma kommandosträng. För att ta bort alla nvram-variabler använd bara följande syntax:
nvram -c
För att ändringarna ska träda i kraft måste du starta om Mac-datorn, så om du inte gör något annat kanske du vill starta en omstart från kommandoraden medan du är där.
Ta bort specifika NVRAM-variabler på Mac OS X
För att vara mer specifik kan du också rikta in en uppsättning nvram-variabel för borttagning med flaggan -d:
nvram -d (variabelns nyckelnamn går hit)
Till exempel, för att rensa systemljudinställningen från nvram:
nvram -d SystemAudioVolume
Gå vidare med nvram-ändringar
Nvram-kommandot har andra användningsområden också för avancerade användare, från inställningar som att inaktivera startljudet för startljud på en Mac till att alltid starta upp i verbose läge i Mac OS X eller till och med aktivera säkert startläge från terminal för fjärrhantering eller en huvudlös/tangentbordslös Mac. För dem som är intresserade av att lära sig mer om detta kraftfulla kommando är man-sidan för nvram ganska användbar, liksom den grundläggande –hjälpflaggan för att visa andra syntax alternativ:
% nvram --helpvram: (användning: inget alternativ som --)vram namn … -x använd XML-format för att skriva ut eller läsa variabler (måste visas före - p eller -f) -p skriv ut alla firmwarevariabler -f ställ in firmwarevariabler från en textfil -d ta bort den namngivna variabeln -c radera alla variablesame=värdeuppsättning med namnet variableame skriv ut variabelnote att argument och alternativ exekveras i ordning.
Om du tycker att detta är nödvändigt eller enkelt beror verkligen på din kompetensnivå och dina behov.Många avancerade Mac-användare vet att de också kan återställa PRAM / NVRAM vid uppstart med en nyckelsekvens, vilket också kan vara till hjälp vid felsökning av vissa specifika problem, och det tillvägagångssättet tar bort allt från NVRAM som liknar flaggan -c under en faktisk omstart, vilket kanske är lättare för många användare att komma ihåg. Detta är särskilt värdefullt för att arbeta med fjärrdatorer som är anslutna via SSH eller finns någon annanstans i nätverket, där det skulle vara omöjligt att manuellt återställa NVRAM med en kortkommandosekvens.
Ett annat vanligt exempel där att rensa nvram kan vara fördelaktigt för felsökningsändamål är när Mac App Store laddar en tom skärm som inte fylls med något innehåll eller lagrar data. Av någon anledning löser nvram -c-flaggan och omstart nästan alltid det problemet ensam.