Модификация установочного ISO образа

Материал из ALT Linux Wiki

Модификация установочного ISO образа

На примере Альт Рабочая станция 9 https://getalt.org/ru/alt-workstation/

Установка пакетов

apt-get install xorriso squashfs-tools cdrkit-utils genisoimage

Скачивание образа

wget https://mirror.yandex.ru/altlinux/p9/images/workstation/x86_64/alt-workstation-9.0-x86_64.iso

Получение информации об образе

Данная информацию необходима для анализа исходного образа и указания соответствующих значений при обратной запаковке образа

isoinfo -d -i alt-workstation-9.0-x86_64.iso
xorriso -indev alt-workstation-9.0-x86_64.iso -toc -pvd_info

Распаковка образа

mkdir altcustom
xorriso -osirrox on -indev alt-workstation-9.0-x86_64.iso -extract / altcustom

Содержимое образа

В каталоге altcustom/ можно увидеть содержимое распакованного образа:

altinst
ALTLinux
docs
EFI
index.html
license.all.html
license.ru.html
live
Metadata
rescue
syslinux

Для перепаковки, в первую очередь, интерес представляют squash-образы:

altinst
live
rescue

и каталог:

ALTLinux/

altinst — базовый образ для установки системы
live — образ для запуска LiveCD
rescue — образ для запуска RescueCD
ALTLinux/ — содержит набор пакетов для установки системы

Изменение содержимого образа

Примечание: Распаковку и упаковку squash-образов следует проводить исключительно от пользователя root


Для примера, распакуем образ altinst:

unsquashfs altcustom/altinst

При этом в текущем каталоге будет создан дополнительный каталог squashfs-root/ с содержимым этого образа.

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

rm -f altcustom/altinst
mksquashfs squashfs-root/ altcustom/altinst

Добавить свои пакеты в набор устанавливаемых пакетов можно так https://www.altlinux.org/Autoinstall#Делаем_«собственный»_дистрибутив

Создание ISO

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

Чтобы новый ISO сохранил возможность запускаться с флешек, необходимо из исходного ISO получить гибридный MBR:

dd if=alt-workstation-9.0-x86_64.iso of=altcustom/syslinux/isohdpfx.bin bs=512 count=1

После этого можно создавать гибридный ISO образ:

Примечание: Замените значения параметров volid и appid на свои, полученные на этапе анализа исходного образа
cd altcustom/
xorriso -as mkisofs -joliet -partition_cyl_align "off" -partition_offset 16 -iso-level 3 -full-iso9660-filenames -sysid "LINUX" -volid "ALT Workstation 9.0 x86_64" -volset "ALT" -publisher "BASEALT LTD" -appid "ALT WORKSTATION 9.0 X86_64 2019-10-22" -copyright "LICENSE_ALL_HTML" -eltorito-boot syslinux/isolinux.bin -eltorito-catalog syslinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -isohybrid-mbr syslinux/isohdpfx.bin -eltorito-alt-boot -efi-boot EFI/.efiboot.img -no-emul-boot -isohybrid-gpt-basdat -output ../alt-custom.iso .

Ссылки

  1. https://wiki.archlinux.org/index.php/Remastering_the_Install_ISO_(Русский)
  2. https://linuxconfig.org/legacy-bios-uefi-and-secureboot-ready-ubuntu-live-image-customization