これまでに示した解決策は、バックアップを作成して先に進むためにマシンを十分に起動するための十分なアドバイスにすぎません。ここでのアドバイスに従うと、GUIを適切に加速せずにログインできる色の起動Macのみが提供されます。そのため、MacBookはほとんど使用できなくなります。故障したAMDチップを無効にし、AMD / Ati関連のすべてのカーネル拡張を単に削除するよりも、Intelグラフィックスを適切に加速し、より優れた熱管理を提供する代替手段を次に示します。
背景と説明
Apple Repair Extensionプログラムは使用できなくなりました。この問題を解決する唯一の本当の方法は、AMDチップのみを交換することです。ロジックボードではありません。「リボール」、「リフロー」、「ベーキング」ではありません。Appleは、故障したチップを故障したチップと交換しました。何度も。このようなビンテージラップトップでは、グラフィックチップを交換するだけでハードウェアのコストが高くなります。
唯一の既知の方法-つまり:ソフトウェアのみ-故障したAMDグラフィックチップのみを搭載した2011 MacBook Pro(8,2)を入手し、ほぼ確実に再起動し、高速GUIで使用できるようにする方法は、このガイドまたはそれのバリエーション。これまでのヒントのほとんどは、すべてのAMD-kextを削除しただけであり、これはひどいユーザーエクスペリエンスをもたらします。
OSの正確なバージョンを知る必要があります。次のガイドはヨセミテではより簡単ですが、エルキャピタン以降を想定しています。El Capitan、Sierra、High Sierraでは、SIP(システム整合性保護)を無効にする必要があります。以前のシステム(10.6〜10.10)では、これらの手順は不要です。
このガイドでは、すべてのkextがデフォルトの場所/ System / Library / Extensionsにあることを前提としています。1つを除くすべてのAMD-kextが存在することは、「適切な」操作に有益です。
ディスプレイアクセラレーションを元に戻すには、ディスクリートグラフィックス(dGPU)ではなく、統合グラフィックス(iGPU)で直接起動するようにマシンを強制する必要があります。これによりラップトップが返されますが、外部ディスプレイを駆動する機能など、いくつかの機能が失われます。Thunderboltデータ接続が機能するはずです。
初期手順:
–クリーンな状態から開始するには、SMCとPRAM / NVRAMをリセットします。
シャットダウン、電源以外のすべてのプラグを抜いて、今ホールド
<leftShift>+<Ctrl>+<Opt>+<Power>
同時にリリース。
–再び電源を入れたままにします
<Cmd>+<Opt>+<p>+<r>
起動音が2回聞こえるまで同時に。
–ホールドしてリカバリを起動します
<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-backupディレクトリを作成します
mkdir -p /System/Library/Extensions-off
–問題のあるkextを1つだけ移動します。
mv /System/Library/Extensions/AMDRadeonX3000.kext /System/Library/Extensions-off/
–システムにkextcacheを更新させます。
touch /System/Library/Extensions/
– kextcacheプロセスが完了するのを待ちます
通常どおり再起動します。iGPUディスプレイが加速されますが、システムは故障したAMDチップの電源管理方法を知りません。そのためには、ブート後に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
将来の使用のための予防措置
さらに2つの注意点があります。これは、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
このセットアップには、Appleのインストーラーが予期しない場所に1つのkextがあります。そのため、このガイドではSIPが再度有効化されていません。AMDドライバーへの変更を含む更新が行われようとしている場合、更新プロセスの前に AMDRadeonX3000.kextをデフォルトの場所に戻すことをお勧めします。そうでない場合、アップデーターは少なくとも別のバージョンのkextをデフォルトの場所に書き込むか、最悪の場合、部分的に一致しないドライバーの未定義状態になります。
システムを更新した後、問題のkextがないかフォルダー/ System / Library / Extensionsを確認する必要があります。そこに存在すると、例えばヨセミテとシエラでのブートハング、ハイシエラでの過熱ブートループにつながります。
さらに:このラップトップは、あなたが何をしようとも過熱しています。冷却システムは不十分であり、故障した膨大な数のAMDチップはその証拠にすぎません。
このハッキングされたマシンの寿命を延ばすために、長時間にわたって本当に重い物を持ち上げることを控えることをお勧めします。ラップトップの通常の推奨事項を厳守してください:硬い表面で使用し、その中のファンとフィンを清潔に保ちます。比較的積極的な設定で任意のfancontrolソフトウェアを使用することも役立つはずです:のようなsmcFanControl、MacsFanControl、またはTGPro(両方の商用)。
免責事項:この答えはから重複している、ここで、この質問のための次善の答えが与えられたので、非常に多くがあるので、この質問に対して繰り返します。