Иногда возникает необходимость добавить, удалить или изменить файлы на iso образе. Например вы хотите добавить несколько треков на образ диска с музыкой или отредактировать параметры загрузки для Live CD. В Windows эта задача решалась очень просто, существует большое количество как известных так и не очень утилит с подобной функциональностью таких например Alcohol, UltraISO и т д. Но в Linux дела обстоят немного странным образом.
С одной стороны в Linux работа с образами дисков поддерживается на уровне системы, без каких либо дополнительных утилит, но с другой файловая система iso не поддерживает редактирование данных. Поэтому все операции по изменению содержимого образов сводятся к распаковке, редактированию и обратной упаковке образа. Из этой статьи вы узнаете как отредактировать ISO образ в Linux.
Содержание статьи
Редактирование iso образов в Linux
Этот процесс немного трудоемкий, но он раскрывает суть работы с образами, будь то в Windows или Linux все происходит именно таким способом, только если вы используете дополнительные утилиты все действия будут автоматизированы и скрыты от пользователя. Вы будете чувствовать что редактируете образ напрямую внося изменения в его файловую систему, но это не так, это лишь видимость создаваемая утилитой.
Шаг 1. Распаковка образа
Монтируем образ, копируем из него содержимое во временную папку, вносим необходимые изменения и собираем образ обратно. Монтируем:
sudo mount ~/file.iso /mnt/
Создаем временную папку и копируем данные:
sudo mkdir /tmp/isowork
sudo cp -R /mnt/* /tmp/isowork/
Для примера был создан каталог в папке /tmp, но вы можете копировать в любое другое место на жестком диске.
Шаг 2. Редактирование образа
Переходим в временную папку и вносим изменения:
cp /tmp/isowork
Или можно открыть папку в графическом файловом менеджере и работать там:
sudo nautilus /tmp/isowork
Шаг 3. Сборка обычного образа
Теперь разберемся как сделать ISO Linux. Когда редактирование закончено можно собрать образ обратно:
mkisofs /tmp/isowork --iso-level 4 -J -R -o ~/file.iso
Здесь нам нужно использовать именно эти опции чтобы утилита применяла максимально современную файловую систему ISO и все файлы обрабатывались нормально.
Шаг 4. Сборка загрузочного iso образа
Если вы распаковали загрузочный образ, то и паковать его надо как загрузочный. Для этого придется использовать ещё несколько опций:
mkisofs -o output.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -cache-inodes -no-emul-boot -boot-load-size 4 -boot-info-table -J -l -R -V "Новый образ" /tmp/isowork/
Файлы isolinux/isolinux.bin и isolinux/boot.cat должны реально существовать на диске чтобы этот образ был собран без ошибок. Вам надо будет найти верные пути к ним.
Чтобы полностью ответить на вопрос как iso образ сделать загрузочным Linux нам понадобится утилита isohybrid:
isohybrid /tmp/output.iso
Теперь с этого диска можно загрузить систему. Утилиту isohybrid можно установить вместе с пакетом syslinux-utils:
sudo apt install syslinux-utils
Если нужно чтобы образ грузился и в UEFI, то следует добавить опцию -u.
Шаг 5. Проверка загрузочного ISO
Прежде чем записывать полученный ISO образ его надо проверить на работоспособность. Для этого можно использовать набор эмуляторов qemu:
sudo apt install qemu
Для проверки образа выполните в терминале:
qemu-system-x86_64 -boot d -cdrom /tmp/output.iso -m 512
Если образ загрузился, значит всё хорошо. Если же он не работает - обратитесь к официальному руководству дистрибутива, для которого вы собираетесь редактировать iso образ. Обычно там будут описано как это делать верно, чтобы всё работало.
Выводы
В этой статье мы разобрались не только как выполняется редактирование iso образа в Linux, но и как происходит создание загрузочного iso образа linux. Конечно, этот метод будет работать не для всех дистрибутивов и не всегда, но он может послужить для вас отправной точкой.
Anubis – это максимально легкое open-source решение, созданное специально для защиты небольших веб-ресурсов от бесконечного потока запросов от ботов и AI парсеров. Этот инструмент можно считать "ядерным вариантом", потому что он заставляет ботов выполнять вычисления похожие на майнинг криптовалюты. Но это неплохая альтернатива для тех, кто не может или не хочет использовать Cloudflare. Посмотреть детали










Извините за критику, но в статье не раскрыта тема как изменить существующий образ с неизвестной системой загрузки (например некоторые диски для обновления биос от fujitsu, установочные диски от MS). В остальном - прекрасная статья, которая позволяет найти корень вопроса и начать исследовать ту область,которую не знал ранее.
Здравствуйте. но к сожалению следуя чётко инструкции, у меня не грузится образ. Даже пробовал пересобирать без изменений, без результатно.
Спасибо, полезная статья дающая представление о работе с образами в среде GNU/Linux, очень полезна особенно начинающим Линуксоводам;)...
Шаг 2. Редактирование образа
Переходим в временную папку и вносим изменения:
cp /tmp/isowork
опечатка, правильно:
cd /tmp/isowork