суббота, 26 сентября 2009 г.

Macbook Pro USB flash boot (part 2)

 - Macbook Pro USB flash boot (part 1)



Fedora 12 Snap3

Подготавливаясь к предстоящему резилу Fedora 12 решил провести основные тесты на своих машинах. У меня два ноутбука Asus M3N (живучий малый) и MacBook Pro 2.1 (железный малый), и один mac mini (Ну совсем маленький. Он не дорос доучастия в тестах). На обоих машинах я испытывал те или иные проблемы связанные с различными аспектами работы системы. Начиная от загрузки и заканчивая поддержкой различных устройств.

Могу сказать сразу: результаты внушают оптимизм и некоторые старые ошибки оказались исправлены. Что же касается новых фукнций (автоматическая отправка ошибок, переработанный anaconda устновщик, и ряд других, которые я не успел толком опробовать) они заставляют ждать резил Fedora 12 с нетерпением.


Не буду описывать все составляющие моего щастья связанные с Fedora 12. Опишу только все еще не решенную проблему с загрузкой с usb через EFI loader.

Всего существует 2 способа загрузки ноутбука MacBook Pro с usb насителя:
 - загрузка с использованием efi загрузчика
 - непосредственная загрузка с одного из 4 разделов mbr диска.

Первый (efi) использует расширенные фукнции переферии (EFI) и ориентируясь на разделы gpt диска может произвести загрузку с одного из 128 разделов. Что выгодно отличает этот способ загрузки от старого проверенного bios загрузчика поддерживающего всего 4 раздела на жестком диске.

Дальше больше. Так как современное ядро линукса научилось не только работать с жестким диском по всем современным технологиям, но уже начинает перенимать на себя и остальные фукнции операционной системы (постепенно разбухая и накапливая новый фукнционал). Так, совсем недавно, появилась новая фукнция ядра называемая KMS (Kernel mode settings). Мехнизм позволяющий иницилизировать видео карту в ядре с последующей передачей видео контекста в пользовательское приложение графического интерфейса (менеджера окон или других программ с поддержкой GUI). Эта новая фукнция не всегда работает хорошо и в некоторых случаях производит иницилаизацию ведео карты не правильно. Что в свою очередь приводит к зависанию системы сразу после загрузки ядра. Это еще одно условие успешной загрузки с usb flash.

Кроме того, имеет место сборка grub, и сборка X-server.

Так у нас получается некоторый набор условий неудачное совпадение которых может приводить к падению системы. Что мы и попробуем перечислить все возможные варианты:

Вот приблизительные варианты загрузки:

rEFIT \ Alt boot -> EFI \ BIOS -> USB \ HDD -> fedora grub \ grub2 -> KMS \ nomodeset

Попробуем проверить все эти комбинации на практике:

1) rEFIT -> EFI -> USB -> fedora grub -> В обоих случаях (KMS\nomodeset) зависание после включение grub, ядро не может инициализировать видео вывод и картинка menu grub не исчезает)










2) rEFIT -> EFI -> USB -> grub2 -> KMS (Порча экрана после загрузки ядра и зависание)






3) rEFIT -> EFI -> USB -> grub2 -> nomodeset -> Загрузка до запуска X server и падение x servera













4) rEFIT -> BIOS -> USB -> В обоих случаях (KMS\nomodeset) остановка загрузки - проблема с прошивкой MacBook Pro




5) rEFIT -> BIOS -> HDD -> fedora grub -> В обоих случаях (KMS/nomodeset) успешная загрузка

Из выше привиденных тестов можно сделать вывод: во-первых прошивка macbook pro несколько старовата, apple не желает их поддерживать. во-вторых загрузка linux через EFI всегда приводит к проблемам инициализации контекста видео карты. И в противовес последнему утверждению, загрузка  через BIOS ядра линукса всегда успешная.

0 коммент.:

Отправить комментарий