Загрузочная USB Flash
Версия от 10:29, 8 июня 2020; Дым (обсуждение | вклад)
По мотивам InstallFlash и | Bootable Linux USB drive using EXTLINUX
В отличие от syslinux для загрузки с флэшек, отформатированных в FAT, extlinux умеет грузить установщик или «живой»/«спасательный» образ почти с любой «родной» ФС.
По одной из вышеприведённых ссылок рекомендуют ext2 ради минимального истязания записью нежурналируемых файловых систем по сравнению с журналируемыми.
Внимание! Дальнейшее описание исходит из того, что моя флэшка определилась как /dev/sdf — в каждом случае бывает по-разному, не промахнитесь.
Делал так
- Предварительно следует установить пакеты c загрузчиком и загрузочными секторами:
# apt-get install -y extlinux syslinux-data
- На флэшке размером от 8 ГБ без разделов cоздадим раздел в ДОС-разметке:
# fdisk /dev/sdf o<ввод> n<ввод> p<ввод> <1, ввод> <первый цилиндр, ввод> <последний цилиндр, ввод> a<ввод> w<ввод>
- Отформатируем его (метку LinuxBoot можно заменить на любую «от фонаря»):
# mkfs -text2 /dev/sdf1 -LLinuxBoot
- Смонтируем раздел для его заполнения:
# mount /dev/sdf1 /mnt/sdf1
- Установим на него загрузчик:
# extlinux --install /mnt/sdf1
- Запишем загрузочный сектор:
# cat /usr/lib/syslinux/mbr.bin >/dev/sdf
- С заранее смонтированного установочного образа/оптического диска, к примеру, Alt Workstation или Education, скопируем в корень /mnt/sdf1 каталоги ALTLinux, Metadata и syslinux, а также файлы-образы altinst и live. А с диска rescue — только одноимённый файл-образ, если место позволяет.
- Создадим меню загрузки... ну, такое себе меню — выбирать конкретный образ приходится вводом его ярлыка в приглашение, иначе загрузится умолчальный. Пример меню /mnt/sdf1/extlinux.conf:
PROMPT 1 TIMEOUT 200 IMPLICIT 1 DEFAULT instalt LABEL live KERNEL syslinux/alt0/vmlinuz APPEND initrd=/syslinux/alt0/full.cz live fastboot lang=ru_RU showopts automatic=method:disk,disk:sdb,partition:sdb1 stagename=/live ramdisk_size=455461 splash=silent splashcount=17 vga=0x314 LABEL rescue KERNEL syslinux/alt0/vmlinuz APPEND initrd=/syslinux/alt0/full.cz live fastboot lang=ru_RU showopts automatic=method:disk,disk:sdb,partition:sdb1 stagename=/rescue ramdisk_size=455461 splash=silent splashcount=17 vga=0x314 LABEL instalt KERNEL syslinux/alt0/vmlinuz APPEND initrd=/syslinux/alt0/full.cz live fastboot lang=ru_RU showopts automatic=method:disk,disk:sdb,partition:sdb1 stagename=/altinst lowmem splash=silent splashcount=17 vga=0x314 LABEL failsafe KERNEL syslinux/alt0/vmlinuz APPEND initrd=/syslinux/alt0/full.cz live fastboot lang=ru_RU showopts automatic=method:disk,disk:sdb,partition:sdb1 stagename=/altinst lowmem noapic pci=nomsi acpi=off noload=ahci
Внимание! Здесь sdb — то, каким диском флэшка увидится в истязаемой системе: если там один жёсткий диск, то да, /dev/sdb.
Осталось отмонтировать готовую флэшку и пользоваться на здоровье.