วิธีการดูและล้างเนื้อหา Mac NVRAM จาก Terminal ใน OS X

ผู้ใช้ Mac ขั้นสูงอาจพบว่าจำเป็นต้องดูหรือจัดการตัวแปรเฟิร์มแวร์ที่พบภายใน NVRAM โดยตรงในเครื่องคอมพิวเตอร์ โดยปกติ NVRAM จะมีข้อมูลเฉพาะเกี่ยวกับระบบต่างๆเช่นระดับเสียงระบบรายละเอียดดิสก์เริ่มต้นชื่อผู้ใช้ที่ใช้งานแบ็คกราวด์และความละเอียดของหน้าจอและรายละเอียดด้านเทคนิคอื่น ๆ แม้ว่าผู้ใช้ส่วนใหญ่จะไม่มีปฏิสัมพันธ์ทางธุรกิจกับ NVRAM แต่ก็มีบางครั้งที่การดูและล้างข้อมูลตัวแปร NVRAM ด้วยตนเองจะเป็นประโยชน์สำหรับการแก้ไขปัญหา

ด้วยความช่วยเหลือของเครื่องมือบรรทัดคำสั่งใน OS X ผู้ใช้ Mac สามารถอ่านและปรับเฟิร์มแวร์ได้โดยตรงใน OS X โดยไม่ต้องบูตเครื่อง Mac ใหม่และทำการรีเซ็ตค่า NVRAM ทั่วไป


นี้อาจจะไปโดยไม่บอก แต่นอกเหนือจากรายชื่อเนื้อหา nvram ผู้ใช้ควรจะไม่ลบหรือล้างตัวแปร nvram หากพวกเขาไม่ทราบว่าสิ่งที่พวกเขากำลังทำและทำไม

เมื่อต้องการเริ่มต้นให้เรียกใช้ Terminal ซึ่งพบใน / Applications / Utilities / และออกคำสั่งต่อไปนี้ขึ้นอยู่กับวัตถุประสงค์ที่คุณต้องการ:

วิธีการดูเนื้อหาทั้งหมดของ NVRAM บน Mac ปัจจุบัน

พิมพ์คำสั่งต่อไปนี้เพื่อพิมพ์เนื้อหา NVRAM ทั้งหมดในปัจจุบัน:

nvram -xp

ซึ่งจะแสดงเอาต์พุตในรูปแบบ XML ซึ่งสามารถอ่านได้มากกว่ารูปแบบดีฟอลต์ซึ่งจะอ่านด้วยค่า -p:

nvram -p

หากคุณไม่ระบุ -x flag คุณอาจจะเห็นข้อความที่อ่านไม่ออก XML และบางทีอาจเป็นข้อความธรรมดาที่อ่านได้ง่าย แต่โดยส่วนใหญ่ข้อมูลนี้จะเกี่ยวข้องกับ Mac ขั้นสูงเท่านั้น ผู้ใช้เพื่อแก้ปัญหา

ตัวอย่างของ nvram -p output อาจมีลักษณะดังนี้:
$ 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

อีกครั้งข้อมูลนี้จะเป็นข้อมูลที่ไม่มีความหมายสำหรับผู้ใช้ส่วนใหญ่ แต่ผู้ใช้ Mac ขั้นสูงสามารถหารายละเอียดที่เป็นประโยชน์ใน NVRAM ได้หากรู้ว่าควรหาอะไร

วิธีการลบ NVRAM ทั้งหมดออกจาก Command Line ใน Mac OS X

เคล็ดลับที่มีประโยชน์มากที่สุดต่อไปคือการสามารถล้าง NVRAM ด้วยสตริงคำสั่งเดียวกันได้ ในการลบตัวแปร nvram ทั้งหมดใช้ไวยากรณ์ต่อไปนี้:

nvram -c

สำหรับการเปลี่ยนแปลงมีผลคุณต้องบูตเครื่อง Mac ใหม่ดังนั้นถ้าคุณไม่ได้ทำอย่างอื่นคุณอาจต้องการเพียงแค่เริ่มต้นการรีบูตเครื่องจากบรรทัดคำสั่งในขณะที่คุณอยู่ที่นั่น

การลบตัวแปร NVRAM เฉพาะใน Mac OS X

หากต้องการเจาะจงมากขึ้นคุณสามารถกำหนดเป้าหมายตัวแปร nvram ที่กำหนดไว้สำหรับการลบด้วยธง -d:

nvram -d (variable key name goes here)

ตัวอย่างเช่นเพื่อล้างการตั้งค่าเสียงระบบจาก nvram:

nvram -d SystemAudioVolume

ไปกับ nvram Modifications

คำสั่ง nvram มีการใช้งานอื่น ๆ เช่นกันสำหรับผู้ใช้ขั้นสูงจากการตั้งค่าเช่นการปิดใช้งานเสียงเรียกเข้าสำหรับบูตเครื่องเริ่มต้นในเครื่อง Mac เพื่อเริ่มบูตเข้าโหมด verbose ใน OS X หรือแม้กระทั่งการเปิดใช้งานโหมดปลอดภัยจากสถานีสำหรับการจัดการระยะไกลหรือไม่มีหัวพิมพ์ / Mac สำหรับผู้ที่สนใจในการเรียนรู้เพิ่มเติมเกี่ยวกับคำสั่งที่มีประสิทธิภาพนี้หน้า man for nvram มีประโยชน์มากเช่นเดียวกับ flag ขั้นพื้นฐานที่จะแสดงตัวเลือกไวยากรณ์อื่น ๆ :

% 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.

ไม่ว่าคุณจะพบสิ่งที่จำเป็นหรือเรื่องง่ายนี้ขึ้นอยู่กับระดับความสามารถและความต้องการของคุณ ผู้ใช้ Mac ขั้นสูงหลายคนรู้ว่าพวกเขาสามารถตั้งค่า PRAM / NVRAM เมื่อบูตด้วยลำดับคีย์ซึ่งจะเป็นประโยชน์ในการแก้ไขปัญหาเฉพาะบางอย่างด้วยเช่นกันและวิธีนี้จะลบทุกอย่างออกจาก NVRAM คล้ายคลึงกับ flag -c ในระหว่างการบูตจริง ซึ่งอาจจะง่ายสำหรับผู้ใช้จำนวนมากที่จะจำ นี่เป็นประโยชน์อย่างยิ่งสำหรับการทำงานกับเครื่องระยะไกลที่เชื่อมต่อผ่าน SSH หรือพบในที่อื่นในเครือข่ายซึ่งจะเป็นไปไม่ได้ที่จะรีเซ็ต NVRAM ด้วยลำดับคีย์ลัด

อีกตัวอย่างหนึ่งที่การล้างข้อมูล nvram อาจเป็นประโยชน์สำหรับการแก้ไขปัญหาคือเมื่อ Mac App Store โหลดหน้าจอว่างเปล่าที่ไม่สามารถเติมข้อมูลหรือจัดเก็บข้อมูลใด ๆ ได้ ไม่ว่าด้วยเหตุผลใดธง nvram -c และการรีบูตเครื่องเกือบทุกครั้งจะช่วยแก้ปัญหาดังกล่าวได้โดยลำพัง