Лимине (произносится как показано здесь) — это современный, продвинутый, переносимый, многопротокольный загрузочный модуль, также используемый в качестве эталонной реализации протокола загрузки Лимине.
Если вы хотите поддержать мою работу над Лимине (@mintsuki), пожалуйста, сделайте донат на Liberapay:
Донаты приветствуются, но абсолютно не обязательны!
Если ваша файловая система не указана здесь, пожалуйста, прочтите философию перед тем как открывать проблемы или запросы на включение связанные с этим.
Для 32-битных x86 систем, поддержка гарантируется начиная с процессоров Pentium Pro (i686) класса.
Все x86-64, aarch64 и riscv64 (UEFI) системы поддерживаются.
Для удобства, для точечных выпусков, бинарники распространяются. Эти бинарники распостраняются в ветках и метках -binary
этого репозитория (см. ветки и метки).
Например, чтобы клонировать последний бинарный выпуск, можно сделать следующее:
git clone https://github.com/limine-bootloader/limine.git --branch=binary --depth=1
или, чтобы клонировать конкретный точечный бинарный выпуск (например 7.0.2
):
git clone https://github.com/limine-bootloader/limine.git --branch=v7.0.2-binary --depth=1
Чтобы заново собрать утилиты хоста, такие как limine
, просто выполните make
в директории бинарного выпуска.
Бинарники утилит хоста предоставляются для Windows.
Следующие шаги не требуются при клонировании бинарного выпуска. В этом случае пропустите до пункта "Установка бинарников Лимине".
Чтобы собрать Лимине, должны быть установлены следующие программы: общие UNIX-инструменты (также известные как coreutils
), GNU make
, grep
, sed
, find
, awk
, gzip
, nasm
, mtools
(необязательно, необходимы для сборки limine-uefi-cd.bin
). Кроме того, должны быть установлены компиляторы gcc
или llvm/clang
вместе с соответствующими инструментами.
Если используется выпускной архив (рекомендовано, см. https://github.com/limine-bootloader/limine/releases), выполните ./configure
непосредственно.
Если проверять из репозитория, выполните ./bootstrap
первым делом, чтобы скачать необходимые зависимости и сгенерировать конфигурационный скрипт (GNU autoconf
требуется).
./configure
принимает аргументы и переменные окружения; для получения более подробной информации на эти темы выполните ./configure --help
.
По умолчанию ./configure
не собирает ни один порт Лимине. Убедитесь, что вы прочли вывод команды ./configure --help
и активировали любой или все порты!
Лимине поддерживает как внутреннюю, так и внешнюю сборку. Просто выполните скрипт configure
из директории, где вы хотите запустить сборку. Следующие команды make
должны выполняться внутри директории сборки.
Чтобы собрать Лимине, выполните:
make # (или gmake где применимо)
Собранные загрузочные файлы будут находиться в ./bin
.
Этап является необязательным, поскольку загрузочные бинарники могут использоваться из ./bin
или директории выпуска вполне нормально. Этот этап установит их в директории share
, include
и bin
указанного префикса (по умолчанию /usr/local
, см. ./configure --help
, или переменную PREFIX
если устанавливается из бинарного выпуска).
Чтобы установить Лимине, выполните:
make install # (или gmake где применимо)
Файлы BOOT*.EFI
являются действительными EFI-приложениями, которые можно просто скопировать в директорию /EFI/BOOT
формата EFI системного раздела. Эти файлы могут быть установлены там и сосуществовать с BIOS-установкой Лимине (см. ниже), чтобы диск был загружаемым на обоих BIOS и UEFI системах.
Загрузочный носитель должен содержать файлы limine.cfg
либо в корневой директории, либо в директориях limine
, boot
, или boot/limine
одного из разделов, форматированного одной из поддерживаемых файловых систем (рекомендуется использовать ESP-раздел).
Лимине может быть загружен с защищенной загрузкой, если исполняемый файл подписан и ключ, используемый для подписи, добавлен в цепочку ключей прошивки. Это должно быть сделано в сочетании с регистрацией BLAKE2B-хэша файла конфигурации Лимине в самом исполняющем файле EFI Лимине для целей верификации. Для получения дополнительной информации см. программу limine enroll-config
и философию.
Чтобы установить Лимине на устройство MBR (которое может быть просто образом файла), выполните limine bios-install
следующим образом:
limine bios-install <путь к устройству/образу>
Загрузочный носитель должен содержать файлы limine-bios.sys
и limine.cfg
либо в корневой директории, либо в директориях limine
, boot
, или boot/limine
одного из разделов, форматированного одной из поддерживаемых файловых систем.
Если используется устройство, форматированное GPT, есть два варианта установки:
limine bios-install
попытаться встроить второй уровень в структуры GPT.Если вы хотите указать раздел второго уровня, создайте раздел на GPT-устройстве размером не менее 32 КБ, и передайте номер раздела (начиная с единицы) в качестве второго аргумента limine bios-install
; например:limine bios-install <путь к устройству/образу> <номер раздела второго уровня>
Если вы хотите позволить limine bios-install
встроить второй уровень в структуры GPT, просто опустите номер раздела, и вызовите limine bios-install
так же, как бы вы делали для устройства с разделами MBR.
Загрузочный носитель должен содержать файлы limine-bios.sys
и limine.cfg
либо в корневой директории, либо в директориях limine
, boot
, или boot/limine
одного из разделов, форматированного одной из поддерживаемых файловых систем.
Чтобы создать гибридный ISO с Лимине, поместите файлы limine-uefi-cd.bin
, limine-bios-cd.bin
, limine-bios.sys
, и limine.cfg
в директорию, которая будет служить корнем созданного ISO (limine-bios.sys
и limine.cfg
должны быть либо в корневой директории, либо в директориях limine
, boot
, или boot/limine
; limine-uefi-cd.bin
и limine-bios-cd.bin
могут располагаться в любом месте). После этого создайте директорию <ISO root directory>/EFI/BOOT
и скопируйте соответствующие исполняемые файлы Лимине (например BOOTX64.EFI
). Разместите любые другие файлы, которые вы хотите видеть на конечном ISO, в этой директории, затем выполните:
xorriso -as mkisofs -b <относительный путь до limine-bios-cd.bin> \
-no-emul-boot -boot-load-size 4 -boot-info-table \
--efi-boot <относительный путь до limine-uefi-cd.bin> \
-efi-boot-part --efi-boot-image --protective-msdos-label \
<корневая директория> -o image.iso
Примечание: требуется xorriso
.
Не забудьте также выполнить limine bios-install
на сгенерированном образе:
limine bios-install image.iso
<относительный путь до limine-bios-cd.bin>
— относительный путь до limine-bios-cd.bin
внутри корневой директории. Например, если он был помещён в <корневая директория>/boot/limine-bios-cd.bin
, то это будет boot/limine-bios-cd.bin
. <относительный путь до limine-uefi-cd.bin>
— относительный путь до limine-uefi-cd.bin
внутри корневой директории. Например, если он был помещён в <корневая директория>/boot/limine-uefi-cd.bin
, то это будет boot/limine-uefi-cd.bin
.
Бинарник limine-bios-pxe.bin
является действительным образом PXE-загрузки. Чтобы загрузить Лимине через PXE, необходимо настроить сервер DHCP с поддержкой PXE-загрузки. Это может быть достигнуто с помощью одного сервера DHCP или вашего существующего сервера DHCP и прокси-сервера DHCP, такого как dnsmasq. Файлы limine.cfg
и limine-bios.sys
ожидают быть на сервере, используемом для загрузки.
Файлы BOOT*.EFI
совместимы с UEFI PXE. Шаги для загрузки Лимине те же, что и для BIOS PXE, за исключением того, что файл limine-bios.sys
не требуется на сервере.
Файл limine.cfg
содержит конфигурацию Лимине. Пример файла limine.cfg
можно найти в test/limine.cfg
. Более подробная информация о формате limine.cfg
доступна в CONFIG.md
.
Лимине использует урезанную версию tinf для раннего распаковывания GZIP. Лимине зависит от stb_image для времени выполнения распаковывания GZIP и загрузки изображений.
У нас есть сервер Discord, если вам нужна поддержка, информация или вы просто хотите встретиться с нами.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )