Userspace Issue

Tác giả: Nam Phạm

Hướng dẫn fix các lỗi liên quan đến bộ cài và GUI sau khi boot thành công Installer.

Tức là sau gia đoạn boot kernel

Bộ cài mac bị chuyển thành tiếng Nga

B1: Chỉnh giá trị của prev-lang:kbd thành 656e2d55533a30

Nằm ở NVRAM -> Add -> 7C436110-AB2A-4BBB-A880-FE41995C9F82

Giá trị này chính là mã hex của ngôn ngữ US

Ngoài ra bạn cũng có thể điều chỉnh prev-lang:kbd sang string và điền vào giá trị là en-US:0

B2: Reset NVRAM trong boot picker.

Lưu ý:

Nếu vẫn không fix được thì xóa hẳn prev-lang:kbd

Tạo mới một property NVRAM -> Delete -> 7C436110-AB2A-4BBB-A880-FE41995C9F82 -> Item 0

Để giá trị là prev-lang:kbd để Opencore tự build lại.

Định dạng là String

Hỏng bộ cài

Nguyên nhân do bị lỗi chứng chỉ bộ cài macOS nếu bạn dùng file cài đã được tải từ trước tháng 10 năm 2019

Có 2 cách xử lý:

  • Tải lại phiên bản macOS đó 1 lần nữa

  • Đổi ngày tháng năm trong Terminal về ngày chứng chỉ còn hiệu lực

  • Ngắt kết nối toàn bộ các thiết bị kết nối Internet (mạng LAN, Wifi)

  • Vào Terminal của bộ cài gõ dòng lệnh date 0901000019

Stuck IOConsoleUsers: gIOScreenLock.../gIOLockState (3...

Lỗi này thường bị ngay trước khi GPU được kích hoạt, check lại những yêu cầu sau:

  • GPU hỗ trợ UEFI

    • GTX 7XX/ GPU đời 2013 đổ lên

  • CSM được chỉnh thành Disabled/Off trong BIOS

  • Dùng PCIe đạt chuẩn 3.0

  • Đối với iGPU của Coffee Lake từ macOS 10.15.4 đổ lên.

    • Cần thêm boot args igfxonln=1

    • Do boot args -igfxmlr

      • Gây ra lỗi Divide by Zero

  • Check lại xem giá trị của ig-platform-iddevice-id có phù hợp không

    • Chỉ cần khi bạn dùng iGPU

    • Đối với iGPU UHD 630 trên Desktop thử chuyển thành 00009B3E

Scrambled Screen trên laptop

Tức là màn laptop bị nhiễu

Bật CSM trong BIOS. Đối với 1 số máy, Option CSM trong BIOS sẽ là "Boot legacy ROMs", v.v

Black screen sau IOConsoleUsers: gIOScreenLock...

Trên Laptop và các máy AIO

AIO tức là all in one

Check lại những mục sau:

  • SSDT-PLNF chưa

    • Đã được add vào config và enable chưa

    Kiểm tra ở:

    • EFI/OC/ACPI

    • Config.plist -> ACPI -> Add

  • Các properties của iGPU đã được config chuẩn chưa

    • DeviceProperties -> Add -> PciRoot(0x0)/Pci(0x2,0x0)

  • Đối với Laptop sử dụng chip Coffee Lake đổ lên

    • thêm boot args -igfxblr

    • Hoặc bạn có thể dùng properties sau thay cho boot-arg:

      • enable-backlight-registers-fix | Data | 01000000

        • Vào PciRoot(0x0)/Pci(0x2,0x0)

Black screen sau IOConsoleUsers: gIOScreenLock...

Trên dòng card rời Navi của AMD

  • Thêm boot args agdpmod=pikera

  • Thử cắm cổng khác để xuất hình

    • Chuyển từ HDMI sang DVI, DisplayPort,..

  • Thử SMBIOS MacPro7,1

  • Kèm boot arg agdpmod=ignore

Đối với card do MSI sản xuất, dùng patch này: Installer not working with 5700XT #901

Đặc biệt

Chỉ làm nếu thử hết các cách vẫn lỗi

Thêm các entry dưới đây trong phần Kernel -> Patch của config:

Base:
Comment: Navi VBIOS Bug Patch
Count: 1
Enabled: YES
Find: 4154592C526F6D2300
Identifier: com.apple.kext.AMDRadeonX6000Framebuffer
Limit: 0
Mask:
MinKernel:
MaxKernel:
Replace: 414D442C526F6D2300
ReplaceMask:
Skip: 0

Đơ màn hình ở Installer sau 30 giây

Nguyên nhân:

  • Do NullCPUPowerManagement gây lỗi

  • Hoặc thiếu các patch power manager

Thử các cách sau:

  • Xóa NullCPUPowerManagement trong Kernel -> AddEFI\OC\Kexts

  • Enable DummyPowerManagement trong Kernel -> Emulate

    • Option này dùng trên các dòng đặc biệt không hỗ trợ xcpm

Hoặc đối với các dòng khác thì kiểm tra lại các patch xcpm của bạn

Bị khởi động lại sau màn hình Data & Privacytrên 15h/16h CPU AMD

Fix theo hướng dẫn dưới đây

Mục Update 2: Fix Data and Privacy reboot

MacOS bị đơ ngay trước khi đăng nhập vào máy

Nguyên nhân do TSC bị lỗi

Cách fix là thêm kext CpuTscSync

Đối với Skylake-X, cần reset TSC ở cold boot

Tắt hẳn máy đi và boot trở lại

Tức là bạn sẽ shutdown thay vì rest

và wake máy với kext TSCAdjustReset và sủa Info.plist của kext như sau:

IOKitPersonalities -> IOPropertyMatch -> IOCPUNumber -->  User's threads

// Chỉnh giá trị theo số luồng CPU máy bạn có

// Ví dụ:

    I9-7980xe có 18 nhân 36 luồng thì để giá trị là 36

Một số ví dụ về TSC bị lỗi

Mang tính chất tham khảo

Không đủ dung lượng cho MediaKit

Lỗi do phân vùng EFI nhỏ

Windows sẽ tạo EFI 100mb

MacOS 200mb theo mặc định.

Có 2 cách fix như sau:

Tăng kích thước phân vùng EFI lên 200mb

Dùng các tool như Minitool Partition

Format lại cả drive thay vì 1 phân vùng

  • Disk Utilities chỉ hiện phân vùng

    • Bấm Cmd/Win +2 để xem toàn bộ ổ

    • Có thể bấm nút View trên GUI

DiskUtility không erase được ổ

Do 1 trong 5 lỗi dưới đây (có thể có nhiều lỗi xảy ra đồng thời):

  • Do bạn format phân vùng chứ không phải toàn bộ drive, xem lại lỗi MediaKit ở trên

  • DiskUtitlity có thể bị lỗi ở lần erase đầu tiên, erase lại lần hai sẽ chạy được

  • Option SATA Hot Plug trong BIOS gây lỗi, thử tắt Option này

  • Firmware cũ -> Update firmware

  • Ổ cứng của bạn bị hỏng

    • Bad sector và các lỗi tương tự

    • Chỉ còn cách thay ổ

Ổ SATA không hiện trong DiskUltility

  • Set SATA mode thành AHCI trong BIOS

  • Một số controller không được hỗ trợ bởi macOS, dùng kext CtlnaAHCIPort

    • Đối với các controller cũ

      • Hệ legacy

        • Dùng kext AHCIPortInjector sẽ phù hợp hơn.

Stuck on 2 minutes remaining

Lỗi do bộ cài macOS sẽ chỉnh sửa/thêm một số boot arg vào NVRAM của bạn để boot tiếp sau khi cài xong nhưng có lỗi và bị kẹt tại bước này.

Dưới đây là một số trường hợp và cách fix tương ứng

  • Đối với main 300 series của Intel

    • VD: Z390

    • Dùng SSDT-PMC

      • Nhớ snapshot config lại nhé

  • Những máy còn lại chỉnh các quirk sau trong config.plist

    • Phần NVRAM:

      • LegacyEnable -> Yes

      • LegacyOverwrite -> Yes

      • WriteFlash -> Yes

Lỗi The recovery server cannot get contacted

Nếu bạn làm USB boot macOS trên Windows hoặc Linux thì USB sẽ chỉ chứa phần Recovery, còn hệ điều hành sẽ phải tải trong quá trình cài.

Dưới đây là một số cách fix

  • Đảm bảo bạn có kết nối Internet

    • Mở Network Utility trong phần Utilities và check xem máy có nhận card mạng không

      • Nếu máy bạn không nhận card mạng, add kext mạng tương ứng với dòng card mạng của bạn, xem lại phần Wifi và Bluetooth

      • Nếu máy bạn đã nhận card mạng, chạy lệnh ping -c3 www.google.com trong terminal để test kết nối mạng

        • Nếu terminal có trả về kết quả thì do server của Apple, cài lại vào lúc khác

        • Nếu không có gì hiện thì do kext bạn đã lỗi, tiến hành tải lại và add vào EFI, config như trước

          • Dùng bản kext cũ hơn nếu bạn gặp lỗi ở những bản kext mới

Không dùng được bàn phím, chuột trong macOS Big Sur+

Đối với những máy cũ

Core 2 Duo/máy từ 2010 trở về trước

lỗi do những HID (Human Interface Devices) và cổng USB gặp vấn đề.

Thử kiểm tra lại những vấn đề ở trên:

  • Check voodoops2keyboard

  • Check USB map

  • Và thử cách IOHIDFamily Patch

IOHIDFamily Patch

Stuck on Your Mac needs a firmware update in order to install to this volume

Nếu ban muốn cài macOS trên một ổ có định dạng APFS và gặp lỗi này, nguyên nhân có thể do SMBIOS quá cũ. Check các điều sau:

  • Đã bật PlatformInfo -> Automatic

  • UpdateSMBIOSMode được để là Create

    • Cần tắt CustomSMBIOSGuid

    • Đối với máy Dell và VAIO

      • Cần bật CutomSMBIOSGuid

      • Set UpdateSMBIOSMode thành Custom

  • Dùng phiên bản SMBIOS phù hợp với bản macOS bạn đã cài trong trường hợp ban

    • Không dùng boot args -no_compat_check

  • Dùng phiên bản mới nhất của Opencore

Nếu vẫn gặp tình trạng này, lỗi có thể do SMBIOS của Opencore bị lỗi thời và cần Generate lại bản SMBIOS đó hoặc dùng một SMBIOS tương tụ và dc bản macOS bạn cài hỗ trợ.

Ngoài ra, xem lại phần cách chọn SMBIOS: Choosing the right SMBIOS

Last updated