Clover+本機NVRAM的之間,如何驅動iMessage的絕妙關係

Spread the love

您具有可以啟動UEFI的新硬件並且正在使用OsxAptioFix2Drv,則您很可能具有本機NVRAM。為了使iMessage正常工作,您需要做一些事情。如果正確執行所有這些步驟,則應該可以正常的使用iMessage:

  • 有效的SMBIOS數據

  • 有效的模型標識符(最好是與您的硬件最匹配的標識符;例如,帶有Z97芯片組的i7-4790K = iMac15,1):如果您不喜歡配置,Clover應該會自動為您的硬件選擇一個好的匹配

  • 生成的序列號具有有效格式,但不是真實的序列號:我實際上為此編寫了一個腳本 -只需使用所需的型號作為參數運行它即可(例如:./simpleMacSerial iMac15,1)[ 注:當前僅支持Mac mini和iMacs ,稍後會添加更多支持];您還可以使用Clover Configurator並以此生成您的SMBIOS數據(包括序列號);請確保您在此處檢查序列號是否不屬於真實的Mac,並在此處查看序列號是否具有有效的格式(如果是,則應該告訴您有關該序列號的信息)

  • 根據序列號數據生成的MLB值:確保您具有在About This Mac 中顯示的有效序列號,並使用這個軟件simpleMLB ,根據序列號的數據生成MLB值。如果要為運行腳本的計算機生成MLB值,則無需輸入任何參數(可以這樣運行:)./simpleMLB;如果您想了解有關序列號的更多信息,可以使用debug選項(例如:)./simpleMLB -debug;將生成的MLB值作為一,個字符串放置在RtVariables下的config.plist中MLB

  • 生成的SmUUID值:uuidgen在終端中使用以生成UUID,並將生成的SmUUID值作為名為SmUUID; 的字符串放在SMBIOS下的config.plist中。您還應該InjectSystemID在config.plist中的SystemParameters下將其設置為true

  • 正確的ROM值:您的ROM值應設置為您其中一個NIC的MAC地址(這與真實Mac相似-它們使用Thunderbolt 晶片組或FireWire 晶片組的硬體MAC作為ROM值);ROM值應在RtVariables下的config.plist中設置為ROM以該值命名的字符串UseMacAddr0

  • 工作的NVRAM

  • NVRAM測試:如果你的NVRAM通過運行以下命令終端並重新啟動工作,就可以進行測試:sudo nvram TestVar=HelloWorld; 重啟後,運行sudo nvram -p | grep 'TestVar';如果看到結果,則說明您的NVRAM正在工作;如果不是,則您的NVRAM損壞並且需要修復,否則iMessage將無法運行;測試後,可以TestVar通過運行以下命令刪除變量sudo nvram -d TestVar

  • 機UEFI NVRAM:如果您使用的是使用UEFI(不是傳統BIOS)的靴子,是比較新(英特爾Z68和更新與UEFI)並使用OsxAptioFixDrv2系統(建議在定期OsxAptioFixDrv),你很可能已經工作的硬件NVRAM (使用上面的命令進行測試;確保沒有使用任何模仿NVRAM的驅動程序或腳本來使之準確);在這種情況下,您將不必使用任何NVRAM仿真驅動程序或腳本(注:不要在Clover中使用“將RC腳本安裝到目標分區”,如果您使用硬件NVRAM和/或者如果您不使用EmuVariableUefi)

  • 仿真的NVRAM:如果您的系統較舊,並且使用舊版BIOS(而不是UEFI)啟動,或者在OS X中沒有可用的硬件NVRAM,則可以使用EmuVariableUefi驅動程序和Clover的RC腳本(選擇“安裝RC腳本以定位Clover安裝程序中的“分區”);這將在每次關閉時將NVRAM數據保存到文件中,EmuVariableUefi驅動程序將加載此文件並將其作為NVRAM數據傳遞給OS X

如果您同時滿足以上兩種條件,則iMessage應該可以運行。最壞的情況是,登錄時會獲得客戶代碼。這是正常現象-您必須聯繫Apple並回答一些與安全性有關的問題,以便他們將Hack列入白名單。如果他們要求序列號,請說您現在無法在計算機上獲取它。

故障排除:

如果iMessage登錄但立即註銷,或者看上去已登錄,但是當您檢查“消息首選項”後由於未知錯誤登錄失敗,則生成的SMBIOS數據無效,應檢查config中的SMBIOS數據.plist滿足以上所有要求。

如果iMessage要求您在每次引導時登錄,則您的NVRAM可能不是永久性的(不是保存在UEFI中(如果是本機),也不是保存到文件中(如果是模擬的)。運行上面的NVRAM測試以檢查靴子之間是否工作正常。

範例 config.plist:

如果正確執行所有這些步驟,則config.plist應該看起來像這樣(這些都是生成的示例值;請勿使用這些值並生成自己的值,否則您將在iMessage帳戶黑名單中遇到問題):

<key>RtVariables</key>
<dict>
	<key>MLB</key>
	<string>C02452301GUF49R1F</string>
	<key>ROM</key>
	<string>UseMacAddr0</string>
</dict>
<key>SMBIOS</key>
<dict>
	<key>ProductName</key>
	<string>iMac15,1</string>
	<key>SerialNumber</key>
	<string>C02NVKVZFY11</string>
	<key>SmUUID</key>
	<string>CD8EE581-48EC-4143-8013-CE7DDBCB12A7</string>
</dict>
<key>SystemParameters</key>
<dict>
	<key>InjectKexts</key>
	<string>Yes</string>
	<key>InjectSystemID</key>
	<true/>
</dict>

文獻出處:

Leave a Reply

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *