if ($answer_counter == 1): ?>
endif; ?>
Обзор
Создание загрузочных USB-носителей с поддержкой UEFI довольно прямолинейно. Просто скопируйте файлы на USB-диск с FAT32-форматированным . Вот и все!
Помните, что для установки или загрузки носителя:
Содержание
- Скопировать файлы из метода ISO
- Пример через терминал
- Пример с помощью графического интерфейса пользователя
- Пример для Windows
- Метод loopback ISO (расширенный)
- Создание двоичного файла
- Создание файла конфигурации
- Добавление стойкости
- Проверка целостности
- Безопасная загрузка UEFI
1. Скопировать файлы из метода ISO
Этот метод также работает для другого установочного носителя, который содержит загрузчики EFI, например Windows.
1,1. Пример через терминал
Вы можете сделать что-то вроде следующего, если 604A-00EA
- ваш USB-накопитель, и у вас уже установлено p7zip
:
$ 7z x ubuntu-12.04-desktop-amd64.iso -o/media/$USER/604A-00EA/
Вы закончили, если на этом USB-накопителе имеется только один раздел, в противном случае вам нужно указать раздел как загрузочный, например. через parted
:
# parted /dev/sdX set 1 boot on
Где /dev/sdX
будет вашим USB-накопителем и 1
номером раздела, который должен использоваться для загрузки.
1.2. Пример с помощью графического интерфейса пользователя
-
Смонтируйте .iso-файл и скопируйте содержимое на свой USB-накопитель. Нажмите Ctrl + H в Наутилусе, чтобы отображать и копировать скрытые файлы.
-
Добавьте флаг загрузки через GParted .
1.3. Пример в Windows
- То же, что и выше, просто скопируйте файлы.
- Нажмите Windows / Super + X , перейдите в Управление дисками и проверьте, отмечен ли раздел как активный. В версиях Windows до Windows 8 вы нажимаете Windows / Super + R , чтобы открыть меню прогона и откройте
diskmgmt.msc
, открыв управление дисками.
2. Метод обратной петли ISO (расширенный)
Вместо того, чтобы извлекать содержимое из образа ISO, GRUB и GRUB2 могли загружаться из образов ISO непосредственно через устройство loopback. Учитывая, что образ ISO является загрузочным для UEFI, мы можем настроить USB-накопитель, содержащий несколько ISO, с различными операционными системами без создания беспорядка на USB-накопителе.
Если вы хотите также загрузить Windows, вы можете посмотреть SARDU . Я помню, как я использовал его с Windows PE около 2005 года и, похоже, он был обновлен для поддержки USB-накопителей и UEFI, но помните, что этот инструмент также поддерживает устаревшую загрузку.
Что нам нужно?
- Очень простое знание конфигурационных файлов GRUB.
- Очень простые знания по загрузке UEFI и GRUB, так как мы собираемся создать собственный образ загрузчика GRUB с большим количеством модулей.
- Загрузочный ISO-образ UEFI, USB-накопитель FAT и машина, работающая под управлением Linux.
- Нет, нам не нужна установка UEFI Linux (это может быть ситуация с курицей и яйцом), традиционная Linux VM, как в VirtualBox, прекрасна.
2,1. Создание двоичного
На вашей машине Ubuntu или VM убедитесь, что пакет grub-efi-amd64-bin (grub-efi-ia32-bin также доступен для 32-разрядных архитектур Intel на более новых версиях). Пакет может иметь другое имя в другом дистрибутиве, вы можете сравнить список файлов пакета , чтобы найти нужный пакет в вашем дистрибутиве.
Следующая команда создаст образ GRUB, в данном случае двоичный файл EFI, который должен иметь возможность запускать каждый компьютер с прошивкой UEFI:
grub-mkimage -o bootx64.efi -p /efi/boot -O x86_64-efi \
fat iso9660 part_gpt part_msdos \
normal boot linux configfile loopback chain \
efifwsetup efi_gop efi_uga \
ls search search_label search_fs_uuid search_fs_file \
gfxterm gfxterm_background gfxterm_menu test all_video loadenv \
exfat ext2 ntfs btrfs hfsplus udf
Каждая стандартная прошивка UEFI должна искать в \EFI\BOOT\
для файла с именем boot{arch}.efi
, поэтому создайте папки на USB-накопителе и скопируйте созданный нами образ в это место. Возможны и другие архитектуры вместо x64, но давайте оставим их простыми с x64 / amd64.
2,2. Создание файла конфигурации
Самый простой пример для файла конфигурации grub.cfg
, который должен быть помещен в тот же каталог, что и bootx64.efi
, будет выглядеть так:
set timeout=3
set color_highlight=black/light-magenta
menuentry 'Boot Ubuntu 14.04.2 LTS from ISO' {
set isofile="/efi/boot/ubuntu-14.04.2-desktop-amd64.iso"
loopback loop $isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile noprompt noeject quiet splash persistent --
initrd (loop)/casper/initrd.lz
}
submenu 'Useful snippets' {
menuentry 'Ubuntu' {
chainloader /efi/ubuntu/grubx64.efi
}
menuentry 'Windows' {
chainloader /efi/Microsoft/Boot/bootmgfw.efi
}
menuentry 'Firmware Setup' {
fwsetup
}
}
Важным является блок конфигурации с заголовком Boot Ubuntu 14.04.2 LTS from ISO
.Вы можете изменить цвет и время ожидания по своему усмотрению. Я выбрал black/light-magenta
, поскольку он по-прежнему выглядит немного Ubuntu-ish, но легко различим при загрузке других конфигураций. Вы можете найти другие примеры для других дистрибутивов в Arch Wiki и прочитать руководство GRUB действительно стоит вашего времени, если вы хотите выйти за рамки этого.
Возвращаясь к конфигурационному блоку, должно быть очевидно, что на ISO ссылаются как /efi/boot/ubuntu-14.04.2-desktop-amd64.iso
, поэтому скопируйте ISO в \EFI\BOOT\
и замените ubuntu-14.04.2-desktop-amd64.iso
в конфигурации с фактическим именем вашего ISO. р>
loopback loop $isofile
- это строка, которая загрузит наш ISO-файл в loopback-устройство, из которого мы можем напрямую загрузить ядро Linux. Это возможно, потому что наше изображение EFI GRUB включает в себя модуль loopback. (Немного проб и ошибок участвовали в определении того, какие модули разумно включать. Вы не должны видеть никаких сообщений об ошибках, но это все еще не идеально.) Говоря о ядре, вы можете добавить параметры ядра, такие как toram
, параметры для разных языков (пример locale=de_DE bootkbd=de
) и как в примере: persistent
2,3. Добавление сохранности
Вы можете добавить раздел, как описано в: Как получить live-USB для использования раздела для сохранения? Или вы можете создать файл casper-rw
и поместить его в корень вашего USB-диска.
dd if=/dev/zero of=casper-rw bs=1M count=4094
mkfs.ext4 -m 0 casper-rw
Я не тестировал абсолютный максимум, он должен быть где-то между 4094 и 4096 МБ. Используйте раздел, если вы намерены использовать больше места. Обратите внимание, что каждое изменение в (root) является модификацией файловой системы overlay, даже удаление файлов.
2.4. Проверка целостности
Вы должны посмотреть ответы на следующие вопросы, чтобы убедиться, что содержимое Live ISO на USB-накопителе находится в первозданном состоянии:
2.5. Безопасная загрузка UEFI
Безопасная загрузка станет обязательной для машин с Windows 10, я предлагаю вам ознакомиться с PreLoader Linux Foundation, чтобы добавить функциональность Secure Boot к этой настройке. Вот некоторые ASCII-арт, иллюстрирующие меню сопровождающего HashTool .
Поздравляю, я бы сказал, что теперь вы освоили загрузку UEFI и больше не должны бояться.