Uefi загрузка linux windows

[Решено] Установка Linux второй системой с Windows 8/8.1/10 на ноутбук с UEFI

Сегодня расскажу про установку Linux второй системой к уже имеющейся Windows 8/8.1 или 10 на ноутбук с UEFI с помощью загрузочной USB-флешки. На данный момент это будет, наверное, уникальное руководство, так как ничего вразумительного на просторах рунета по данной теме мне отыскать не удалось. Несмотря на бурное развитие интернета, различных сообществ и форумов по Linux, реально полезную информацию в куче «псевдоумных» комментариев найти сейчас крайне сложно.

Для экспериментов у меня был ноутбук Asus X555LD с UEFI, предустановленной лицензионной Windows 8.1 и соответственно разделом восстановления. Всё это хозяйство в обязательном порядке должно было остаться и работать как и раньше. А второй системой должен был стать, последний на данный момент, Linux Mint 17.3 «Rosa» MATE (64-bit) с возможностью выбора нужной ОС при включении ноутбука. Устанавливать дистрибутив будем с загрузочной флешки.

В статье постараюсь обойтись без специальных терминов и команд, так что справиться с установкой сможет даже начинающий пользователь Linux. На самом деле установка современных дистрибутивов Linux, в большинстве случаев не вызывает никаких вопросов и танцев с бубном как раньше, но только до тех пор пока вы не сталкиваетесь с новыми BIOS UEFI.

Многие просто забивают на проблему, если ноутбуки позволяют выставить режим legacy BIOS (т.е. устаревшую базовую система ввода/вывода) — собственно к этому и сводится большинство советов на форумах. Но такой подход иногда приводит к не очень корректной работе ноутбука, чаще всего это выражается в управлении функциями регулировки яркости экрана, звука, wi-fi.

А уж по части установки Linux второй системой к Windows, то тут вообще единодушие в решение проблемы — сносите ненавистный Windows 8/10 и устанавливаете в обычном режиме семёрку вместе с вожделенным Линуксом. Ребята, ну это вообще не путь юниксоидов. Надо искать решение проблемы, а не тупо делать что проще. К тому же новые ноутбуки режим legacy BIOS уже не предоставляют, как тут быть спрашивается? Да и терять лицензию не каждому захочется, плюс продавая ноутбук желательно возвратить его в исходное состояние.

От лирики перейдем к главному, ради чего всё затевалось — непосредственно к установке. Напомню что мы хотим получить в итоге — предустановленную Windows 8 с заводским разделом восстановления, которая бы мирно жила рядом с Linux Mint (ну это в моем случае, у вас может быть и другая) в UEFI режиме, ну и соответственно с помощью Grub загружать обе системы.

Выделяем место на жестком диске для Linux

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

Освободить место на жестком диске можно как штатными средствами Windows, так и воспользовавшись какой-нибудь бесплатной или платной программой для работы с разделами, полагаю это не проблема. Тут главное не навредить и не трогать раздел загрузки efi, восстановления RECOVERY и иные вспомогательные разделы (зависит от выдумки производителя).

Для Linux я отщипнул кусочек в 200Гб от диска D, у меня получилась неразмеченная область — туда и будем ставить наш дистрибутив. Кому удобнее, может сразу разметить освободившееся место под Linux, чуть ниже напишу какие именно разделы нам понадобятся.

Читайте также:  Hyper v разрешение экрана виртуальной машины windows 10

Создание загрузочной флешки Linux с UEFI

Скачиваем с сайта 64-битный iso-образ диска Linux Mint. Где-то читал что у 32-х битных систем есть проблемы с режимом UEFI, сам не проверял, так что у кого есть интерес, может поэкспериментировать и поделиться результатами если не жалко.

Свою флешку я сделал просто из терминала на Mac по аналогии как описывал ранее создание загрузочной флешки с FreeBSD:

Аналогично командой dd создается загрузочная флешка и на Linuх. Под Windows корректно создать загрузочную флешку в режиме UEFI можно утилитой Rufus, о которой тоже уже писал в блоге.

Пожалуй, практически все приготовления завершены, но прежде чем перейти непосредственно к установке Linux, осталось в BIOS-UEFI ноутбука (на Asus заходим в него по F2) отключить Secure Boot. В противном случае включенный режим проверки подписи ключей UEFI не даст разрешение Grub запустить Windows.

Установка Linux Mint второй системой на ноутбук c Windows 8 в режиме UEFI

Включаем ноутбук с вызовом меню выбора загрузочных устройств (у меня это ESC, у вас скорее всего по другому) и выбираем загрузку с флешки. Самое интересное начинается в момент разбивки диска о чем так мало информации в сети. Делать будем в ручном режиме, иначе установщик предлагает тупо затереть весь жесткий диск и оставить один Linux, нам такой радикальный подход даром не нужен. Процесс разбивки диска и установки я постарался максимально наглядно показать на картинке:

Как и обещал ранее, чуть подробнее расскажу про разметку диска и куда нам следует установить загрузчик именно для режима UEFI.

  1. /dev/sda1 — загрузочный раздел UEFI где установлен Windows-загрузчик и куда мы подсунем дополнительно свой. Не трогаем и не форматируем
  2. /dev/sda2 и /dev/sda3 — эти два раздела нужны Windows и нам не интересны, не трогаем
  3. /dev/sda4 — тут установлена Windows 8, я его тоже не трогал, но в дальнейшем за счет свободного места на нем можно с помощью программ разметки дисков увеличить или уменьшить размер диску D
  4. /dev/sda5 — в Windows представлен как диск D. Именно из него я и выделил 200 Гб для Linux
  5. /dev/sda7 — создаем раздел размером 150-250 Мб и сопоставляем ему точку монтирования /boot
  6. /dev/sda8 — для этого раздела я выделил почти всё свободное место, оставив чуть более 1500 Мб под swap (/dev/sda9)
  7. /dev/sda6 — раздел RECOVERY Windows. Тут само собой ничего не трогаем

Как видите, нет ничего сложного, осталось только указать место куда система должна будет устанавливать загрузчик — /dev/sda1. Дальнейшая установка 100500 раз описана в интернете, нет смысла повторяться. Наслаждайтесь.

Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.

Разбираемся с UEFI и GPT: установка Windows и Kubuntu на один диск

Помните те времена, когда BIOS был 16-битным с адресным пространством в 1 Мб, а вся информация о загрузчиках писалась в MBR? На смену уже давно пришли более гибкие технологии: UEFI (замена BIOS), и GPT (замена MBR).

Предыстория: Понадобилось мне недавно на свой домашний десктоп поставить 2 системы, чтобы разграничить окружение. Kubuntu для разработки на Ruby on Rails (ибо работаю удаленно), и Windows для всяких игрушек в свободное время. Хочу заметить, что несколько лет назад это было достаточно просто: один раздел для винды и один раздел для линукса, загрузчик записывался в MBR. Однако, технологии не стоят на месте, и оказалось, что настройка dual boot’а теперь несколько изменилась.

Итак, начнем.

Терминология

GPT (GUID Partition Table, Таблица разделов GUID) — часть спецификации UEFI. UEFI использует GPT так же как BIOS использует MBR.
Главным отличием GPT от MBR, на мой взгляд, являются:

  • Количество разделов: MBR поддерживает только 4 раздела. Можно и больше, но только через extended partition, что является просто хаком ограничений. GPT поддерживает до 128 разделов.
  • Размер диска: MBR поддерживает диски до 2Тб, в то время как GPT — до 9.4 Зеттабайт (=9.4 × 10^21 байт, или условно 1000 Тб)
  • Порядок загрузки: раньше BIOS загружал MBR, и в нем содержались адреса загрузчиков для каждого раздела диска. Теперь UEFI считывает GPT, находит в таблице все разделы типа efi (на них содержатся загрузчики), и подгружает их в память. Разберем это на примере немного позже.
Читайте также:  Fix time windows mac os

Что делаем:

Устанавливаем следующие ОС на пустой HDD размером в 1 Тб.

  • Windows 8.1 x64. Windows поддерживает загрузку с GPT начиная с Windows 8 для 32 битной архитектуры и с Windows Server 2003 и Windows Vista для 64 бит (Источник).
  • Kubuntu 15.04. По идее подойдет любой дистрибутив, который поддерживает Grub2, лично я предпочитаю Kubuntu.

NB: Материнская плата поддерживает UEFI

Разбивка диска

Сначала устанавливаем Windows 8, т.к. она автоматически будет использовать GPT.
Разбивка будет выглядеть так (пардон за кривой снимок):

Винда по умолчанию создает 4 раздела:

  1. Recovery (300Мб). Очевидно, что он используется для восстановления системы. Оставим как есть.
  2. EFI partition (100Мб). Помечается как system type (не любят в Майкрософте называть вещи своими техническими именами). Собственно сюда и пишутся загрузчики.
  3. MSR (128Мб, Microsoft Reserved Partition). Для меня остается загадкой, зачем он нужен. Данных там никаких нет, просто пустое место, зарезервированное для каких-то непонятных целей в будущем.
  4. Основной раздел. Мы его поделим на 3: 200 гигов под винду, 500 гигов для раздела под данные и остальное пространство пока оставим неразмеченным (отформатируем потом при установке Kubuntu).

Пропустим саму установку Windows, т.к. в ней все стандартно и понятно.

Теперь загрузимся с USB в Kubuntu Live.

Проверим EFI раздел:

Boot0000 — виндовый загрузчик
Boot0001 — дефолтный загрузчик
Boot0003 — флешка с Kubuntu Live
Обратите внимание, что список загрузчиков не привязан к одному физическому диску как в MBR. Он хранится в NVRAM.

Можем также сразу посмотреть, что же в этом разделе, подмонтировав его:

Там окажутся следующие файлы:

Убедились, что все хорошо. Теперь продолжаем разбивку диска (через KDE Partition Manager).

Первые пять разделов остались прежними. Обратите внимание, как Kubuntu определила разделы:

  • sda2 определился как FAT32. Это практически верно, т.к. файловая система типа EFI основана на FAT, только с жесткими спецификациями.
  • sda3 (MSR) не определился, т.к. файловой системы там так таковой нет.

Нам осталось только отформатировать раздел для Kubuntu в ext4, и выделить раздел под swap.

Несколько слов про swap. Рекомендуют на swap выделять от SQRT(RAM) до 2xRAM. Т.к. у меня 16 Гб RAM, то по минимуму мне надо 4 Гб свопа. Хотя я с трудом могу представить ситуации, при которых он будет использоваться: десктоп в hibernate я не перевожу, и сильно тяжелых программ, которые жрут больше 16 гигов, не использую.

P.S. При форматировании раздела в swap Partition Manager может выдать ошибки, которые связаны с тем, что Kubuntu автоматически монтирует в себя любой swap раздел, однако на результат эти ошибки не влияют.

Итак, финальная разбивка:

Теперь самое главное для правильного dual boot’а. При установке Kubuntu важно выбрать, куда установить загрузчик:

Указываем, конечно же на раздел EFI.

После завершения установки Kubuntu, заходим в систему и проверяем, какие файлы появились на efi разделе (монтировать уже не нужно):

Смотрим, как теперь выглядит список загрузчиков:

Вот как это выглядит при загрузке:

А еще эти загрузчики доступны сразу из UEFI (в старом BIOS’е такое было бы невозможно — там был выбор только диска, он просто не знал, что такое загрузчики):

Читайте также:  Asus k50in установка windows с флешки

Ну и напоследок: чтобы dual boot правильно работал, в Windows надо обязательно отключить fast boot. Это такая нехорошая фича, которая может привести к потере данных.

При выключении компьютера Windows сохраняет файловую структуру NTFS разделов в файл (видимо, потому что один файл прочитать быстрее, чем сканировать много разных файлов). Если записать файл на NTFS раздел через линукс, и потом загрузиться в Windows, то Windows просто не увидит файл. Источник

Если выключить комп через Windows, и потом попытаться загрузить Linux, то он просто не запустится из-за «ошибки» NTFS. Источник

Dual boot ArchLinux и Windows 8 на UEFI без GRUB c помощью rEFInd

Инструкция для новичков, о том, как сделать красивый dualboot windows и archlinux (и других ОС) через efi без grub и лишних заморочек.

Фото для привлечения внимания:

Можете посмотерть в google как это ещё может выглядеть.

Сразу оговорюсь.
Предполагается, что вы уже поставили windows и archlinux, понимаете как размечать диски и что куда монтировать и осталось вам только разобраться с загрузчиком. Если нет, то рекомендую посмотреть для начала вот это видео.

Я пробовал различные варианты, как описано тут, тут и тут и прочие выкрутасы с efibootmgr. Пытался добавлять опции прямо в «BIOSе» — ничего хорошего у меня не получилось, то рут раздел не находит то ещё что-то. Да и сам подход к переключению систем (жать Esc при включении ПК для выбора системы) меня не очень радовал.

Провозившись весь выходной, нашёл для себя простое и элегантное решение — пакет refind-efi (ArchWiki).
Если коротко, — достаточно установить этот пакет (pacman -S refind-efi) и выполнить refind-install, — всё.
В /boot/efi/EFI/ будет создан каталог refind и в опции загрузки добавлен новый пунк «rEFInd boot manager ».

Предупреждение

Добавлю к этой статье предупреждение: запись в NVRAM из ОС — достаточно опасная операция, которая может приводить к «кирпичу» на некоторых моделях ноутбуков с BIOSами на платформе Phoenix SCT. У автора BIOS на платформе AMI Aptio, с ним таких проблем нет.
Именно поэтому я настоятельно не рекомендую использовать на ноутбуках как саму efibootmgr, так и все, что ее вызывает, и устанавливать любые загрузчики вручную, либо заменяя имеющийся загрузчик по умолчанию (fs0:/EFI/BOOT/bootx64.efi), либо прописывая новый загрузчик из UEFI Shell командой bсfg boot add 0 fs0:/path/to/bootloader.efi «My Fancy Bootloader» — это намного безопаснее.

Всё что вы делаете, вы делаете на свой страх и риск!

Теперь подробнее об установке и конфигурировании

Для начала сверим конфигурации.
В моём случае это:

  • Windows 8.1
  • Arch Linux x86_64 Kernel Release: 3.14.4-1-ARCH

Вывод lsblk:

Раздел с типом «EFI System» созданный инсталятором windows, монтируем в /boot/efi/ ( /mnt/boot/efi/ ведь мы загрузились с liveiso верно?)

где X это номер вашего EFI раздела ( например mount /dev/sda2 /mnt/boot/efi ).

Далее перейдя в уже установленный arch ( arch-chroot /mnt/ ) устанавливаем сам refind:

Если вдруг такой пакет не найден, поищите в yaourt:

и если не было ошибок

После перезагрузки можно поставить в «биосе» в настройках приоритета загрузки «rEFInd boot manager » на первое место.

И не забудьте отключить «Secure Boot».

В каталоге /boot/efi/EFI создана дирректория refind. В ней есть refind.conf в котором можно установить время отображения списка ОС и настроить внешний вид.

Refind сам находит установленные ОС и определяет параметры их загрузки. Так же мне очень понравилось что если вставлена загрузочная флешка или диск они тоже появляются в списке.

Мне понравилась тема Next-Theme (вы можете подобрать что-то на свой вкус), положил её в /boot/efi/EFI/refind/next-theme и прописал в конфиге:

Конфиг хорошо документирован и вопросов вызывать не должен.

Оцените статью