Jak wyświetlić & Wyczyść zawartość NVRAM komputera Mac z terminala w systemie Mac OS X
Zaawansowani użytkownicy komputerów Mac mogą uznać za konieczne przeglądanie lub bezpośrednią manipulację zmiennymi oprogramowania układowego znajdującymi się w pamięci NVRAM na komputerze. Zwykle pamięć NVRAM zawiera określone dane systemowe, takie jak poziom dźwięku systemu, szczegóły dysku startowego, nazwa aktywnego użytkownika, podświetlenie i rozdzielczość ekranu oraz inne szczegóły techniczne. Podczas gdy większość użytkowników nie zajmuje się interakcją z NVRAM, czasami ręczne przeglądanie i usuwanie zmiennych NVRAM może być korzystne dla celów rozwiązywania problemów.
Za pomocą narzędzia wiersza poleceń w systemie Mac OS X użytkownicy komputerów Mac mogą bezpośrednio odczytywać i dostosowywać oprogramowanie układowe w systemie Mac OS bez konieczności ponownego uruchamiania komputera Mac i ogólnego resetowania pamięci NVRAM.
To chyba oczywiste, ale poza wyświetlaniem zawartości nvram, użytkownicy absolutnie nie powinni usuwać ani czyścić zmiennych nvram, jeśli nie wiedzą dokładnie, co robią i dlaczego.
Aby rozpocząć, uruchom Terminal znajdujący się w /Aplikacje/Narzędzia/ i wydaj następujące polecenia, w zależności od pożądanego celu:
Jak wyświetlić całą zawartość NVRAM na bieżącym komputerze Mac
Wydaj następujące polecenie, aby wydrukować całą bieżącą zawartość NVRAM:
nvram -xp
Spowoduje to wyświetlenie danych wyjściowych w formacie XML, który jest znacznie bardziej czytelny niż format domyślny, który jest odczytywany za pomocą opcji -p:
nvram -p
Jeśli nie określisz flagi -x, prawdopodobnie zobaczysz dużo bełkotu, XML i być może domieszkę zwykłego tekstu, który jest łatwy do odczytania, ale w większości te dane są będzie dotyczyć tylko zaawansowanych użytkowników komputerów Mac w celu rozwiązywania problemów.
Przykładowe wyjście polecenia nvram -p może wyglądać następująco: $ 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
Ponadto dla większości użytkowników będą to bez znaczenia dane, ale zaawansowani użytkownicy komputerów Mac mogą znaleźć przydatne informacje w pamięci NVRAM, jeśli wiedzą, czego szukać.
Jak wyczyścić całą pamięć NVRAM z wiersza poleceń w systemie Mac OS X
Następną najbardziej użyteczną sztuczką jest możliwość wyczyszczenia pamięci NVRAM za pomocą tego samego ciągu poleceń. Aby usunąć wszystkie zmienne nvram, użyj następującej składni:
nvram -c
Aby zmiany odniosły skutek, musisz ponownie uruchomić komputer Mac, więc jeśli nie robisz czegoś innego, możesz po prostu zainicjować ponowne uruchomienie z wiersza poleceń, gdy tam jesteś.
Usuwanie określonych zmiennych NVRAM w systemie Mac OS X
Aby być bardziej szczegółowym, możesz również wskazać ustawioną zmienną nvram do usunięcia za pomocą flagi -d:
nvram -d (tutaj znajduje się nazwa klucza zmiennej)
Na przykład, aby wyczyścić ustawienia audio systemu z nvram:
nvram -d SystemAudioVolume
Idąc dalej z modyfikacjami nvram
Polecenie nvram ma również inne zastosowania dla zaawansowanych użytkowników, od ustawień, takich jak wyłączenie dźwięku gongu startowego rozruchu na komputerze Mac, po ciągłe uruchamianie w trybie pełnym w systemie Mac OS X, a nawet włączanie trybu bezpiecznego rozruchu z terminal do zdalnego zarządzania lub bezgłowy/bez klawiatury Mac. Dla tych, którzy chcą dowiedzieć się więcej o tym potężnym poleceniu, strona podręcznika dla nvram jest bardzo pomocna, podobnie jak podstawowa flaga –help, aby pokazać inne opcje składni:
% nvram --helpvram: (użycie: nie ma takiej opcji jak --)vram nazwa … -x użyj formatu XML do drukowania lub odczytu zmiennych (musi pojawić się przed - p lub -f) -p wypisuje wszystkie zmienne oprogramowania układowego -f ustawia zmienne oprogramowania układowego z pliku tekstowego -d usuwa nazwaną zmienną -c usuwa wszystkie zmiennetaka sama=wartość ustawia nazwę zmiennejnazwawypisuje zmiennązauważ, że argumenty i opcje są wykonywane w kolejności.
To, czy uznasz to za konieczne, czy łatwe, naprawdę zależy od Twojego poziomu umiejętności i potrzeb.Wielu zaawansowanych użytkowników komputerów Mac wie, że podczas rozruchu można również zresetować pamięć PRAM/NVRAM za pomocą sekwencji klawiszy, co może być również pomocne w rozwiązywaniu niektórych konkretnych problemów, a takie podejście usuwa wszystko z pamięci NVRAM, podobnie jak flaga -c podczas rzeczywistego ponownego uruchomienia co jest być może łatwiejsze do zapamiętania dla wielu użytkowników. Jest to szczególnie cenne w przypadku pracy ze zdalnymi maszynami połączonymi przez SSH lub znajdującymi się w innym miejscu sieci, gdzie niemożliwe byłoby ręczne zresetowanie pamięci NVRAM za pomocą sekwencji skrótów klawiaturowych.
Innym typowym przykładem, w którym wyczyszczenie nvram może być przydatne do rozwiązywania problemów, jest sytuacja, gdy Mac App Store ładuje pusty ekran, który nie jest wypełniony żadną zawartością ani przechowywanymi danymi. Z jakiegokolwiek powodu flaga nvram -c i ponowne uruchomienie prawie zawsze rozwiązuje sam ten problem.