InstallFlash
Как сделать установочную флешку
Имея под рукой установочный DVD/компакт-диск
Иногда встречается ситуация, когда установка системы на новый компьютер затыкается на неспособности пропагатора правильно определить и инициализировать дисковую подсистему компьютера, из-за чего не находится образ инсталятора. Или на компьютере банально нет привода компакт-дисков. Одно из решений этой проблемы — сделать из установочного компакт-диска установочную флешку. Которую можно еще сделать с образом rescue и liveFlash. И которую всегда можно носить с собой в кармане, в отличие от компакт-диска. :)
Пошаговое howto:
Предположим, что устройство для нашей флешки — /dev/sdc, устройство для раздела на ней — /dev/sdc1.
- Берём флешку, от 4Гб для DVD варианта (наверное, с шаманством в области /ALTLlinux и /Metadata можно и меньшего размера) и от 1Гб для компакт-диска.
- Если на ней уже есть достаточно большой FAT-раздел, тогда перейдите к пункту 6.
- Если с этой флешки смонтированы какие-нибудь разделы (возможно, автоматически) — отмонтируем их.
- Запускаем # fdisk /dev/sdc, сносим все разделы, делаем раздел нужного размера, ставим ему тип C (FAT32) (или E (FAT16) для маленьких разделов, 2Гб и менее).
- Делаем файловую систему: # mkfs.vfat -n installflash /dev/sdc1
- fdisk’ом делаем наш раздел активным.
- Если флешка и сидиром (или его .iso-образ) еще не смонтированы, то монтируем их.
- Копируем на наш раздел с установочного сидирома директории /ALTLinux, /Metadata, /syslinux и файл /altinst ($ cd /media/dvd; rsync -vr --progress ALTLinux Metadata syslinux altinst /media/installflash/)
- Ставим пакет syslinux, если он еще не установлен. (# apt-get install syslinux)
- Загоняем на флешку правильный образ MBR, способный к загрузке: # dd if=/usr/lib/syslinux/mbr.bin of=/dev/sdc
- Идём на флешку в папку syslinux (cd /media/installflash/syslinux), создаем файл syslinux.cfg такого вот содержания (можно на основе имеющегося isolinux.cfg):
default linux
prompt 1
timeout 200
gfxboot bootlogo
display boot.msg
implicit 1
label linux
kernel alt0/vmlinuz
append initrd=alt0/full.cz live fastboot lowmem stagename=/altinst lang=ru_RU splash=silent splashcount=17 showopts vga=0x314 automatic=method:disk,disk:sda,partition:sda1
label failsafe
kernel alt0/vmlinuz
append initrd=alt0/full.cz live fastboot lowmem stagename=/altinst lang=ru_RU showopts noapic pci=nomsi acpi=off noload=ahci automatic=method:disk,disk:sda,partition:sda1
флешка при загрузке может определиться, и как не sda (вот еще почему для USB-загрузки лучше как можно меньше модулей пропагатору подсовывать), тогда пропагатор будет спрашивать, что за девайс мы хотим грузить. Надо или там, в пропагаторе, выбрать правильное устройство, или учесть это в этом файле. Или отключить нафик всякие картридеры :)
пропагатор делает паузу в 5 секунд для инициализации USB-устройств. Особенно одарённым флешкам этого может нехватать (#13841), и тогда пропагатор скажет, что ничего не нашёл, и будет предлагать загрузить какой-нибудь модуль. Загрузите какой-нибудь модуль: флешка к тому периоду уже скорей всего распознается.
- Записываем загрузчик syslinux: # syslinux -d /syslinux /dev/sdc1
- Торжественно несём флешку к непокорной машинке и грузимся с неё. Если пропагатор будет взбрыкивать, нам надо всячески попробовать подсунуть ему раздел нашей флешки, уж как он её там определит. Если будет спрашивать путь к образу для загрузки, можно попробовать просто нажать #Enter#.
- Пробуем пройти процесс инсталляции!
- Если на стадии применения разбивки дисков будет ругань, что невозможно записать Partition Table на устройстве таком-то и нужно перезагрузиться — перезагружаемся, как только появится графическая морда с выбором языка, переключаемся на вторую консоль (Ctrl-Alt-F2), и редактируем конфигурационный файл EVMS (# vi /etc/evms.conf) — в секции sysfs_devices в параметр exclude нам надо внести устройста, на которые была ругань (должно получиться что-то вроде exclude = [ sda* loop* ]). Переключаемся обратно в седьмую консоль, и пробуем еще раз установить систему. Должно же наконец получиться! :)
неплохо еще на флеху закинуть образ rescue (и учесть это в sysconf.cfg) — часть инсталлятора, lilo настраивающая, работает иногда со взбрыками и требует ручной доводки из live-системы.
label rescue kernel alt0/vmlinuz append initrd=alt0/full.cz live ramdisk_size=65536 fastboot stagename=/rescue showopts automatic=method:disk,disk:sda,partition:sda1
Ну вот вроде и всё. Удачной инсталляции!
Использование флэшки для начальной загрузки
Процедура создания загрузочной флэшки, содержащей первую стадию инсталлятора, описана в официальной документации