Существует много вопросов с очень похожими заголовками на этом сайте, но ни один из них действительно не помог мне. Если я пропустил что-то, сообщите мне.
Таким образом, вот моя история:
Мой ноутбук был поставлен с Win 8.1 (режим UEFI). Я установил Ubuntu 14.04 позже и сказал ей загружаться от ее корневого раздела. Таким образом, я имел два загрузочных раздела и обычно просто загрузил Ubuntu один, поскольку я мог также выбрать Windows в меню личинки. Несколько дней назад я переустановил Win 8.1 и как ожидалось не смог загрузить Ubuntu больше. Раздел Ubuntu был установлен незагрузочный. Я затем просто установил grub2 на разделе начальной загрузки, созданном Windows, и сделал a sudo os-prober
и a sudo update-grub
. Теперь, когда начальная загрузка от раздела начальной загрузки Win выкапывает шоу, и я могу выбрать между операционными системами, и все хорошо работает. Единственная вещь состоит в том, что, когда я выбираю, Ubuntu I теперь получает сообщение
Disk drive for /boot/efi is not ready or not present.
Continue waiting or press s to skip or m for manual recovery.
Если бы я обычно нажимаю s начальные загрузки Ubuntu, и хорошо работает, но сообщение является видом раздражения, и я также хотел бы понять, куда это прибывает из.
Я предполагаю, что завинтил немного, когда я решил не загрузиться от раздела Ubuntu больше, но от раздела Windows. Я все еще имею /boot
папка на моем разделе Ubuntu. Просто ре, устанавливающее boot
флаг на разделе Ubuntu, вероятно, заставил бы все работать как прежде, правильно?
Что лучший способ состоит в том, чтобы решить эту проблему?
Вот снимок экрана от gparted:
Править:
Проблема состояла просто в том что порядковый номер /dev/sdb2
в /etc/fstab
было неправильным. По-видимому, это было изменено путем переустановки Windows. После фиксации этого все хорошо работает. Я принял ответ Стержней, потому что он помог мне понять это.
Во-первых, загрузчики EFI - это обычные файлы, которые находятся в системном разделе EFI (ESP), , который смонтирован на /boot/efi
в Ubuntu. Когда ОС устанавливает загрузчик EFI, она также создает запись в NVRAM, которая указывает на ее загрузчик. Обычно вы можете получить загрузочное меню, показывающее эти записи при запуске компьютера. Это отличается от BIOS, где загрузчики хранятся в первом секторе жесткого диска и (часто) в первых нескольких секторах определенных разделов, которые часто помечаются «загрузочным флагом». Таким образом, в BIOS имеет смысл ссылаться на загрузочный диск или загрузочный раздел , , но в EFI эти фразы неоднозначны или вводят в заблуждение; вместо этого у вас есть загрузочные файлы и загрузочные записи NVRAM . Кроме того, EFI не использует «загрузочный флаг». Смущает то, что libparted (и, следовательно, parted
и GParted) злоупотребляют термином «флаг загрузки» для ссылки на код типа для ESP; и неправильная установка этого типа кода может вызвать серьезные проблемы. Я указываю на все это, потому что ваш вопрос пронизан терминологией, ориентированной на BIOS, и, читая между строк, звучит так, как будто вы не понимаете эту критическую разницу между режимами BIOS и EFI. Такое недопонимание часто приводит к тому, что люди совершают серьезные ошибки, вплоть до разрушения их установок, поэтому важно, чтобы вы немного узнали об этом. Подробнее о таких различиях см. пост в блоге Адама Уильямсона о том, как работает загрузка в режиме EFI.
Ваша проблема, тем не менее, не имеет прямого отношения к этому. Скорее вы не можете смонтировать ESP (/dev/sdb2
в вашем случае) в Ubuntu. Этот симптом часто возникает из-за функции «Быстрый запуск» в Windows. (Обратите внимание, что многие EFI имеют несвязанную функцию с похожим названием. Это относится к функции Windows .) Вы можете отключить быстрый запуск в Windows 8 / 8.1, как описано здесь , или в Windows 10, как описано здесь . (На многих других страницах также описывается, как это сделать.) В некоторых случаях вам может понадобиться отключить функцию гибернации Windows, как описано здесь .
Как только вы сделаете эти изменения в Windows, ESP снова станет доступным для монтирования в Ubuntu. Если этого не произойдет, вам может понадобиться создать резервную копию и создать заново. Вы можете заставить его монтировать в Ubuntu, монтируя его явно в командной строке; или вы можете создать резервную копию в оболочке EFI или в Windows. Сделав это, создайте на нем новую файловую систему и восстановите резервные копии файлов. Затем вам может понадобиться изменить запись /etc/fstab
для /boot/efi
, чтобы идентифицировать ее с новым серийным номером (называемым UUID в /etc/fstab
, хотя на самом деле это не так). Вы можете ввести sudo blkid /dev/sda2
, чтобы узнать серийный номер («UUID») после создания в нем новой файловой системы.