openSUSE:Сообщить об ошибке grub

Перейти к: навигация, поиск

Как сообщить об ошибках в Grub

Прежде всего: скорее всего это не ошибка Grub ;) Чаще всего результатом ошибки является ошибки в БИОС, неправильная разметка диска, либо неправильная установка Grub. В некоторых случаях виноват видеоадаптер, из-за которого загрузчику не удается запустить графический интерфейс.

Эта статья написана для того, чтобы дать представление о процессе загрузки, и тем самым помочь определить истинную причину возникновения ошибки - является ли она результатом неправильных настроек, которые Вы можете исправить самостоятельно, либо помочь Вам грамотно составить отчет об ошибке для ее исправления.

Часто задаваемые вопросы

"Но я выполнял установку с рекомендуемыми настройками"

Ошибки и недоработки производителей оборудования не позволяют определить единственный "правильный способ" загрузки Linux. Только вариант загрузки работает отлично : если операционная система расположена на первом разделе единственного диска, раздел создан как основной(primary) и не слишком большого размера (зависит от возраста БИОС).

"Но Windows загружается без проблем"

Так как большинство компьютеров поставляются с предустановленной Windows, она расположена на первом разделе жесткого диска, и разумеется замечательно грузится. Это одна часть проблемы. Другая сложность заключается в том, что производители оборудования всегда проверяют свои продукты на совместимость с Windows. Проблемы начинаются только в том случае, если у вас установлено несколько операционных систем, и не все расположены "удобно" для загрузки


" Но LILO работает замечательно "

При написании Grub было принято наивное предположение что авторы БИОС по крайней мере старались следовать стандартам и общим принципам. Grub тратит много времени при подготовке к загрузке для проверки возможностей БИОС. В некоторых случаях БИОС может сообщить о поддержке некоторых функций(например LBA или Gate A20), но на практике они не реализованы, или работают некорректно. Такая дезинформация Grub со стороны БИОС чаще всего приводит к невозможности загрузки без явной причины.

LILO был написан с фундаментальным недоверием к BIOS, и ожидает некорректную работу и бедные возможности. Большую часть информации, необходимой для загрузки, LILO получает от ядра Linux при установке, для того чтобы свести обращения к БИОС до минимума. LILO никогда не пытается получить от БИОС информацию о возможностях, а просто пробует функции - работают они или нет, и делает для себя соответствующую пометку. Таким образом в некоторых случаях LILO может решить ваши проблемы.

Однако если вы попытаетесь загрузиться с раздела, к которому БИОС не имеет доступа, или установщик Линукса получил неверную информацию о разделах, в этом случае вам не поможет даже LILO. Ошибки в видеоадаптерах также могут помешать загрузке через LILO. В некоторых случаях может помочь включение принудительного режима LBA в Grub (LBA будет использоваться в любом случае, даже если БИОС скажет что он его не поддерживает). Также можно принудительно задать определенный раздел для загрузки.

" Когда я запуская grub-install ... "

grub-install это простой скрипт, включенный в пакет Grub, и он упомянут во многих он-лайн руководствах, поэтому до сих про присутствует в пакете. Он неплох, если у вас больше ничего нет, но его возможности очень сильно проигрывают тому, что может сделать Yast в процессе установки. После получения всей информации, Yast создает файлы device.map и /etc/grub.conf. Используйте их с помощью компандой строки :

grub --batch < /etc/grub.conf

При использовании grub-install вы должны самостоятельно устанавливать загрузчик.

Разметка диска

Сколько у меня дисков, и как БИОС видит их?

В большинстве случаев в системе установлен один жесткий диск. БИОС определяет его как диск с номером 0x80, и считает его загрузочным. Посмотреть информацию о дисках мы можете в файле /etc/fstab, найдя в нем строчки /dev/hda* или /dev/sda*.

Если в системе установлено больше одного диска, это усложняет ситуацию, из-за отсутствия простого способа связать номера дисков в Linux и БИОС. В лучшем случае БИОС может поддерживать функцию "Enhanced Drive Diagnostics"(EDD, расширенная диагностика дисков). Опросив БИОС, ядро может получить информацию о дисках, прежде чем начнет работать. Эту информацию после загрузки можно получить через /sys/firmware/edd/int13_dev8?/ (может потребоваться загрузка модуля ядра edd). Если файлы в /sys/firmware/edd/int13_dev8?/mbr_signature отличаются друг от друга, вы можете решить эту проблему, просто сравнив их с начальными блоками дисков. Также можно опознать диски по их размерам. В любом случае диски линукс, соотвествующие номерам БИОС, должны быть прописаны в файле /boot/grub/device.map в виде:

(hd0) /dev/hda

это значит что /dev/hda соответствует диску 0 в БИОС(номер 0x80). Если можете, проверьте, соотвестствует ли это истине. Обычно YAST довольно точно определяет диски, но проверка не повредит.

Как диски размечены?

Icon-expand.png Эта статья является незавершенной!
Эта статья нуждается в доработке. Если Вы можете помочь, сделайте это в соответствии с руководством по оформлению.

Ограничения

Как загружается компьютер? / Как я могу настроить установленный Grub?

Где и как начинается загрузка?

Что происходит после первого этапа?

Другие вопросы по загрузке

gfxboot

Загрузка с SuSE Linux DVD

Загрузка по сети

Решение проблем

Настоящие ошибки