Установка windows linux freebsd

Установка windows linux freebsd

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-01

Всем привет сегодня продолжим настройку нашего PXE сервера, в 5 части мы подробно рассмотрели как установить ESXI 5.5 по сети, сегодня разберем как установить FreeBSD по сети. Для этого у вас должны быть скачаны дистрибутивы FreeBSD, ссылки я дал ниже.

Создать отдельную папку в /srv/tftp, назовем ее freebsd.

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-02

Создадим в ней две папки с названиями версий 9 и 10

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-03

Скопируем в каждую из них специальный загрузочный ISO, скачать FreeBSD fbsd9 и скачать FreeBSD fbsd10.1

Теперь нам с вами нужно подправить файл конфига в /srv/tftp/pxelinux.cfg/bsd

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-06

PROMPT 0
UI vesamenu.c32
MENU BACKGROUND background.jpg
MENU TITLE BSD

Пробуем загрузиться выбираем Freebsd

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-04

попробуем установить FreeBSD 10.2

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-05

Начинается загрузка FreeBSD по сети. У вас появится меню установки. Жмем 1, и начинается загрузка минимальной среды установки.

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-07

Когда я попробовал загрузить FreeBSD-10.2-RELEASE-amd64-disc1.iso после загрузки загрузчика FreBSD словил вот такую вот ошибку.

пробовал перед загрузкой во время экрана с дьяволенком нажать ESC и прописать debug.acpi.disabled=»hostres» не помогло и если загружал формат диска img эффект был тот же, если знаете как победить было бы здорово.

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-08

После выбора первого пункта у вас откроется окно c авторизацией, вводим root / mfsroot(либо root без пароля).

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-09

Для установки вводим

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-10

Выбираем раскладку клавиатуры

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-11

Задаем имя хоста

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-12

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

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-14

Стираем и вводим например свой локальный репозиторий в виде ftp server.

Как установить загрузочный PXE сервер для установки Windows, Linux, ESXI 5.5-6 часть. Добавляем FreeBSD-13

Ну дальше стандартная установка. Не забудьте главное открыть нужные зеркала на проксе. Вот так вот можно установить FreBSD по сети, в следующих статьях я расскажу как устанавливать FreBSD с NFS с помощью скрипта. Далее читайте в 7 части Как установить по сети CentOS.

Установка windows linux freebsd

Можно задать модули по-умолчанию в grub-install:

В документации grub2 не рекомендуют создавать файл конфигурации вручную, а рекомендуют выполнить: Однако во FreeBSD c генератором grub-mkconfig все время только проблемы, поэтому, советую создавать
/boot/grub/grub.cfg именно руками и не тратить время на отладку и правку grub-mkconfig.

Прежде чем приступить к написанию меню загрузки /boot/grub/grub.cfg, вспомним конфигурацию нашей MBR таблицы разделов: Мы создали на диске таблицу MBR, состоящую из трех основных разделов:

  • первый раздел — ntfs 350MB, это скрытый раздел, загрузчик Windows 8
  • второй раздел — ntfs 39GB, это собственно, Windows 8 — логический диск C:
  • третий раздел — слайс FreeBSD, который в свою очередь разбит по схеме BSD на две партиции: ada0s3a — корень и ada0s3b — swap

В GRUB2, диски нумеруются с «0», а разделы с «1», с учетом этого создадим меню загрузки:

Получается следующая конфигурация:

Прежде чем комментировать конфигурацию, покажем общий шаблон для одного входа меню:

В соответствии с документацией GRUB2 может:

  • загружать напрямую (directly) системы поддерживающие Multiboot: Linux, FreeBSD, NetBSD и OpenBSD
  • загружать по цепочке (chain loading), как системы не поддерживающие спецификацию Grub Multiboot: DOS и Windows, так и поддерживающие

Я бы выделил еще один вариант загрузка собственного Loader‘а Операционной системы, который самостоятельно загружает родную ОС, он относится к спецификации Grub Multiboot, в отличие от прямой загрузки Kernel, ядра ОС, с параметрами.

Вернемся к меню /boot/grub/grub.cfg, для Windows 7/8/10:

В верхнем примере, для загрузки Вашего варианта расположения Windows, необходимо изменить, в соответствии с Вашими условиями:

  • menuentry «Здесь Ваша строка меню»
  • set root=(диск,номер скрытой партиции Windows 7/8/10)

где:

  • «диск» может быть: hd0 — первый, hd1 — второй и так далее
  • «номер скрытой партиции»: 1 — или msdos1 и так далее, 4 — msdos4 из условия трационной MBR, состоящей из 4’ех основных партиций

меню для FreeBSD:

Примечание: Самый простой и правильный путь, использовать ручную разметку дисков и настройку менеджеров загрузки из или , командами указанными в данном руководстве.

Возможные проблемы.

1. Осталась альтернативная копия GPT:
— по какой-то причине, не удалилась альтернативная копия GPT, если Вы использовали GPT или меню Auto при установке FreeBSD.

Читайте также:  Посекторное копирование жесткого диска linux

решение: удалить схему GPT или альтернаивную копию (каждая размером 34 LBA сектора):

  • — полностью удалить разметку GPT (основную и копию):
  • — удалить основную таблицу GPT используя команду dd: — удалить альтернативную таблицу GPT в конце диска командой dd:

определяем количество секторов на диске и вычитаем 34: пропускаем вычисленное количество секторов (задаем в seek=) и обнуляем последние 34:

2. Если по какой-то причине слетел Boot Manager:

  • — загрузитесь с LiveCD/USB и исправьте ошибку:
    • — командой «gpart show ada0» — посмотреть разметку;
    • — командой «fdisk -p ada0» — посмотреть слайсы и флаг активности, должен быть только один, исправить если больше;
    • — командами «gpart show ada0sX» или «bsdlabel ada0sX» — посмотреть партиции FreeBSD и исправить при необходимости.
  • — в grub-rescue выполнить (после чего исправить boot LiveCD/USB):

3. Загрузка при использовании двух дисков:

  • — выделить первый диск под Windows, Linux с разметкой MBR
  • — на второй установить FreeBSD с разметкой GPT.

Для загрузки FreeBSD/GPT со второго диска, необходимо установить Boot Manager от FreeBSD или GRUB2 на ПЕРВЫЙ ДИСК:

    настройка boot0cfg: F5 — загрузка со второго диска.

  • настройка GRUB2, добавить в /boot/grub/grub.cfg для загрузки со второго диска:
  • 4. Если хотите использовать только GPT разметку, BIOS должен быть UEFI для Windows и boot manager GRUB2 с поддержкой EFI.

    Аббревиатура и сокращения.

    • BIOS — Basic Input Output System
    • EFI — Extensible Firmware Interface
    • UEFI — Unified Extensible Firmware Interface
    • Boot Loader — загрузчик Операционной системы
    • Boot Manager — специализированный загрузчик разных Операционных систем
    • ОС или OS — Операционная система или Operating System
    • MBR — Master Boot Record
    • GPT — GUID Partiation Table
    • EBR — Extended Partition
    • LBA — Logical Block Addressing, механизм адресации и доступа к блоку данных диска
    • Slice — тоже самое что и партиция(в стиле Microsoft) MBR
    • Slice — состоит из партиций FreeBSD
    • FS — сокращение Filesystem
    • UFS — тип файловой системы FreeBSD
    • SU — Soft update, одно из достижений файловой системы UFS2 от FreeBSD
    • SUJ — Soft update journaling, журналирование файловой системы UFS2 от FreeBSD
    • root-fs или root fs — корневая файловая система, обозначается как «/»
    • swap — область подкачки
    • mountpoint — точка монтирования файловой системы
    • Shell — командный интерпретатор

    Примечание: Если у вас возникли вопросы, желание расширить, уточнить, исправить, дополнить, скачать или использовать данную заметку — пожалуйста, я буду только рад если кому-то она оказалась полезной.

    Установка windows linux freebsd

    BIOS — Basic Input Output System, это базовая система Ввода-Вывода, то есть набор программ зашитых в микросхему, использовалась ОС MSDOS, более современные ОС практически не используют BIOS.

    За исключением процедуры POST — Инициализация и проверка работоспособности аппаратуры.

    Если POST выполнен без ошибок, код BIOS начнёт поиск кода загрузчика ОС. Поиск выполняется на доступных и разрешённых в настройках носителях, код BIOS загрузит код загрузчика ОС в память и передаст ему управление.

    Недостатки BIOS

    • 16-битный код, реальный режим(real-mode)
    • Отсутствие прямого доступа к 64-битному железу
    • Отсутствие единого стандарта
    • Сложность разработки.

    2. UEFI на смену BIOS

    Дословно Extensible Firmware Interface (EFI) — «расширяемый интерфейс прошивки»

    EFI — интерфейс между операционной системой и микропрограммами, управляющими низкоуровневыми функциями оборудования, основное предназначение — корректно инициализировать оборудование при включении системы и передать управление загрузчику операционной системы.

    EFI предназначен для замены BIOS, первый стандарт был разработан Intel, затем переработан и название заменено на UEFI (Universal).

    Интерфейс, определённый спецификацией EFI, включает таблицы данных, содержащие информацию о платформе, загрузочные и runtime-сервисы, которые доступны для загрузчика операционной системы (ОС) и самой ОС.

    Некоторые существующие расширения BIOS, типа ACPI и SMBIOS, также присутствуют в EFI, поскольку не требуют 16-разрядного runtime-интерфейса.

    В дополнение к разнообразным службам и сервисам, EFI имеет оболочку — shell environment, для запуска программ, драйверов, создания исполняемых скриптов, для запуска утилит диагностики и обновления прошивок, работы с CD/DVD. Скрипты имеют расширение .nsh .

    Достижения UEFI

    • Отсутствие ограничений объема разделов и их количества
    • Увеличение скорости загрузки
    • Безопасность: возможность использования Secure Boot
    • Обратная совместимость с BIOS — CSM (Compatibility Support Mode)
    • Поддердка сетевой загрузки PXE
    • Менеджер загрузки

    3. Загрузка в UEFI

    Как происходит загрузка в UEFI:

    Примечание: в дальнейшем рассматривается только схема разметки GPT GUID Partition Table.

    EFI ищет партицию с идентификатором EF00, эта партиция называется ESP (EFI System Partition) и должна быть оформлена как FS:

    • FAT16
      или
    • FAT32

    однако, такие устройства как floppy, usb могут иметь FAT12 на ESP.

    На партиции ESP, EFI по умолчанию ищет файл загручик:
    \efi\boot\boot[название архитектуры].efi
    например: \efi\boot\bootx64.efi и загружает его.

    Далее уже работает сам загрузчик, by default это \efi\boot\bootx64.efi , он ищет корневую FS, на ней bootmanager или ядро, загружает их и передает им дальнейшее управление.

    На самом деле, EFI BIOS, находит все ESP партиции, на всех носителях компьютера и на них файлы с расширением efi и если мы захотим загрузиться с какого-то иного носителя, второго диска или флешки, используя клавишу POP-UP меню загрузки BIOS, ну например F8 (у разных производителей могут разные функциональные клавиши), увидим все доступные носители с ESP и загрузчиками.

    В отличие от BIOS, для UEFI используются другие ПЗУ, они дешевле, экономичней и имеют NVRAM в которой хранятся указатели на все найденные загрузчки .efi .

    Структура ESP партиции выглядит следующим образом:

    Примечание: Имена директорий Ubuntu, Debian, FreeBSD — всего лишь пример, можете использовать какие Вам угодно.

    4. Windows on UEFI/GPT

    Ничего необычно в установке Windows 7/8/10 на GPT из UEFI нет, ОС Windows ставится на диск с разметкой GPT только из UEFI.

    Особенности и условия, ничего особенного:

    • настройка в UEFI BIOS -> загрузка UEFY Only
    • отключить Secure Boot
    • как уже было отмечено ранее, использовать официальный носитель с ОС
    • или выбрать правильный дистрибутив, если используете самодельные

    Ниже показана структура ESP из Windows 7

    Программа установки Windows создает ESP на компьютере при следующих условиях:

    • ESP еще не создан.
    • На диске достаточно места для создания раздела емкостью 100 МБ.

    Программа установки Windows создает MSR при следующих условиях:

    • MSR еще не создан.
    • На диске достаточно места для создания раздела емкостью 128 МБ.

    Приоритет создания ESP выше, чем у создания MSR, так как ESP необходим для загрузки компьютера:
    https://technet.microsoft.com/ru-ru/library/dd744301(v=ws.10).aspx

    Примечание: В Windows 8.x/10 ESP 350MB, а в Windows 10 MSR=0-16MB

    Важно: чтобы из командной строки Windows (cmd.exe), можно было смонтировать Системный Раздел ESP, нужно отключить UAC, затем, перезагрузиться, после чего команда: отработает без проблем.

    Отключение UAC и Windows Defender с командной строки.

    выходим в командную строку Windows:

    Пуск -> Выполнить -> cmd.exe -> Запустить от Администратора

    Отключаем Windows Defender:

    Теперь, если у нас административный account, можно не заботиться о разрешениях «от Администратора».

    Снова выходим в командную строку и выполняем следующие действия для монтирования Системного раздела ESP — EFI System Partition:

    Ниже показано содержимое ESP записанное при установке Windows 7:

    Примечание: В некоторых случаях, команда mountvol не может смонтировать ESP и выдает сообщение о неверном параметре, это возможно при наличии нескольких HDD в системе или по иной причине.

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

    Выходим в командную строку и выполняем следующие действия для монтирования Системного раздела ESP — EFI System Partition:

    чтобы понять что на каком диске находится:

    • выбираем диск командой sel
    • смотрим содержимое партиций

    смотрим содержимое диска 1 (он пуст)

    Из верхнего видно, нам нужен Системный раздел: Раздел 1 Системный 100 Mб 1024 Kб

    • выбираем диск 0
    • партицию 1
    • назначаем букву для монтирования

    Все, можем работать с Системным разделом EFI, он смонтирован как диск S:

    Загрузчик Windows и BootManager.

    Как было сказано ранее, в UEFI NVRAM содержатся настройки, переменные EFI, прописанные и обнаруженные загрузчики с расширением .efi, порядок загрузки и тд и тп.

    Для настройки BootLoader и BootManager, Microsoft использует целую ветку в реестре, а работа с ней и управление, осуществляется командой bcdedit.

    Посмотреть текущие настройки можно следующим образом:

    вариант с лицензионной системы:

    строка:
    path \EFI\Microsoft\Boot\bootmgfw.efi
    говорит об использовании оригинального EFI загрузчика от Microsoft.

    Ниже показано что default’ный:

    • \EFI\Boot\bootx64.efi
      и
    • \EFI\Microsoft\Boot\bootmgfw.efi

    это одна и та же EFI программа, см размер.

    В случае хакерской активации через Slic, возможен такой загрузчик:
    path \EFI\Microsoft\Boot\windslic.efi

    Если установлен загрузчик rEFInd, path должен быть: path \EFI\REFIND\REFIND_X64.EFI

    Изменить загрузчик из Windows, можно командой bcdedit: например:

    5. Linux on UEFI/GPT

    Перед установкой Linux из UEFI, советую настроить BIOS следующим образом;

    • загрузка UEFY Only
    • отключить Secure Boot

    Дистрибутивы Debian/CentOS/Ubuntu — при начальной установке не требуют
    вмешательства, установщик правильно разбирается с разметкой:

    • если разметка отсутствует создает ESP и прописывает туда загрузчик efi
    • если разметка уже есть и ESP партиция в наличии, добавляет туда свой загрузчик и делает его default’ным

    Примечание: В EFI/BIOS предлагается выбрать загрузку UEFI Only потому что с ней не будет проблем.

    Это связано с реализацией UEFI/BIOS различными производителями.

    Загрузка: UEFY, Legacy — должна отрабатывать в последовательности:

    • — сначала найти ESP и попытаться загрузиться
    • — если ESP на устройствах отсутствуют, перейти к загрузке Legacy(BIOS)

    Загрузка на некоторых материнских картах в случае выбора двух режимов; UEFI и затем Legacy может не найти реально существующий EFI-загрузчик на HDD.

    Поэтому, лучше установить UEFY Only и установить ОС, а потом можно экспериментировать с настройками BIOS.

    Кроме того, есть материнские карты отдельных производителей, у которых загрузчик ищется только в \EFI\Microsoft\Boot\.

    Допустим мы ставили Linux на чистый диск из UEFI, посмотрим конфигурацию системы и загрузки GRUB2 + EFI: /dev/sda1 это /boot/efi ESP partition

    Посмоотрим разметку диска (GPT):

    рекомендую сохранять значение UUID для ESP (может пригодится для grub)

    модуль efivars подгружается автоматически при установке из UEFI

    благодаря ему, реализован очень полезный функционал, но будьте осторожны с содержимым, которое монтируется в /sys/firmware/efi!

    Очень Важно: UEFI NVRAM доступна на запись от root’а, удаление данных в NVRAM, может стать катастрофой для компьютера!

    Еще один важный и полезный инструмент, утилита efibootmgr позволяет решать проблемы загрузки.

    посмотрим текущее состояние:

    текущий загрузчик EFI: BootCurrent: 0004
    порядок загрузки EFI: BootOrder: 0004,0000,0001,0002,0003
    и смотрим кто у нас 4 или 0004: Boot0004* debian HD(1,800,100000,dfb01231-7608-4325-99e7-5cfc1379d23c)File(\EFI\debian\grubx64.efi)

    Все верхние примеры были на базе ОС Debian.

    Работа c ESP в Linux

    Важно: ESP должна быть смонтирована!

    В нижнем примере это выглядит следующим образом:

    содержимое ESP при единственной установленой ОС Debian

    В Ubuntu отличаться будет лишь названием: /boot/efi/EFI/ubuntu/

    Создание GPT разметки в Linux:

    • Ubuntu и Debian имеют адаптированную утилиту fdisk для работы с GPT
    • или воспользоваться альтернативой: gdisk или parted

    Примеры разметки:

    • fdisk
    • parted
    • sgdisk или

    Примечание: Комментария и объяснения верхних команд не будет, как ими пользоваться можно прочитать в man

    6. FreeBSD on UEFI/GPT

    Установка FreeBSD из UEFI на чистый диск проходит без проблем, но если диск уже размечен как GPT и на нем есть ESP партиция, то встраиваться туда FreeBSD не умеет.

    Ниже пример чистой установки FreeBSD из UEFI(пусть не смущает что это VM):

    • uname
    • camcontrol
    • gpart
    • mount
    • монтирование ESP и просмотр содержимого

    Загрузка FreeBSD из UEFI коротко, четко и ясно описана в uefi(8)

    UEFI firmware ищет загрузчик OS на EFI System Partition (ESP), если не установлен, по умолчанию грузит /efi/Boot/bootx64.efi. Это уже было описано.

    По умолчанию FreeBSD устанавливает свой EFI загрузчик: boot1.efi как /efi/Boot/bootx64.efi

    • boot1.efi читает /boot.config или /boot/config
    • затем ищет на ufs или zfs загрузчик loader.efi и загружает его
    • loader.efi загружает ядро — kernel

    Создание USB/HDD UEFI Bootable в FreeBSD:

    Просто. Далее можем развернуть систему руками, как обычно из /usr/freebsd-dist при загрузке с CD/DVD или Memstick.

    Что из себя представляет /boot/boot1.efifat:

    Немного смущает что разный размер:

    Но ничего страшного, при ручной разметке я использовал /boot/boot1.efi и без автоскрипта для efi-shell startup.nsh

    Как во FreeBSD создать свой /boot/boot1.efifat, например, размером 512K:

    Верхнее, только в случае отсутствия других ОС на диске, для DUAL/TRIPLE Boot, ESP должна быть достаточного размера, в случае Windows не менее 100MB

    Это легко посчитать установив один раз Windows+Linux+FreeBSD.

    Как во FreeBSD создать EFI раздел: создать FAT32:

    7. Dual/Triple/Multiboot Windows,Linux,FreeBSD on UEFI

    Выше была рассмотрена чистая установка трех Операционных систем, на основании которой, можно сделать несколько важных выводов:

    • Windows 7/8/10
      • использует существующую ESP при установке
      • делает собственый загрузчик default’ным, не интегрирует существующие ОС в меню загрузки
      • имеет утилиту управления загрузчиком: bcdedit
    • Linux
      • использует существующую ESP при установке
      • делает собственый загрузчик GRUB2-EFI default’ным, добавляет существующие ОС в загрузочное меню
      • имеет утилиту управления загрузчиком: efibootmgr
    • FreeBSD
      • процедура установки не умеет использовать существующую ESP
      • не имеет утилит управления загрузчиком
      • имеет пакет(порт) grub2-efi для установки и настройки стороннего загрузочного менеджера

    На основании данных выводов, можно легко установить указанные ОС вместе на один компьютер:

    • на один диск
    • на разные диски
    • в любом порядке

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

    При установке двух систем на один диск, удобней следующий порядок:

    • 1. Windows затем 2. FreeBSD
    • 1. Windows затем 2. Linux
    • 1. Linux затем 2. FreeBSD

    А в случае установки трех систем на один диск, удобней следующий порядок:

    1. Windows
    2. FreeBSD
    3. Linux

    Следует отметить, верхние рекомендации, являются условными, потому что опираются на личное, субъективное мнение.

    Кроме того, при установке OS FreeBSD, необходимо:

    • использовать ручную разметку диска: Manual
    • не создавать ESP партицию

    необходимые дополнительные настройки после установки FreeBSD разберем позже.

    DualBoot Linux и Windows

    Как уже было сказано, при установке первой системой Windows, а затем Linux, проблем не будет.

    Не потребуется никаких дополнительных настроек, при установке Linux, будет установлен BootManager Grub2-EFI, grub2 найдет вторую систему и добавит в меню

    Меню GRUB2 в Debian будет выглядеть примерно:
    в Ubuntu

    Разберем что делать, если Windows была установлена позже и как создать меню загрузки в GRUB2.

    Нам необходимо создать меню Windows для GRUB2, для этого необходимо загрузить Linux. Это можно сделать двумя способами:

    1. из Windows с помощью bcdedit
      или
    2. используя POP-UP меню BIOS выбрать загрузку Linux

    После того как загрузились в Linux, необходимо:

    1. изменить порядок загрузки через efibootmgr
      имеем by default: BootOrder: 0005, где Boot0005* Windows Boot Manager меняем на debian
    2. создать меню загрузки Windows для GRUB2
      два варианта:
      1. достаточно выполнить утилиту os-prober (ее используют grub-probe и grub-mkconfig)
      2. или создать руками /etc/grub.d/40_custom

    Все.

    UEFI DualBoot Windows и FreeBSD

    Недостатки FreeBSD в случае MultiBoot:

    • Установщик FreeBSD не умеет интегрировать efi загрузчик в уже существующую ESP
    • В FreeBSD отсутствует утилита аналогичная efibootmgr

    Существующие решения UEFI Multiboot для FreeBSD:

    1. порт sysutils/grub2-efi
    2. сторонний загрузчик rEFInd

    Установщик FreeBSD не умеет интегрировать свой загрузчик в уже существующую ESP и система не имеет утилиты манипуляции переменными EFI.

    Наименее затратный вариант, если FreeBSD будет установлена первой. При установке нужно проследить чтобы партиция ESP была размером не менее 100MB. В ином случае, разметить вручную Manual

    Если OS FreeBSD будет устанавливаться не первой системой:

    • разметку диска необходимо выполнить вручную Manual
    • ESP создавать НЕ НУЖНО! Должна быть только одна.
    • по завершению установки выйти в режим Live CD/USB и установить пакет sysutils/grub2-efi
    • или вместо grub2-efi установить из Windows загрузочный менеджер rEFInd

    Рассмотрим вариант установки FreeBSD позже остальных ОС с установкой и настройкой sysutils/grub2-efi.

    При установке выбираем Manual разметку диска, создаем как минимум freebsd-ufs для корня и freebsd-swap для swap, или устанавливаем zfs на пустую партицию.

    Рассмотрим на примере, была установлена OS Windows 7, затем мы установили OS FreeBSD 11.0-Release и после установки вышли в режим Live CD/USB:
    — смотрим разметку диска
    — задаем под себя переменную PATH и устанавливаем пакетный менеджер pkg:
    — устанваливаем пакет grub2-efi
    — необходимо смонтировать ESP партицию
    — выполняем grub-install — обязательно с ключами или by default будет искать парцтию boot_bios для Non-UEFI загрузки:
    — GRUB2 прописал свой загрузчик в:
    — создание меню загрузки Windows для grub2-efi

    1. выполняем grub-mkconfig для создания конфигурации /boot/grub/grub.cfg
    2. удаляем секцию 10_kfreebsd из /boot/grub/grub.cfg — она создается НЕВЕРНО может мешать:
    3. создаем свою секцию 40_custom.dist меню загрузки Windows
      где root=(hd0,gpt1) это ESP партиция с efi-загрузчиком Windows

    — выполняем reboot и завершаем установку FreeBSD
    — загружаемся в Windows и используя bcdedit. меняем загрузчик на grub2-efi от FreeBSD:

    При использовании rEFInd, не требуется установка grub2-efi, но перед завершением установки FreeBSD необходимо выйти в Live CD/USB, смонтировать партицию ESP и скопировать туда загрузчик FreeBSD:

    • монтируем ESP
    • создаем директорию FreeBSD и копируем в нее загрузчик
    • установку и настройку rEFInd удобней выполнить из Windows, но можно из FreeBSD.

    Установка и настройка rEFInd.

    • монтируем ESP используя команду mountvol
    • Скачиваем rEFInd
    • Разворачиваем архив в S:\EFI\refind
    • Удаляем все лишние из \EFI\refind
    • создаем конфиг refind.conf
    • настраиваем в нем нужные нам меню:
    • используя bcdedit устанавливаем refind как загрузчик by default
    • перезагружаемся и наслаждаемся меню rEFInd

    rEFInd имеет достаточное количество настроек и может быть использован как с текстовым меню или графическим с иконками и тд и тп. Используйте документацию и пример refind.conf-sample

    Теперь не составит труда настроить загрузку UEFI OS FreeBSD,Linux,Windows: Dual, Triple или MultiBoot.

    Читайте также:  Keeping house warm windows
    Оцените статью