Данная статья должна была быть написана еще полгода назад, но всё никак.

Речь пойдёт о том, как установить ОС Linux второй ОС на новые ноутбуки с UEFI и предустановленной Windows. При условии, что обычная установка не дает нужного результата, а именно - после корректной установки Линукса "рядом" с Виндой всё равно загружается только ОС Windows.

Для начала, как уже стало традицией, поставим все точки над Ё.

Проблема.

Имеем ноутбук (возможно и десктоп, но автор имел дело лишь с ноутбуком) , на котором используется UEFI и имеется предустановленная ОС Windows (скорей всего 8.1, хотя ныне уже 10) . Хотим установить на этот самый ноутбук ОС Linux (речь пойдет об Linux Mint, но для остальных ситуация должна быть аналогична) второй операционной системой (с двойной загрузкой: возможностью использовать и Windows и Linux на выбор пользователя) . Устанавливаем Linux обычным способом* (про который я тоже когда-нибудь напишу, но в Интернетах подобных инструкций полно) , перезагружаемся и обнаруживаем собственно нашу проблему:

всегда загружается упрямая Винда, никакого Grub"а, ни намека на какую-то там двойную загрузку.

*На самом деле существует как минимум две важные особенности для установки Linux на компьютеры с UEFI. 1) Перед установкой в этом самом UEFI необходимо отключить опцию безопасной загрузки - Security Boot Control (или что-то похожее, зависит от версии UEFI). Иначе носитель информации с дистрибутивом Linux почти наверняка не сможет запустится. 2) Загрузчик (Grub) должен быть установлен на EFI\ESP раздел, обычно имеющий название sda2, а не просто sda, как-то было раньше, в эпоху BIOS. Данная опция регулируется в процессе установки Линукса, обычно где-то в районе шага разметки диска.

Быстрое решения для счастливчиков.

Для начала попробуйте зайти в UEFI (кнопка F2 или DEL ДО старта Винды). Там найдите раздел с указанием списка загрузки. В нем должны быть элементы: как минимум жесткий диск и Windows Loader . Последний обычно имеет наивысший приоритет загрузки. Просмотрите остальные элементы в данном списке, если там есть что-то вроде Ubuntu Loader (или что-то иное, в зависимости от устанавливаемого вами дистрибутива Linux) , то улыбаемся и машем выставляем его самым приоритетным и перезагружаемся. После перезагрузки должен появится долгожданный интерфейс Grub с выбором ОС для загрузки.

Если никаких других "лоадеров" нет, то вам не повезло как и мне: ваш ноутбук продал душу корпорации Microsoft и не желает видеть другие загрузчики. Или, что куда менее вероятно, загрузчик Grub установлен неверно (читаем примечания к предыдущему разделу и делаем всё по фен-шую) .

Мат.часть и необходимые знания.

Про то, что такое UEFI и BIOS, зачем они нужны. Про разницу между MBR и GPT, а также про их смысл довольно подробно описано . Повторятся не будем. Данной информации вполне должно хватить для понимания данной статьи.

Также от читателя потребуются базовые знания установки ОС Linux. Читаем где-то там же .

Еще нужны будут базовые навыки владения данной ОС, в частности управлением файловой системой с помощью Midnight Commander (MC) (обзор основных возможностей и команд ) и самые азы работы в консоли Linux (для Ubuntu-образных линуксов хорошая инструкция для новичков ).

Понадобится установить MC (в том же Мятном Линуксе его по умолчанию нет), запустить его от имени рута (администратора), внести изменений в текстовый файл и выполнить еще пару несложных команд в консоли.

Если всё это вам по силам и без вышеприведенных инструкций - я рад за вас, можем двигаться дальше. Инструкции эти приведены на всякий случай, дабы избежать вопросов, в них освященных.

Решение.

Учтите, что весь алгоритм построен для ОС Linux Mint. В других Линуксах (не основанных на Ubuntu или Debian) названия каталогов и команды могут несколько отличаться.

  1. Установить Линукс рядом с Windows, используя для этого соответствующую опцию в одном из первых шагов установки или (если данная опция не появилась) разметив жесткий диск должным образом (заслуживает отдельной статьи, на убунту-вики про это тоже уже написано) .
  2. НЕ ПЕРЕЗАГРУЖАТЬ компьютер после установки. Если перезагрузили - ничего страшного, просто снова придется загрузиться с live-cd\usb\dvd (ведь линукс-то у вас не запускается?) .
  3. На всякий случай в консоли выполнить команду sudo update-grub (введя пустой пароль при запросе).
  4. Открыть консоль\терминал или иными средствами (например, с помощью менеджера программ в Ubuntu\Linux Mint) установить mc. В консоли (для систем с apt) это делается следующим образом: sudo apt-get install mc (после чего потребуется ввод пароля, напомню, в лайв-режиме пароля нет, просто жмем Enter и соглашаемся на установку) .
  5. Запустить mc от имени рута: sudo mc (и снова пустой пароль, если спросит) .
  6. Найти в файловой системе следующий каталог: /boot/efi/EFI .
  7. Переименовать каталог (комбинация ctrl+F6 в mc) Microsoft во что-нибудь другое, например в Microsoft2.
  8. Создаем новый каталог с именем Microsoft (клавиша F7) .
  9. Заходим в только что созданный каталог Microsoft и частично (см.далее) создаем внутри его иерархию папок аналогичную старому Microsoft (тому, что переименовали) . В моем случае он имел такую структуру папок: /boot/ , затем куча папок и файл bootmgfw.efi рядом с ними. Нужно воссоздать структуру папок ровно до этого файла. Т.е. всё, что лежит рядом с ним - не нужно, а всё, что идет до него (т.е. родительские папки, соседние с ними тоже не нужны) воссоздаем в нашей новой папке Microsoft. В моем случае понадобилось создать только папку boot, итоговый путь до нового каталога вышел таким: /boot/efi/EFI/Microsoft/boot .
  10. Находим в каталоге из шага 6 папку с именем нашего дистрибутива линукса, в нашем случае это ubuntu . Копируем (оригиналы файлов и папку ubuntu на всякий случай оставляем, не помешают) все файлы из данной в папки в итоговый каталог, созданный на предыдущем шаге /boot/efi/EFI/Microsoft/boot ) .
  11. В получившейся файловой системе (в созданном на 9-ом шаге каталоге и перемещенных в него на 10-ом шаге файлах) находим файл grubx.efi или grubx64.efi (будет только один из них: в зависимости от разрядности установленного линукса) . Переименовываем его в bootmgfw.efi .
  12. Находим файл /boot/grub/grub.cfg . Открываем его для редактирования (клавиша F4) . Внутри него находим (клавиша F7 вызывает форму поиска по тексту) слово "Microsoft" в контексте строки, начинающейся с "chainloader" и заменяем это слово (должно быть только одно вхождение и именно в строке с "chainloader", так что не ошибетесь) на название каталога, в который мы переименовали Microsoft на 7-ом шаге (т.е. на Microsoft2 в нашем примере) . Сохраняем изменения в файле (клавиша F2 - сохранить) .

Вот и всё. Выглядит очень сложно, но если выполнять всё точно по шагам (которые расписаны максимально подробно!) , то всё получится без каких-либо проблем. И, после перезагрузки и последующей загрузки уже с жесткого диска (а не с лайв-носителя) мы увидим вожделенный экран с меню выбора ОС. Ура, товарищи!

Что мы только что сделали?

Поясняю. Как видно, производитель вашего (и моего, у меня Acer если что) ноутбука продал душу Мелкософтам, как я уже говорил ранее. А именно, ноутбук на уровне UEFI не желает загружать что-либо отличное от файла /boot/efi/EFI/Microsoft/boot bootmgfw.efi , в котором располагается загрузчик Windows. Такая вот дискриминация!

Подменив файл грабовским, мы тем самым обманули и ноутбук и Майкрософт. Заставили грузить наш любимый Grub, вместо злой и упрямой винды.

Что делать дальше? + Меры предосторожности при обновлениях.

Живите и радуйтесь. Но ровно до тех пор, пока grub не захочет обновиться. Или же, вы не захотите согрешить и обновить свою винду

Сперва об обновлении Grub .

Дело в том, что после обновления Grub запускает команду update-grub, которая в созданной нами иерархии папок не находит загрузчика Windows (по непонятным мне причинам) . И, тем самым, после обновления grub и последующей перезагрузки ПК в списке выбора ОС не будет вредной Windows (и поделом ей!) . Решается это путанно, но алгоритм знакомый

  1. Переименовываете папку Microsoft (в которой сейчас файлы от граба и линукса) во что-нибудь временное, например в MicrosoftLinux.
  2. Старую добрую папку Microsoft2 (в которой находится загрузчик Windows), переименовываете в просто Microsoft, возвращая ее тем самым в изначальное состояние.
  3. Выполняете команду sudo update-grub .
  4. Возвращаете имена папок, придавая им вид из решения. Т.е. MicrosoftLinux переименовываем назад в Microsoft, Microsoft обратно в Microsoft2.
  5. Повторяем шаг номер 12 из решения и снова радуемся появившейся Windows в списке ОС при загрузке компьютера.

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

Теперь о том, что нужно знать, если вы собрались обновить винду .

Большинство обновлений Windows требует перезагрузки. У меня Windows 8.1 после такой перезагрузки ожидаемо не сумела загрузиться, ибо не нашла своего загрузчика по адресу /boot/EFI/Microsoft (там же у нас теперь линукс живёт) . Поэтому, обязательно перед установкой обновлений винды - верните ее загрузчик на место. Т.е. в папку Microsoft в нашем примере. Да, после этого вся проблема вернется, ибо загружаться вновь будет только винда, но ведь второй раз выполнить алгоритм из решения будет уже проще?;)

Ubuntu, как и многие другие дистрибутивы Linux в качестве загрузчика системы используют GRUB2. Если GRUB2 «ломается», например, если вы установите Windows после установки Ubuntu, либо при перезаписи MBR - загрузить Ubuntu вы не сможете.

GRUB2 можно запросто починить с помощью Live CD Ubuntu или USB-флешки. Этот процесс отличается от восстановления загрузчика GRUB Legacy на старых дистрибутивах Linux.

Описанный ниже процесс должен работать со всеми версиями Ubuntu. Он был протестирован на версиях Ubuntu 16.04 и Ubuntu 14.04.

Способ с использованием графического интерфейса: Boot Repair###

Boot Repair - приложение с графическим интерфейсом, с помощью которого можно починить GRUB2 всего одним щелчком мыши. Идеальное решение для большинства пользователей.

Если у вас есть носитель, с которого вы устанавливали Ubuntu, вставьте его в компьютер, выполните перезагрузку и загрузитесь со сменного носителя. Если носителя у вас нет, загрузите Live CD Ubuntu и запишите его на диск или создайте загрузочную USB-флешку .

При загрузке, нажмите «Попробовать Ubuntu» (Try Ubuntu), чтобы загрузить работоспособное окружение рабочего стола.

Перед тем как продолжить, убедитесь, что у вас работает подключение к интернету. Возможно, потребуется выбрать сеть Wi-Fi и ввести пароль.

Откройте терминал из Dash и выполните следующие команды для того, чтобы загрузить и установить Boot Repair :

Sudo apt-add-repository ppa:yannubuntu/boot-repair sudo apt-get update sudo apt-get install -y boot-repair boot-repair

Boot Repair автоматически просканирует систему после запуска команды boot-repair . После этого, щелкните кнопку Recommended repair для восстановления GRUB2 .

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

Boot Repair начнёт работать. Возможно, появится запрос открыть терминал и скопировать/вставить несколько команд.

Просто следуйте инструкциям на экране. Выполните все инструкции Boot Repair и щёлкните Forward чтобы перейти к следующему экрану. Утилита проведёт вас через все необходимые действия для восстановления.

После того, как Boot Repair закончит работу, перезагрузите компьютер. Ubuntu должна будет нормально запуститься.

Способ с использованием терминала

Если же вы не боитесь «запачкать руки», вы можете починить систему через терминал. Вам потребуется загрузиться с Live CD или USB-флешки, так же, как в способе, описанном выше. Убедитесь, что версия Ubuntu на диске совпадает с версией, установленной на компьютере. Например, если у вас была установлена Ubuntu 14.04, следует использовать Live CD Ubuntu 14.04.

После загрузки системы откройте терминал. Определите раздел диска, на котором установлена Ubuntu с помощью одной из следующих команд:

Sudo fdisk -l sudo blkid

Ниже приводится вывод обеих команд. В случае команды fdisk -l , раздел Ubuntu можно определить по слову Linux в колонке System . В случае использования команды blkid , раздел определяется по использованию файловой системы ext4 .

Если на компьютере имеется несколько разделов Linux в формате ext4 , обратите внимание на их размер и порядок, в котором они представлены в списке.

Выполните следующие команды для монтирования раздела Ubuntu в /mnt/ubuntu , заменив /dev/sdX# на имя устройства, на котором установлен ваш раздел Ubuntu, определенный выше:

Sudo mkdir /mnt/ubuntu sudo mount /dev/sdX# /mnt/ubuntu

На примере выше раздел Ubuntu находится на /dev/sda1 . Это первый раздел на первом жёстком диске.

Важно! Если у вас имеется отдельный загрузочный раздел, пропустите команду выше и монтируйте загрузочный раздел в /mnt/ubuntu/boot . Если вы не знаете, есть ли у вас отдельный загрузочный раздел, то скорее всего его нет =).

Выполните следующую команду для повторной установки GRUB2 с Live CD, заменив /dev/sdX на имя жёсткого диска выше. Не указывайте номер. Например, если выше вы использовали /dev/sda1 , введите просто /dev/sda .

Sudo grub-install --boot-directory=/mnt/ubuntu/boot /dev/sdX

Выполните перезагрузку, Ubuntu должна нормально загрузиться.

Для получения подробной информации о том, как использовать команду chroot для получения доступа к повреждённым системным файлам Ubuntu и восстановления GRUB2, смотрите вики-страницу Ubuntu (на англ. языке).

Несмотря на то, что операционная система Linux занимает незначительную долю рынка, её различные сборки завоёвывают популярность своей официальной бесплатностью, довольно стабильной работой, а также значительной гибкостью в настройках. Да, некоторые моменты функционируют не так , как на Windows или Mac OS, да и большинство программного обеспечения создаются в первую очередь для этих двух продуктов. Но это останавливает далеко не всех.

Для работы ОС Linux необходимо восстановление загрузчика Grub, если произошел сбой.

Хотя практически любая сборка Linux работает без сбоев, иногда может случиться ошибка загрузчика, из-за чего становится невозможным запустить операционную систему. По каким причинам это может происходить? Как восстановить загрузчик Grub в Linux? Какие рабочие способы существуют? Обо всём этом и даже немного больше мы расскажем в сегодняшней статье.

После того как вы производите инсталляцию Linux на жёсткий диск вашего компьютера, все файлы копируются в отдельные папки. В одних каталогах хранятся файлы обычного программного обеспечения, которое можно спокойно удалить. В других же записываются файлы, без которых операционная система работать не будет. Сюда относятся ядро Linux, графическая оболочка, а также системный загрузчик Grub . Именно последний и применяется для того, чтобы запускать инсталлированную операционную систему. Каким образом это происходит?

В специальном загрузочном разделе система создаёт главную загрузочную запись. Её английская аббревиатура выглядит как MBR, и расшифровывается как Master Boot Record. При старте компьютера BIOS обращается к этой записи, а потом в действие вступает Grub и, когда всё в порядке, происходит запуск Linux. И если же загрузчик повреждён, при запуске произойдёт ошибка и система запускаться не будет.

По каким причинам это может случиться? Подавляющее большинство случаев являются следствием того, что после установки Linux в качестве первой системы вы устанавливаете Windows в роли дополнительной. Компания Microsoft традиционно не любит Linux, поэтому установщик Windows удаляет Grub Linux. Эта же проблема может возникнуть при некорректной установке самого Linux, перехода на другой дистрибутив либо из-за переразметки диска.

Самое важное, что следует учесть - это то, что не нужно сразу же думать о переустановке всей системы. Достаточно лишь просто восстановить Grub и всё будет работать, как и прежде. Перейдём к рассмотрению наиболее действенных способов, доступных даже неопытным юзерам.

Через терминал с загрузочного носителя

Для этого вам потребуется загрузочная флешка либо диск с записанным дистрибутивом Linux. В идеальном варианте он должен быть аналогичным системе, установленной на жёсткий диск. Но если дистрибутив - это не самый важный момент, то разрядность должна совпадать в любом случае. Иначе это чревато ещё большими последствиями, в результате которых уже точно придётся всё переустанавливать.

  1. Вставьте флешку или диск в разъём компьютера, после чего в качестве приоритетного для загрузки. Необходимая настройка находится в разделе Boot Device Priority либо First Boot Device. Чтобы запустить BIOS, при включении нажмите нужную кнопку или их комбинацию на клавиатуре. Наиболее популярными вариантами являются F2, Del, Shift + F2, F10. Чтобы не разбираться с БИОСом, можно просто нажать F11 или F12 и выбрать носитель из предложенного списка.
  2. Далее нужно выяснить, на каком разделе винчестера инсталлирована система, а какой указан в качестве загрузчика. Для этого нужно запустить терминал (аналог командной строки Windows), найдя его в меню приложений либо же нажав комбинацию клавиш Ctrl + Alt + T, либо Alt + F2. В открывшемся окошке вам нужно будет впечатать команду sudo fdisk -l. Сразу же утилита просканирует все разделы диска и отобразит информацию о каждом из них. Будет показана даже информация о других установленных на компьютер операционных системах. Вы сможете узнать название раздела, его расположение, размер, а также тип его файловой системы. При условии, что при установке Ubuntu вы совершали разметку вручную, вы без проблем поймёте, какой из разделов является загрузочным, а какой - корневым. При автоматической разметке ориентируйтесь на название Linux. Именно он и будет корнем вашей системы. Имя раздела обычно состоит из аббревиатуры sdc либо sda и цифры с порядковым номером.
  3. Далее нужно выполнить монтирование корневой файловой системы в папку /mnt. В этом вам поможет команда sudo mount /dev/sda1 /mnt, где вместо sda нужно прописать название вашего раздела.

Начиная с этого этапа, восстанавливать Grub в Linux возможно двумя методами.

Способ 1

  1. Введите команду восстановления загрузчика: sudo Grub-install -root-directory=/mnt /dev/sda.
  2. Перезагрузите Компьютер при помощи команды sudo reboot. В результате должно появиться меню выбора ОС.
  3. Если в этом меню отображается устаревшая информация, обновите загрузочную запись MBR. Для этого запустите Linux в обычном режиме, откройте терминал и используйте команду sudo update-Grub. Если это не помогает, примените sudo update-Grub –output=/mnt/boot/Grub/Grub.cfg, а затем повторите предыдущую.
  4. Ещё раз перезапустите компьютер.

Способ 2.

  1. После монтирования корня файловой системы в раздел /mnt, нужно дополнительно смонтировать папку с загрузочными файлами, а также другие компоненты взаимодействия с ядром. Для этого одну за другой выполните команды:

sudo mount /dev/sdc2 /mnt/boot

sudo mount –bind /dev /mnt/dev

sudo mount –bind /sys /mnt/sys

sudo mount –bind /proc /mnt/proc

  1. Далее вам понадобится запустить оболочку chroot. Для этого в терминале добавьте chroot /mnt /bin/bash. Первый параметр обращает внимание на корневой каталог, а второй - на специальную оболочку для преобразования команд юзера.
  2. Далее необходимо применить команды, чтобы попасть в Ubuntu и пользоваться практически всеми её приложениями, кроме сервисов и графического интерфейса:

source /etc/profile.

  1. Теперь можно непосредственно приступать к восстановлению Grub. Для этого нужно воспользоваться несколькими командами:
    • Для повторной инсталляции загрузчика на винчестер: sudo Grub2-install /dev/sdc (последний параметр - это название вашего раздела).
    • Для создания нового файла конфигурации: sudo Grub2-mkconfig -o /boot/Grub/Grub.cfg.
    • Для обновления меню загрузки: sudo Grub-update.
  2. Для завершения процедуры выйдите из оболочки chroot через команду exit, а также отмонтируйте ранее смонтированные разделы файловой системы:

sudo umount /mnt/dev

sudo umount /mnt/proc

sudo umount /mnt/sys

sudo umount /mnt

sudo umount /mnt/boot.

  1. Выполните перезагрузку через reboot.

Через утилиту восстановления загрузчика

Поскольку предыдущий метод может быть не всем под силу, воспользуемся той особенностью Ubuntu, что она может полноценно работать, будучи запущенной с флешки. Для этого мы применим специальную утилиту boot-repair. Что нужно сделать?

  1. Запустить Ubuntu с флешки и убедиться, что имеется активное интернет-соединение.
  2. Найти терминал и запустить в нём одну за другой такие команды:

sudo add-apt-repository ppa:yannubuntu/boot-repair

sudo apt-get update

sudo apt-get install boot-repair.

  1. В меню приложений найти «Восстановление загрузчика» и включить утилиту.
  2. Кликнуть на кнопку «Рекомендуемый способ восстановления» и дождаться окончания процедуры.
  3. В большинстве ситуаций этих действий вполне достаточно для нормальной работоспособности загрузчика Grub Linux.

Через командную строку при частичном доступе к файловой системе

Иногда загрузчик Grub повреждён не настолько сильно, что не может загрузиться вся система. Например, загрузочный раздел остаётся целым, но сама утилита не имеет к нему доступа. В таком случае открывается программная оболочка, чем-то похожая на командную строку, и выводится сообщение следующего содержания: Minimal BASH like line editing is supported. Вот с помощью этой командной строки можно попробовать выполнить загрузку Ubuntu.

От вас ожидается, что вы точно уверены и знаете, на каком из винчестеров помещена система и ядро. Имеющихся команд всего четыре, их нужно применять последовательно:

  1. Чтобы система отсканировала диски и разделы, задайте команду ls. В качестве ответа вы получите список жёстких дисков (например, hd1, hd2), а также тип файловой системы на них (например, msdos1, msdos2). К примеру, будем считать, что загрузочный раздел расположен в /dev/sda1.
  2. Далее нужно выбрать тот раздел, с которым вы желаете работать. В нашем случае команда будет записываться следующим образом: set root=(hd1,1).
  3. Загрузите обычную оболочку Grub: insmod ext2, insmod normal, normal.
  4. Запустите ядро Linux: linux /boot/vmlinuz.
  5. Загрузите систему: boot.
  6. После запуска Ubuntu в обычном режиме откройте терминал и закончите процедуру восстановления загрузчика следующими командами:

sudo Grub2-install /dev/sda

sudo Grub2-mkconfig -o /boot/Grub/Grub.cfg.

  1. Перезагрузитесь и радуйтесь нормальной работе.

Заключение

Хотя на первый взгляд восстановление загрузчика Grub в Ubuntu может показаться чем-то очень сложным, и многие из пользователей Linux при подобной проблеме сразу же начнут переустанавливать операционную систему, при наличии нормальной инструкции всё делается очень просто и без каких-либо осложнений. Мы надеемся, что смогли помочь вам избежать потери важной информации. Сохраните страницу в закладки и поделитесь этой информацией с вашими друзьями и знакомыми. В комментариях оставляйте свои вопросы.

Задача: Имеется комп с двумя системами: Windows 7 и Ubuntu 14.04
Необходимо обновить версию винды, до 10 а убунты - до 16.04
Для начала мне надо было установить лицензионную винду вместо того, что было и обновить ее до последней версии - десятки.
Образ семерки был скачал с сайта Microsoft, залит на флешку с помощью свободной и бесплатной программы rufus , с этой флешки винда была успешно установлена и потом обновлена до 10-ки.
Теперь встала задача восстановить GRUB, так как винда, естественно, затерла загрузчик, установив свой, который знать не хочет ни о каких линуксах:) Задача усложнена тем, что современные материнские платы содержат не BIOS, а UEFI - более продвинутую локальную операционную систему. И так, как раньше, тупо в лоб GRUB не установишь.

Немного погуглив этот вопрос, я нашел решение в виде программы Boot-Repair.
Она сканирует диски на предмет операционных систем и устанавливает GRUB, с формированием нужного меню и всеми необходимыми настройками.
Есть два пути работы с этой программой:
Первый путь - загрузиться с флешки или LiveCD диска убунты, установить и запустить эту программу:
Открыть терминал (Ctrl+Alt+T), скопировать и выполнить следующие команды:
sudo add-apt-repository ppa:yannubuntu/boot-repair
Затем обновить источники:
sudo apt-get update
Следующая команда установит Boot-Repair:
sudo apt-get install -y boot-repair
После этого программу можно запустить обычным для Ubuntu способом, через системное меню.
Второй путь - скачать образ диска с этой программой , залить его на флешку или CD, загрузиться с него и восстановить загрузчик. Я выбрал второй вариант, как более практичный. Мало ли, где он еще может понадобиться. Скачал и залил его на флешку тем же rufus -ом.
Не знаю, как там с LiveCD, но если грузиться с флешки на материнских платах с UEFI, надо грузиться в режиме UEFI, иначе программа откажется восстанавливать GRUB. А вот тут как раз, поджидает возможный подводный камень. Вместо привычного выбора языка и параметров загрузки, на экране видим меню GRUB-а на черном фоне со строкой единственного варианта старта.
В случае, если грузиться с флешки с Ubuntu, имеем меню с двумя вариантами:
- Загрузка Ubuntu без инсталляции
- Инсталляция Ubuntu.
Во всех этих случаях у меня при выборе любого пункта у меня был черный экран с зависанием. То есть, система не смогла подобрать видеорежим и стала в ступор.
Решается эта проблема следующим образом: Надо выбрать нужный пункт меню в GRUB-е, нажать клавишу "e", так мы попадаем в редактор строки запуска, затем в конце строки, которая самая длинная, перед "--" надо дописать параметр nomodeset. После этого нажать F10. Система загрузится в упрощенном графическом режиме с английским языком по умолчанию.
Программа предлагает рекомендуемые параметры работы. В большинстве случаев этого достаточно. Продвинутые пользователи могут в расширенных параметрах выбрать приоритет загрузки операционной системы и время ожидания выбора.
в процессе нужно выполнить всё, что просит программа. Процесс простой и наглядный. По окончании восстановления вы увидите сообщение, что загрузчик восстановлен, и вы можете перезагрузить компьютер.

На сегодняшний день практически все уже слышали про технологию UEFI. Говорить о том, что это такое и зачем оно нужно, я не собираюсь. Сегодня я бы хотел описать простейший сценарий установки Dual Boot системы с полной поддержкой UEFI, а также рассмотреть отдельно установку и настройку бут-менеджера rEFInd. Возможно вы уже видели подобные мануалы и гайды, но я постараюсь донести весьма доходчиво суть того, что мы будем делать и зачем. В других мануалах вы лишь смотрите за «магией» картежника и пытаетесь её повторить, делая, зачастую, элементарные ошибки. Кому эта тема интересна - прошу под кат.

В целом UEFI призвана наоборот упросить процесс загрузки, а не усложнить его. К примеру, посредством этой технологии компьютер можно загружать ОС и вовсе без прослойки в лице GRUB / LILO / etc, загрузчиком может выступать сама UEFI. Однако этот метод имеет свои недостатки, например, вам придется повозиться после обновления ядра, можно, разумеется, написать скрипт, но в целом этим и занимается grub2-efi

Итак, давайте сформируем примерный список наших действий, некоторым хватит прочесть его и уже взяться за дело. Собственно тут будет всего четыре пункта. Пятый и шестой пункт опционален.

  1. Запись образа Windows 10 (8/8.1) на диск/флешку.
  2. Установка Windows 10 на часть диска.
  3. Запись образа Linux-дистрибутива с поддержкой EFI (большинство) на диск/флешку.
  4. Установка Linux-дистрибутива на оставшуюся часть диска.
  5. Установка и конфигурация rEFInd.
  6. Удаление GRUB и полный переход на rEFInd.

На первый взгляд всё очень просто, всего 4 базовых пункта, но тут есть огромное количество нюансов.

Ошибки делают на всех этапах: входят в режим Legacy-bios, указывают не тот загрузочный раздел, просто не понимают, что делают и т.д. В конечном итоге всё это приводит к массе боли и страданиям на форумах, в чатах, и т.д. На деле же всё нереально просто, нужно просто понимать, что ты делаешь на каждом этапе и проверять себя.

Сначала немного теории

UEFI видит только один специальный ESP-раздел, обычно он имеет размер 100-200 мегабайт и форматирован в FAT32 (бывает в FAT16), в нем содержаться папки с названиями а-ля Boot, Microsoft, Fedora, Ubuntu и т.д. Если вы перепробовали достаточное количество ОС и никогда не форматировали этот раздел, то там могло набраться приличное количество папок. К примеру, у меня было 2 живых оси и лежало около 6 папок.

Включение красивой темы

С этим всё просто, чуть выше последняя строчка конфига указывает на.conf-файл темы. Сами темы желательно класть в папку /boot/efi/EFI/refind/themes . По-умолчанию её нет, создайте через mkdir .
Заходим в директорию themes и просто пишем git clone https://github.com/munlik/refind-theme-regular.git . В конфиге прописываем строку include themes/refind-theme-regular/theme.conf
Другие темы можно посмотреть на оф. сайте .

Там же можно посмотреть подробные процессы установки, параметры для тонкой настройки конфига и многое другое.

Пожалуй на этом всё. Мы получили красивый бут-менеджер для выбора нужной ОС с полной поддержкой UEFI. Пункт с установкой rEFInd наиболее сложный, а поэтому опциональный, большинству хватит grub2-efi .

На последок небольшое видео от меня:


Наверняка закралось приличное количество ошибок в тексте, буду рад, если вы отпишите о них мне ЛС.