# Thiết lập config.plist

Bây giờ khi bạn đã có đủ Kext (.kext), SSDT (.aml) và trình điều khiển firmware (.efi), USB của bạn sẽ trông giống như thế này:

Populated EFI folder

  • Lưu ý: USB của bạn sẽ nhìn thấy khác, vì hệ thống của mỗi người đều có yêu cầu khác nhau.

# Tạo tệp config.plist

Đầu tiên, chúng ta cần lấy file Sample.plist từ OpenCorePkg (opens new window), nó nằm trong thư mục Docs:

Tiếp theo, hãy di chuyển nó vào phân vùng EFI của USB (trên Windows phân vùng này thường tên là BOOT) theo đường dẫn EFI/OC/, sau đó đổi tên nó thành config.plist:

# Bổ sung SSDTs, Kexts và Firmware Drivers

Trong phần còn lại của hướng dẫn này, bạn sẽ cần chỉnh sửa file plist. Và trong hướng dẫn này, mình sẽ sử dụng ProperTree và GenSMBIOS để giúp tự động hóa một số công việc nhàm chán:

Tiếp theo, hãy mở ProperTree và chỉnh sửa file config.plist của bạn:

  • ProperTree.command
    • Chạy cái này khi đang sử dụng macOS
    • Mẹo chuyên nghiệp: có một tiện ích buildapp.command trong thư mục Scripts cho phép bạn biến ProperTree thành một ứng dụng (app) chuyên dụng trên macOS.
  • ProperTree.bat
    • Chạy cái này khi đang sử dụng Windows

Khi ProperTree đang chạy, mở file config.plist của bạn bằng cách nhấn Cmd/Ctrl + O và chọn file config.plist có trong USB.

Sau khi mở config, nhấn Cmd/Ctrl + Shift + R và trỏ nó vào thư mục EFI/OC của bạn để thực hiện "Clean Snapshot" (Snapshot sạch):

  • Thao tác này sẽ dọn sạch sẽ tất cả các mục mẫu trong config.plist và sau đó thêm tất cả SSDTs, Kexts và Firmware drivers của bạn mới sao chép hồi nãy vào trong config. Config phải chứa những cái này thì khi chạy OpenCore nó mới thực thi những cái file bạn đã sao chép (nếu không việc sao chép là không có tác dụng).
  • Cmd/Ctrl + R là một tùy chọn khác, nó cũng thêm tất cả các file của bạn nhưng sẽ giữ nguyên trạng thái bị vô hiệu hóa (disabled) nếu trước đó chúng được thiết lập như vậy. Cách này hữu ích khi bạn đang khắc phục sự cố (troubleshooting), nhưng với chúng ta hiện tại thì không cần thiết.

Sau khi hoàn tất, bạn sẽ thấy các SSDTs, Kexts và firmware drivers đã được điền vào trong config.plist:

  • Lưu ý: Nếu bạn nhận được thông báo "Disable the following kexts with Duplicate CFBundleIdentifiers?" (Vô hiệu hóa các kext sau bị trùng CFBundleIdentifiers?), hãy nhấn "Yes". Điều này để đảm bảo bạn không inject trùng lặp các kext, vì một số kext có thể chứa giống nhau các plugin (ví dụ: VoodooInput có trong cả thư mục plugin của VoodooPS2 và VoodooI2C).

Nếu bạn muốn làm sạch file một chút, bạn có thể xóa các mục #WARNING. Mặc dù để đó cũng không gây lỗi gì, nên tùy sở thích cá nhân của bạn.

CẢNH BÁO NGUY HIỂM

Tệp config.plist bắt buộc phải khớp với nội dung của thư mục EFI. Nếu bạn xóa một file trong thư mục nhưng vẫn để nó liệt kê trong Config.plist, OpenCore sẽ báo lỗi và ngừng khởi động.

Nếu bạn thực hiện bất kỳ sửa đổi nào (thêm/bớt file), bạn có thể sử dụng công cụ OC snapshot (Cmd/Ctrl + R) trong ProperTree để cập nhật lại config.plist.

# Chọn nền tảng (Platform) của bạn

Bây giờ đến phần quan trọng, chọn hướng dẫn cấu hình phù hợp. Mỗi nền tảng phần cứng đều có những đặc điểm riêng mà bạn cần lưu ý, vì vậy việc hiểu rõ phần cứng của mình là cực kỳ quan trọng. Xem bên dưới để biết bạn cần theo dõi phần nào:

# Máy tính bàn Intel

  • Lưu ý: Dòng Intel NUC được coi là phần cứng di động (mobile hardware) tương tự Laptop, trong trường hợp này mình khuyên bạn nên cấu hình theo phần hướng dẫn Máy tính xách tay Intel
Tên mã (Code Name) Dòng (Series) Năm phát hành
Yonah, Conroe hoặc Penryn E8XXX, Q9XXX, VD Kiến trúc 1 (opens new window), VD Kiến trúc 2 (opens new window) Kỷ nguyên 2006-2009
Lynnfield hoặc Clarkdale 5XX-8XX Kỷ nguyên 2010
Sandy Bridge 2XXX Kỷ nguyên 2011
Ivy Bridge 3XXX Kỷ nguyên 2012
Haswell 4XXX Kỷ nguyên 2013-2014
Skylake 6XXX Kỷ nguyên 2015-2016
Kaby Lake 7XXX Kỷ nguyên 2017
Coffee Lake 8XXX-9XXX Kỷ nguyên 2017-2019
Comet Lake 10XXX Kỷ nguyên 2020

# Máy tính xách tay Intel

Tên mã (Code Name) Dòng (Series) Năm phát hành
Clarksfield hoặc Arrandale 3XX-9XX Kỷ nguyên 2010
Sandy Bridge 2XXX Kỷ nguyên 2011
Ivy Bridge 3XXX Kỷ nguyên 2012
Haswell 4XXX Kỷ nguyên 2013-2014
Broadwell 5XXX Kỷ nguyên 2014-2015
Skylake 6XXX Kỷ nguyên 2015-2016
Kaby Lake hoặc Amber Lake 7XXX Kỷ nguyên 2017
Coffee Lake hoặc Whiskey Lake 8XXX Kỷ nguyên 2017-2018
Coffee Lake Plus hoặc Comet Lake 9XXX-10XXX Kỷ nguyên 2019-2020
Ice Lake 10XXX Kỷ nguyên 2019-2020

# Máy trạm (HEDT)/máy chủ cao cấp Intel

Phần này bao gồm cả phần cứng dành cho người dùng đam mê và máy chủ (server).

Tên mã (Code Name) Dòng (Series) Năm phát hành
Nehalem hoặc Westmere 9XX, X3XXX, X5XXX, etc 1 (opens new window), 2 (opens new window) Kỷ nguyên 2008-2010
Sandy hoặc Ivy Bridge-E 3XXX, 4XXX Kỷ nguyên 2011-2013
Haswell-E 5XXX Kỷ nguyên 2014
Broadwell-E 6XXX Kỷ nguyên 2016
Skylake hoặc Cascade Lake-X/W 7XXX, 9XXX, 10XXX Kỷ nguyên 2017-2019

# Máy tính bàn AMD

Tên mã (Code Name) Dòng (Series) Năm phát hành
Bulldozer/Jaguar Thiệt là kì lạ (opens new window) Cách đặt tên của AMD hồi đó khá tệ (opens new window)
Zen 1XXX, 2XXX, 3XXX, 5XXX Kỷ nguyên 2017-2020
  • Lưu ý: Threadripper thế hệ 3 (39XX) không được hỗ trợ, tuy nhiên thế hệ 1 và 2 được hỗ trợ.
    • Các phiên bản BIOS và OpenCore mới nhất đã giải quyết vấn đề này, tất cả các nền tảng Threadripper hiện đã được hỗ trợ