Я установил человечность 12.04 на своем Краю ThinkPad (UEFI) использование Карты с интерфейсом USB. Я предполагаю, что это было забито с помощью EFI, так как меню GRUB появилось с опциями загрузить живую систему, установку, или проверить диск.
Когда я загружаю свой ноутбук, копаюсь, только показывает его приглашение командной строки "личинка>".
После ручного выполнения grub-install /dev/sda
+ update-grub
в chrooted среде это загружает личинку в режиме восстановления, говоря "Файл, не найденный".
Диск делится следующим образом:
/dev/sda1: ntfs, 1.5GB, SYSTEM DRV
/dev/sda2: ntfs, 150GB, Windows7 OS
/dev/sda3: extended
/dev/sda6: ext4, 140GB, Ubuntu 12.04
/dev/sda5: ntfs, 10.7GB, Lenovo Recovery
/dev/sda4: ntfs, 16.8GB, a custom additional partition
Я предположил, что раздел маркировал "SYSTEM DRV", может быть раздел EFI, но затем я считал, что раздел EFI имеет тип FAT32. У меня нет раздела FAT32 здесь!
Таким образом, я не могу следовать никаким Практическим руководствам, объясняющим, как установить Grub2 с поддержкой EFI. Они все хотят, чтобы я смонтировал свой раздел EFI в/boot/efi. Я также не могу только создать раздел EFI с тех пор в большинстве Практических руководств, они говорят, что это должен быть первый раздел (по крайней мере, это должен быть основной раздел), но поскольку Вы видите, что у меня уже есть раздел 1.
Разве не возможно просто использовать нормальный инструмент Grub2 на аппаратных средствах EFI?
В противном случае будет создание раздела EFI решать проблему? Я могу использовать раздел 4 для этого?
Мой BootInfo, как создано при помощи этой статьи может быть найден здесь: http://paste.ubuntu.com/1011739/. Обратите внимание, что это делается из Ubuntu Живой Картой памяти, которая была в /dev/sdb
, таким образом, необходимо проигнорировать этот диск.
ОБНОВЛЕНИЕ:
Поскольку EFI, кажется, не проблема здесь, я переустановил (неEFI-) использование личинки boot-repair
.
Новый BootInfo может быть найден здесь: http://paste.ubuntu.com/1012223/.
Проблема теперь, что BIOS не загружает, но дает ошибку:
Operating system not found.
ОБНОВЛЕНИЕ 2 (РЕШЕНИЕ):
Когда Вы читаете этот вопрос при наличии той же проблемы (Операционная система, не найденная.), Вы могли бы пропустить лес для деревьев при чтении ответов, таким образом, я повторяю решение здесь:
Проблема в моем случае была, к которому я случайно изменил флаг начальной загрузки диска /dev/sda6
, который является логическим разделом. BIOS ищет флаги начальной загрузки на жестком диске, который он хочет загрузить от, но только смотрит в основных разделах. Если это не может найти флаг начальной загрузки, это пропускает жесткий диск. Если это не находит, что какой-либо диск или медиа загружаются от, Вы видите ошибку "Операционная система, не найденная".
Жесткий диск определенно настроен для загрузки в стиле BIOS. Конкретные доказательства этого включают в себя:
Таким образом, каким бы ни был источник проблемы, похоже, что он не имеет ничего общего с EFI; это просто проблема GRUB-on-BIOS.
Самая большая подсказка, которую я вижу, это из выходных данных скрипта Boot Info:
=> Grub2 (v1.99) is installed in the MBR of /dev/sda and looks at sector 1 of
the same hard drive for core.img. core.img is at this location and looks
for (,msdos6)/root/grub on this drive.
Обратите внимание, в частности, на ссылку (,msdos6)/root/grub
. Позже в выводе Boot Info Script есть список загрузочных файлов в / dev / sda6 ((,msdos6)
на языке GRUB). Этот список включает в себя /boot/grub/grub.cfg
, но в каталоге root
ничего не упоминается. Фактически, каталог root
(не путать с каталогом /
, имя которого произносится как «root») является домашним каталогом суперпользователя, и он обычно не содержит загрузочных файлов. Таким образом, я подозреваю, что GRUB был неправильно установлен. Возможно, вы использовали опции grub-install
, которые вы не упомянули и которые были неуместны, или, возможно, есть ошибка в скрипте установки. В любом случае, я рекомендую переустановить GRUB, используя обычные процедуры для этого на компьютере с BIOS. Однако обратите внимание, что если ваша аварийная система загружается в режиме EFI, это может создать сложности, поэтому вы должны обязательно загрузить свою аварийную систему в режиме BIOS.
Вы можете проверить свой режим загрузки в Linux, найдя каталог /sys/firmware/efi
. Если он присутствует, вы загрузились в режиме EFI. Если он отсутствует, вы , вероятно, загрузились в режиме BIOS (хотя существуют условия, когда этот файл будет отсутствовать, даже если вы загрузились в режиме EFI).
Раздел справки, связанный с более ранним (удаленным?) Ответом , описывает, как загрузить вашу систему, используя ее UEFI BIOS. Это то, что подразумевается под загрузкой Linux " native ".
ЕСЛИ он доступен на вашем Thinkpad, другой альтернативой может быть использование CSM или эквивалентной ему функции. Это сокращение от Модуль поддержки совместимости . Это термин Intel. (Спецификация для UEFI BIOS была разработана Intel.)
CSM позволяет системе с BIOS UEFI загружать устаревшие (не UEFI) операционные системы, которые знают только, как взаимодействовать с устаревшим BIOS.
Насколько я понимаю, на оборудовании UEFI можно использовать только так называемые обычные (то есть устаревшие BIOS) инструменты GRUB, если вы можете использовать что-то вроде CSM.
Обновление:
Я написал свои предыдущие предложения, прежде чем достаточно подробно взглянуть на таблицу разделов OP.
Очевидно, что разделение MBR на диске было размещено Lenovo. Таким образом, Thinkpad Edge уже должен иметь какую-то совместимость с BIOS для загрузки загрузочного диска MBR.
Если это на самом деле - истина, то стирание текущих разделов и использование GPT НЕ будет хорошим путем.
Я бы порекомендовал ДО сделать какие-либо радикальные изменения, чтобы вы сначала узнали, как работает ваша система в настоящее время. Не могли бы вы собрать резюме BootInfo для вашей системы? Вы можете сделать это, загрузившись с Live CD / USB при подключении к Интернету, выбрав Try Ubuntu
, а затем, используя шаги, описанные в этого ответа .
Примечание: На данный момент я бы предложил только сбор информации. Попытка применить исправления до того, как вы лучше поймете свою ситуацию, может только сломать что-то еще.
Я согласен с анализом Рода Смита из вашего резюме BootInfo . Ubuntu уже установлена в разделе /dev/sda6
. GRUB и grub.cfg
настроены правильно в /boot/grub/
на /dev/sda6
. Проблема в том, что ваша последовательность загрузки в настоящий момент выглядит примерно так:
/dev/sda
. Он передает управление GRUB's core.img
, который находится в секторе 1 '/ dev / sda'. core.img
знает достаточно о файловых системах, чтобы загрузить остальные модули GRUB из того места, где, по его мнению, находится GRUB, (,msdos6)/root/grub
. core.img
не может загрузить GRUB из (,msdos6)/root/grub
Я сделал сравнение файлов на ваших двух пастбинах. Я перечислил то, что я считал существенными различиями ниже.
Строка 07
Ранее GRUB core.img
в секторе 1 искал (,msdos6)/root/grub
. Теперь он ищет (,msdos6)/boot/grub
. Другими словами, вы устранили проблему, которую пытались исправить, переустановив GRUB.
Строка 47
У меня нет объяснения, почему это произошло, но в дополнение к загрузочному файлу core.img
, который, очевидно, все еще существует в секторе 1, GRUB также добавил С /boot/grub/core.img
по /dev/sda6
. (Возможно, это связано со следующим изменением?)
Строки 77 и amp; 81
Ранее /dev/sda1
был отмечен флагом boot . Теперь флаг boot находится на вашем разделе Ubuntu, /dev/sda6
. Я думаю, что это может быть причиной вашей проблемы с загрузкой. Попробуйте переключить флаг boot обратно на первый раздел NTFS на вашем диске, помеченный SYSTEM_DRV , и посмотрите, поможет ли это. (Я не думаю, что это повредит.)
Строки 154, 155 и 537 (старые) 523 (новые)
Настройки которые были « efi » в предыдущей версии pastebin, теперь, похоже, используют значения для устаревшего BIOS GRUB. В частности, в разделе PARTITIONS & DISKS:
раздел sda6
ранее имел атрибут grub-efi
. Сейчас grub-pc
.
Есть некоторые другие изменения, которые не заслуживают подробного описания. Например, ваши изменения в файле /etc/default/grub
были потеряны. Файл возвращается к своему содержимому установки по умолчанию. Кроме того, пункты меню для memtest
отсутствуют в файле после переустановки grub.cfg
.