Đối với tôi, việc khởi động Ubuntu ở chế độ UEFI với trình điều khiển Nvidia được tải, cũng luôn dẫn đến màn hình đen nổi tiếng khi X được khởi động.
Đó là cho đến ngày hôm qua!
Sau khi chạy vào một số thông tin rất hứa hẹn trong một chủ đề khác về việc cài đặt Windows 7 ở chế độ UEFI trên máy Mac. Mọi người ở đó đã vật lộn với hỗ trợ kế thừa int 10h cần thiết của Windows 7 và phát hiện ra rằng để giải quyết vấn đề đó, người ta có thể thực hiện cài đặt không giám sát (vì màn hình không hoạt động trong khi cài đặt). Các thông tin quan trọng để thành công khởi động Ubuntu ở chế độ UEFI ngay cả với trình điều khiển Nvidia là khi bắt đầu khởi động EFI (trong khi bàn giao để grub), firmware của Apple không thực sự kích hoạt thẻ VGA như là bậc thầy PCI-E xe buýt . Các nhân viên của Windows đã giải thích cách phá vỡ điều này bằng cách sử dụng trình bao EFI, chuỗi tải trình quản lý khởi động Windows để ít nhất chạy thiết lập ở chế độ không giám sát. Và đây là tin tốt:thật dễ dàng để làm điều này trong GRUB !
Trên thực tế, tôi hiện đang gõ cái này trên MacBook Pro 7.1 (giữa năm 2010) đang chạy Ubuntu Vivid được khởi động ở chế độ UEFI ( Xorg.0.log ). Tuy nhiên, thật dễ dàng để chạy hoặc điều chỉnh điều này với bất kỳ bản phân phối Linux nào cung cấp phiên bản EFI của GRUB, ví dụ Ubuntu 14.04.2 LTS.
~$ dmesg | grep -i efi
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-3.19.0-15-generic.efi.signed root=UUID=7843c644-e6f4-4d64-9317-0b854cb524f2 ro quiet splash intremap=off acpi_osi=! acpi_osi=Darwin nomodeset vt.handoff=7
[ 0.000000] efi: EFI v1.10 by Apple
[ 0.000000] efi: ACPI=0xbf96a000 ACPI 2.0=0xbf96a014 SMBIOS=0xbf71a000
Để cắt ngắn câu chuyện dài, chúng ta phải đặt hai thanh ghi PCI-E: một thanh ghi cho phép làm chủ bus trên thẻ video và một thanh ghi khác hỗ trợ VGA trên cầu nối PCI-E của card màn hình. Vì vậy, nó thực sự không liên quan gì đến trình điều khiển Nvidia và tùy thuộc vào quan điểm, ngay cả với lỗi thời / bị tê liệt của Apple / bạn đặt tên cho nó là triển khai EFI.
Đây là cách tôi giải quyết nó. Tất nhiên, kudo's chủ yếu đến với những kẻ trên diễn đàn MacRumors.
TUYÊN BỐ TỪ CHỐI Các hướng dẫn sau đây được cung cấp nguyên trạng, không bảo đảm và tôi cũng không chịu bất kỳ trách nhiệm pháp lý nào. LÀM ĐIỀU NÀY CÓ NGUY CƠ ĐẾN BẠN!
1. Cài đặt Ubuntu ở chế độ UEFI với trình điều khiển Nvidia
Tôi sẽ không đi vào chi tiết ở đây vì có rất nhiều bài viết trên web chỉ cho bạn cách làm điều này và kết thúc với trình điều khiển nouveau đang làm nóng máy của bạn hoặc với màn hình đen sau khi cài đặt trình điều khiển Nvidia (ví dụ: www.rodsbooks.com / ubfox-efi ).
Tuy nhiên, xin lưu ý rằng các hướng dẫn sau đây giả sử bạn đã cài đặt và khởi động thành công ở chế độ UEFI. Bạn có thể xác minh rằng bằng cách kiểm tra sự tồn tại của thư mục / sys / firmware chỉ được tạo sau khi khởi động ở chế độ EFI.
2. Tìm đúng số nhận dạng bus PCI-E
Chúng tôi cần cả ID cho card đồ họa và cầu nối PCI-E mà nó được kết nối. Ban hành lệnh sau trong shell:
~$ sudo lshw -businfo -class bridge -class display
pci@0000:00:00.0 bridge MCP89 HOST Bridge
pci@0000:00:03.0 bridge MCP89 LPC Bridge
pci@0000:00:0e.0 bridge NVIDIA Corporation
pci@0000:00:15.0 bridge NVIDIA Corporation
pci@0000:00:16.0 bridge NVIDIA Corporation
pci@0000:00:17.0 >!!< bridge MCP89 PCI Express Bridge
pci@0000:04:00.0 >!!< display MCP89 GeForce 320M
Hãy xem (1) dòng hiển thị dòng và (2) dòng có cầu ngay trước dòng hiển thị đó. Viết các id bus PCI-E (định dạng XX: YY.Z) của thiết bị cầu nối (ở đây 00: 17.0) và thiết bị hiển thị (ở đây 04: 00.0) và nhớ đó là thiết bị nào. Lưu ý : Những ID đó có thể khác trên máy của bạn, tùy thuộc vào kiểu máy Mac và phiên bản sửa đổi.
3. Tạo tập lệnh GRUB để thiết lập các thanh ghi PCI-E trong khi khởi động
Bật trình soạn thảo văn bản với sudo nano /etc/grub.d/01_enable_vga.conf và sao chép / dán nội dung bên dưới. Thay thế 00: 17.0 bằng ID PCI-E của thiết bị cầu của bạn được ghi chú ở bước 2. Thay thế 04: 00.0 bằng ID PCI-E của thiết bị hiển thị của bạn được ghi chú trong bước 2.
cat << EOF
setpci -s "00:17.0" 3e.b=8
setpci -s "04:00.0" 04.b=7
EOF
Cuối cùng, làm cho tệp được tạo có thể thực thi được và cập nhật tệp cấu hình grub của bạn bằng các lệnh TWO sau .
~$ sudo chmod 755 /etc/grub.d/01_enable_vga.conf
~$ sudo update-grub
4. Khởi động lại và kiểm tra
Nếu, sau khi khởi động lại, các giá trị đăng ký đã được đặt thành 8 (thiết bị cầu nối) và 7 (thiết bị hiển thị), mọi thứ đều ổn:
~$ sudo setpci -s "00:17.0" 3e.b
08
~$ sudo setpci -s "04:00.0" 04.b
07
5. Cài đặt trình điều khiển Nvidia và tận hưởng!
Sử dụng GUI trình điều khiển bổ sung của Ubuntu để cài đặt trình điều khiển Nvidia. Tôi khuyên bạn nên theo dõi bài viết này về cách bật điều khiển độ sáng vì nó không hoạt động.