วิธีแก้ปัญหาที่ให้ไว้มีเพียงคำแนะนำที่ดีพอที่จะทำให้เครื่องบูตเครื่องได้มากพอที่จะทำการสำรองข้อมูลและดำเนินการต่อไป การทำตามคำแนะนำที่นี่จะให้สีสำหรับบูตเครื่องที่คุณสามารถเข้าสู่ระบบได้ แต่ไม่ต้องเร่งความเร็ว GUI อย่างเหมาะสม ทำให้ MacBook ใช้งานไม่ได้เกือบ นี่เป็นอีกทางเลือกหนึ่งที่จะปิดการใช้งานชิป AMD ที่ผิดปกติ แต่ให้กราฟิก Intel ที่ถูกต้องและการจัดการระบายความร้อนได้ดีกว่าการลบส่วนขยายเคอร์เนลที่เกี่ยวข้องกับ AMD / Ati ทั้งหมด
ความเป็นมาและคำอธิบาย
โปรแกรม Apple Repair Extension ไม่สามารถใช้ได้อีกต่อไป วิธีเดียวที่แท้จริงในการแก้ไขปัญหานี้คือการแทนที่ชิป AMD เพียงอย่างเดียว ไม่ใช่บอร์ดตรรกะ ไม่ใช่ "re-balling" ไม่ใช่ "reflowing" ไม่ใช่ "อบ" Apple เปลี่ยนชิปที่ล้มเหลวด้วยชิปที่ล้มเหลว ครั้งแล้วครั้งเล่า. การเปลี่ยนชิปกราฟิกเท่านั้นยังคงเป็นกระบวนการฮาร์ดแวร์ที่มีราคาแพงสำหรับแล็ปท็อปแบบโบราณ
วิธีเดียวที่รู้จัก - นั่นคือ: ด้วยซอฟต์แวร์เพียงอย่างเดียว - เพื่อรับ 2011 MacBook Pro (8,2) กับ 'เท่านั้น' ชิปกราฟิก AMD ที่ล้มเหลวในการเปิดใช้งานอีกครั้งอย่างน่าเชื่อถือและสามารถใช้ได้กับ GUI เร่งความเร็วเป็นคู่มือนี้หรือ รูปแบบของมัน เคล็ดลับก่อนหน้าส่วนใหญ่เพิ่งลบ AMD-kexts ทั้งหมดและผลลัพธ์นี้เป็นประสบการณ์ที่น่ากลัวสำหรับผู้ใช้
จำเป็นต้องรู้เวอร์ชันระบบปฏิบัติการที่แน่นอนของคุณ คำแนะนำต่อไปนี้จะง่ายกว่าสำหรับ Yosemite แต่ถือว่า El Capitan หรือใหม่กว่า El Capitan, Sierra และ High Sierra ต้องปิดใช้งาน SIP (System Integrity Protection) ในระบบก่อนหน้า (10.6–10.10) ขั้นตอนเหล่านี้ไม่จำเป็น
คู่มือนี้จะถือว่า kexts ทั้งหมดยังคงอยู่ในตำแหน่งเริ่มต้น / ระบบ / ไลบรารี / ส่วนขยาย การมี AMD-kexts ทั้งหมดนั้นจะมีประโยชน์อย่างหนึ่งสำหรับการดำเนินการ 'เหมาะสม'
ในการรับการเร่งความเร็วการแสดงผลกลับจำเป็นต้องบังคับให้เครื่องไม่บู๊ตด้วยกราฟิกแยก (dGPU) แต่เข้าสู่กราฟิกอินทิเกรต (iGPU) โดยตรง สิ่งนี้จะให้แล็ปท็อปของคุณกลับมา แต่คุณจะสูญเสียคุณสมบัติบางอย่างเช่นความสามารถในการขับเคลื่อนจอแสดงผลภายนอก การเชื่อมต่อข้อมูล Thunderbolt ควรใช้งานได้
ขั้นตอนเริ่มต้น:
- วิธีเริ่มจากกระดานชนวนสะอาด: รีเซ็ต SMC และ PRAM / NVRAM:
ปิดเครื่องถอดปลั๊กทุกอย่างยกเว้นกำลังไฟถือตอนนี้
<leftShift>+<Ctrl>+<Opt>+<Power>
ปล่อยในเวลาเดียวกัน;
- ตอนนี้เปิดเครื่องอีกครั้งและถือ
<Cmd>+<Opt>+<p>+<r>
ในเวลาเดียวกันจนกว่าคุณจะได้ยินเสียงระฆังเริ่มต้นสองครั้ง
- บูตเข้าสู่ Recovery โดยถือ
<Cmd>+<r>+<s>
- ปิดการใช้งาน SIP:
csrutil disable
- ปิดการใช้งาน dGPU ในการบูต
nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00
- เปิดใช้งานโหมดการบูตแบบละเอียด:
nvram boot-args="-v"
- รีบูตเข้าสู่โหมดผู้ใช้คนเดียวโดยถือ
<Cmd>+<s>
ในการบูต
- เมาท์พาร์ติชันรูทแบบเขียนได้
/sbin/mount -uw /
- สร้างไดเรกทอรีสำรอง - kext
mkdir -p /System/Library/Extensions-off
- ย้ายเพียงหนึ่งรุกที่ผิดออกไปทาง:
mv /System/Library/Extensions/AMDRadeonX3000.kext /System/Library/Extensions-off/
- ให้ระบบอัปเดต kextcache:
touch /System/Library/Extensions/
- รอให้กระบวนการ kextcache เสร็จสิ้น
รีบูตตามปกติ: คุณจะมีหน้าจอ iGPU แบบเร่ง แต่ระบบไม่ทราบวิธีจัดการพลังงานของชิป AMD ที่ล้มเหลว เพื่อที่คุณจะต้อง manaully โหลด kext หลังจากบูตโดย:
sudo kextload /System/Library/Extensions-off/AMDRadeonX3000.kext
ทำสิ่งนี้โดยอัตโนมัติด้วย LoginHook ต่อไปนี้:
sudo mkdir -p /Library/LoginHook
sudo nano /Library/LoginHook/LoadX3000.sh
มีเนื้อหาดังต่อไปนี้:
#!/bin/bash
kextload /System/Library/Extensions-off/AMDRadeonX3000.kext
exit 0
จากนั้นทำให้สามารถเรียกทำงานและใช้งานได้:
sudo chmod a+x /Library/LoginHook/LoadX3000.sh
sudo defaults write com.apple.loginwindow LoginHook /Library/LoginHook/LoadX3000.sh
มาตรการป้องกันสำหรับการใช้งานในอนาคต
มีข้อควรรู้เพิ่มเติมอีกสองประการ: สิ่งนี้สามารถย้อนกลับได้เมื่อรีเซ็ต SMC / PRAM / NVRAM หากสิ่งนั้นเกิดขึ้น GPU-power-pref nvram สามารถ / ต้องถูกตั้งค่าอีกครั้งเพื่อบังคับใช้ iGPU จากเวลาบูต
เนื่องจากสิ่งนี้สามารถเกิดขึ้นได้ง่าย ๆ (และมักจะแนะนำวิธีที่ผิดพลาดบ่อยครั้งกว่าที่เป็นประโยชน์จริง ๆ ) คุณควรเตรียมสำหรับสถานการณ์ดังกล่าวและสร้างสคริปต์ง่าย ๆ เพื่อเพิ่มความเร็วของกระบวนการและทำให้ป้อนตัวแปรที่จำเป็นมาก ข้อผิดพลาดน้อยง่าย:
sudo nano /force-iGPU-boot.sh
- ป้อนเนื้อหาต่อไปนี้ในไฟล์นี้:
#/bin/sh
sudo nvram boot-args="-v"
sudo nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00
exit 0
- ตอนนี้ทำให้ปฏิบัติการที่:
sudo chmod a+x /force-iGPU-boot.sh
ในอนาคตเมื่อ SMC / PRAM / NVRAM ถูกรีเซ็ตเป็นค่าเริ่มต้นตอนนี้คุณสามารถบูตเข้าสู่ SingleUser ด้วย:
<Cmd>+<s>
- และหลังจากติดตั้งปริมาณการบูตอ่าน - เขียนเพื่อดำเนินการเพียง:
sh /force-iGPU-boot.sh
การตั้งค่านี้มีหนึ่ง kext อยู่ในที่ซึ่งผู้ติดตั้งของ Apple ไม่คาดหวัง นั่นคือเหตุผลที่คู่มือนี้ยังไม่ได้เปิดใช้งานอีกครั้ง หากการอัพเดทที่มีการเปลี่ยนแปลงไดรเวอร์ AMD กำลังจะเกิดขึ้นแนะนำให้ทำการย้อนกลับ AMDRadeonX3000.kext ไปยังตำแหน่งเริ่มต้นก่อนที่จะทำการอัพเดต มิฉะนั้นตัวอัปเดตจะเขียนอย่างน้อย kext อื่นของเวอร์ชันที่แตกต่างกันไปยังตำแหน่งเริ่มต้นหรือที่แย่ที่สุดคุณต้องจบด้วยสถานะที่ไม่ได้กำหนดของไดรเวอร์ที่ไม่ตรงกันบางส่วน
หลังจากอัปเดตระบบใด ๆ จะต้องตรวจสอบโฟลเดอร์ / ระบบ / ไลบรารี / ส่วนขยายสำหรับ kext ที่ละเมิด การปรากฏตัวของมันจะนำไปสู่เช่นการบูตที่แขวนบนโยเซมิตีและเซียร่าการวนรอบการบูตร้อนเกินไปใน High Sierra
เพิ่มเติม: แล็ปท็อปนี้มีความร้อนสูงเกินไปไม่ว่าคุณจะทำอะไร ระบบระบายความร้อนไม่เพียงพอและชิป AMD ที่ล้มเหลวเป็นจำนวนมากก็เป็นเครื่องพิสูจน์ได้
เพื่อยืดอายุของเครื่องที่ถูกแฮ็กตอนนี้ขอแนะนำให้งดเว้นจากการยกของหนัก ๆ ปฏิบัติตามคำแนะนำปกติสำหรับแล็ปท็อปอย่างเคร่งครัด: ใช้บนพื้นผิวแข็งรักษาพัดลมและครีบภายในให้สะอาด การใช้ซอฟต์แวร์ fancontrol ด้วยการตั้งค่าที่ค่อนข้างก้าวร้าวก็ควรช่วยเช่นsmcFanControl , MacsFanControl หรือ TGPro (เชิงพาณิชย์)
ข้อจำกัดความรับผิดชอบ: คำตอบนี้ซ้ำกับที่นี่ซ้ำสำหรับคำถามนี้เนื่องจากสำหรับคำถามนี้มีคำตอบที่ไม่ดีมากมาย