Edit iso in linux
Если у вас не работает один из способов авторизации, сконвертируйте свой аккаунт по ссылке
Авторизуясь в LiveJournal с помощью стороннего сервиса вы принимаете условия Пользовательского соглашения LiveJournal
Снять образ с загрузочного компакт-диска, изменить файлы в образе и записать результат на другой компакт-диск.
Подготовка
Снимаем образ с компакт-диска. Работа с образом быстрее, да и резервная копия никогда не помешает.
Создаём папку для монтирования образа, аналог «подключения виртуального диска» в виндах. В зависимости от места создания, возможно, придётся делать от имени суперпользователя. Лично у меня эта папка была создана однократно и именно для таких целей — для подключения образов дисков.
Монтируем образ компакт-диска в папку. Только от имени суперпользователя.
Создаём папку для копирования содержимого диска, в которой будем изменять файлы. Путь к cd-dir должен быть указан либополный, либо относительно текущего каталога. У меня обычно это папка в домашнем каталоге.
Копируем файлы с образа в папку.
Размонтируем образ, он нам больше не нужен. Тоже от имени суперпользователя. Если этого не сделать сейчас, образ будет автоматически размонтирован при перезагрузке.
Изменение содержимого
Всё содержимое компакт-диска сейчас у нас находится в папке cd-dir. Редактируем его по усмотрению.
Сборка каталога в образ
А вот эта задача уже посложнее. Стандарт загрузочного компакт-диска подразумевает наличие на нём двух файлов: загрузочного каталога и собственно образа загрузчика.
Например, в Ubuntu 8.04 эти два файла находятся в папке isolinux. Образ загрузчика — isolinux.bin, загрузочный каталог — boot.cat.
Загрузочный каталог — файл размером 2 килобайта, его содержимое роли не играет.
Особый интерес представляет образ загрузчика.
BIOS не умеет грузиться с CD-ROMа, но умеет считывать с него информацию. Специально для загрузки с компакт-дисков была введена спецификация El Torito, El Torito Bootable CD Specification. Суть её в следующем: BIOS сканирует все дисковые системы компьютера, и по стандарту ISO9660 (формат хранения данных на компакт-дисках), эмулирует образ загрузчика как жёсткий диск (или флоппик), после чего происходит загрузка с этого диска в обычном режиме.
Нужно найти оба этих файла, после чего собрать образ компакт-диска из каталога:
mkisofs -r -iso-level 4 -b boot.bin -c boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -o cdimage-new.iso cd-dir/
boot.bin — полный путь к образу загрузчика относительно корня компакт-диска
boot.cat — полный путь к загрузочному каталогу относительно корня компакт-диска
-no-emul-boot — нужен в том случае, когда образ загрузчика не является точным образом загрузочного флоппи, включая размер
-boot-load-size 4 — задаёт число загрузочных секторов, ключ нужен для совместимости с «глючными» биосами, которых много. Если параметр будет не 4, то некоторые экземпляры откажутся запускаться
-boot-info-table — также для совместимости
Получившийся диск записываем командой:
Умолчания
/dev/cdrom — файл-устройство привода компакт-дисков
cdimage-orig.iso — образ диска до редактирования
cdimage-new.iso — образ отредактированного диска
/mnt/vcd/ — каталог для монтирования образов
cd-dir — каталог для редактирования содержимого диска
Дополнительно
ISO9660 — стандарт файловой системы для хранения данных на дисках CD. Формат введён для независимости доступа к дискам от рабочей платформы (Windows, Linux, и т.д.)
Есть несколько уровней спецификации:
1. Формат имён файлов — 8.3, как в DOS. Не больше 8 символов в имени каталога. Не больше 8 вложенных каталогов. В именах используются только буквы латинского алфавита. Фрагментация файлов не допускается.
2. Имена файлов ограничены 32 символами. Набор символов в именах неограничен.
3. Допускается фрагментация файлов (необходимо для пакетной или инкрементной записи CD).
4. (ISO9660-2) Максимальная длина пути — 207 символов. Нет ограничения на вложенные папки. Символа «.» (точка) в именах файлов не носит особого значения.
Общее ограничение ISO9660 — размер файла не может превышать 2GB.
Расширение стандарта, называемое Joliet, добавляет поддержку длинных имён файлов и не-ASCII символов в именах.
Ссылки
PS
удобней когда виден процесс копирования
новая опция status=progress
dd if=/dev/cdrom of=disk.iso status=progress
Изменение iso образа в linux
Снять образ с загрузочного компакт-диска, изменить файлы в образе и записать результат на другой компакт-диск.
Решение
Подготовка
Снимаем образ с компакт-диска. Работа с образом быстрее, да и резервная копия никогда не помешает. Создаём папку для монтирования образа, аналог «подключения виртуального диска» в виндах. В зависимости от места создания, возможно, придётся делать от имени суперпользователя. Лично у меня эта папка была создана однократно и именно для таких целей — для подключения образов дисков. Монтируем образ компакт-диска в папку. Только от имени суперпользователя.
Создаём папку для копирования содержимого диска, в которой будем изменять файлы. Путь к cd-dir должен быть указан либополный, либо относительно текущего каталога. У меня обычно это папка в домашнем каталоге. Копируем файлы с образа в папку. Размонтируем образ, он нам больше не нужен. Тоже от имени суперпользователя. Если этого не сделать сейчас, образ будет автоматически размонтирован при перезагрузке.
Изменение содержимого
Всё содержимое компакт-диска сейчас у нас находится в папке cd-dir. Редактируем его по усмотрению.
Сборка каталога в образ
А вот эта задача уже посложнее. Стандарт загрузочного компакт-диска подразумевает наличие на нём двух файлов: загрузочного каталога и собственно образа загрузчика. Например, в Ubuntu 8.04 эти два файла находятся в папке isolinux. Образ загрузчика — isolinux.bin, загрузочный каталог — boot.cat. Загрузочный каталог — файл размером 2 килобайта, его содержимое роли не играет.
Особый интерес представляет образ загрузчика.
Немного теории.
BIOS не умеет грузиться с CD-ROMа, но умеет считывать с него информацию. Специально для загрузки с компакт-дисков была введена спецификация El Torito, El Torito Bootable CD Specification. Суть её в следующем: BIOS сканирует все дисковые системы компьютера, и по стандарту ISO9660 (формат хранения данных на компакт-дисках), эмулирует образ загрузчика как жёсткий диск (или флоппик), после чего происходит загрузка с этого диска в обычном режиме. Нужно найти оба этих файла, после чего собрать образ компакт-диска из каталога: boot.bin — полный путь к образу загрузчика относительно корня компакт-диска
boot.cat — полный путь к загрузочному каталогу относительно корня компакт-диска
-no-emul-boot — нужен в том случае, когда образ загрузчика не является точным образом загрузочного флоппи, включая размер
-boot-load-size 4 — задаёт число загрузочных секторов, ключ нужен для совместимости с «глючными» биосами, которых много. Если параметр будет не 4, то некоторые экземпляры откажутся запускаться
-boot-info-table — также для совместимости Получившийся диск записываем командой:
Умолчания
/dev/cdrom — файл-устройство привода компакт-дисков
cdimage-orig.iso — образ диска до редактирования
cdimage-new.iso — образ отредактированного диска
/mnt/vcd/ — каталог для монтирования образов
cd-dir — каталог для редактирования содержимого диска
Дополнительно
ISO9660 — стандарт файловой системы для хранения данных на дисках CD. Формат введён для независимости доступа к дискам от рабочей платформы (Windows, Linux, и т.д.) Есть несколько уровней спецификации:
1. Формат имён файлов — 8.3, как в DOS. Не больше 8 символов в имени каталога. Не больше 8 вложенных каталогов. В именах используются только буквы латинского алфавита. Фрагментация файлов не допускается.
2. Имена файлов ограничены 32 символами. Набор символов в именах неограничен.
3. Допускается фрагментация файлов (необходимо для пакетной или инкрементной записи CD).
4. (ISO9660-2) Максимальная длина пути — 207 символов. Нет ограничения на вложенные папки. Символа «.» (точка) в именах файлов не носит особого значения. Общее ограничение ISO9660 — размер файла не может превышать 2GB. Расширение стандарта, называемое Joliet, добавляет поддержку длинных имён файлов и не-ASCII символов в именах. Источник
Редактирование iso образов
Доброго времени суток. Есть iso образ и нужно в него добавить файлы. Пытаюсь сделать это с помощью IsoMaster. В итоге получаю образ в котором вновь добавленные файлы остаются нормальными, а те которые были в исходном образе — не читаемы, т.е. прочитать их можно, но получается полная чушь. Попробовал Kiso, но с этой программой проблема в том что она вообще не хочет сохранять файлы. Посоветуйте как решить проблему с isomaster или посоветуйте другую программу.
P.P.S. Может важно- образ 8-ми гиговый Монтируете образ, копируете содержимое на жёсткий диск, редактируете образ, собираете образ. Программы: mount, mkisofs. Это конечно вариант, но если нет желания делать лишние движения? Это не лишние, а обычные телодвижения. Так поступают все программы для редактирования образов ISO, т.к. этот формат не предназначен для редактирования.
Я понимаю что программы так и делают и я бы хотел что бы это делали программы, а не я. Т.е. в isomaster есть возможность добавить файлы, следовательно я хочу пользоваться данной возможностью. Если не устраивает — делай форк даже майкрософт собирает свои iso-кшки консольной программой из батников. редактирование iso — неправильно. Всё остальное работает черер ж*пу.
Если так хочется по-быстрому иметь возможность добавлять/удалять в образах болванок файлы, делай как я: создаешь при помощи dd файлик нужного размера (чтобы целиком на DVD влез); при помощи mkfs.ext2 создаешь на нем ext2; затем при помощи tune2fs отключаешь всякие времена для проверок, рутовский резерв и т.п.; создаешь директорию и монтируешь свой образ; заполняешь его нужными файлами; записываешь на диск. Потом файлы с образа можно удалить и заполнить другими, чтобы записать следующую болванку. Зато потом, если ты писал на DVD+RW, можно просто снять с нее образ; подмонтировать его; удалить/добавить нужные файлы; записать обратно. Очень удобно. Правда, в мастдае такой диск тоже будет открываться. Пока ты писал этот комментарий, можно было дважды нагуглить простое решение. Для создания образа воспользуемся следующим синтаксисом: $ mkisofs -o test.iso -Jrv -V test_disk /home/usver/test_dir
В этом примере следующие обозначения: -o — имя создаваемого iso-файла (test.iso) -J — используем записи Joliet для совместимости с системой Windows -r — Rock Ridge расширение для совсестимости с *nix -v — так называемый verbose-режим. В этом случае в процессе создания образа будет выводиться различная дополнительная информация -V — указываем имя тома (test_disk); Это имя будет отображаться при просмотре в Windows кстати кто нибудь знает как на одну сд болванку залить два образа openbsd и systemrescuecd с возможностью выбора при загрузке? размером они умещаются
Выложить оба в корень будущего образа, применить загрузчик вроде grub4dos, написать для него конфиг для выбора sysrcd или openbsd. спасибо попробуем :_) >Это не лишние, а обычные телодвижения.
По-моему 4.2. Монтировать и копировать ничего не надо, лишь создать образ при сохранении. В вашем случае лишняя копия получается. >В итоге получаю образ в котором вновь добавленные файлы остаются нормальными, а те которые были в исходном образе — не читаемы
Писали о проблеме девелоперам?
AcetoneISO конечно попробую, но разве она не для монтирования? Wine и ultraiso вариант по-моему не самый лучший, но как бы не оказался единственным. Остальные варианты — это не решение вопроса, т.к. вопрос был «Посоветуйте как решить проблему с isomaster или посоветуйте другую программу», т.е. нужен гуй. Писать разработчикам. увы, но не с моим знанием английского. mount -t loopback cd.iso /some_diretory и отредактируй
неизвестный тип файловой системы ‘loopback’ Только iso9660 таким образом редактировать нельзя. Еще раз напишу: нужен графический интерфейс Кроме ISO Master нет ничего вменяемого, ИМХО.
>В итоге получаю образ в котором вновь добавленные файлы остаются нормальными, а те которые были в исходном образе — не читаемы, т.е. прочитать их можно, но получается полная чушь. Специально установил IsoMaster, добавил файлы — всё пучком. Да кириллицу не понимает. Ubuntu 10.04 x86_64 Взял 700 метровый образ и тоже все прошло нормально, а с 8 гиговым вот такой облом. Источник