LINUX.ORG.RU

Как это сделать ?

Распаковать iso образ, т.е. смонтировать и скопировать с него в отдельную директорию все файлы.
Смонтировать squashfs образ, скопировать с него куда-либо все файлы, поместить в директорию со скопированными файлами файлы, которые вы хотите добавить.
Посредством mksquashfs собрарать новый squashfs образ из файлов в директории, куда были скопированы файлы из squashfs образа и скопированы целевые файлы.
Поместить новый squashfs образ, естественно с тем же именем, что и исходный с заменой, в директорию, куда скопированы файлы из iso образа.
Посредством mkisofs или аналогичной команды соберите загрузочный iso образ.

Более детально по работе с mksquashfs читайте

man mksquashfs
ну и документацию по mkisofs и загрузчику, который используется в образе, что бы понять как нужно собирать загрузочный iso образ.

Удачи.

kostik87 ★★★★★
()
Ответ на: комментарий от anonymous

Я и написал soft для модификции файлов в установочном диске. А так, был проект remastersys для создания установочного iso диска на основе установленной Ubuntu, но его разработку забросил автор.

А что вас не устраивает в написанном выше? Это как раз те инструменты, которыми и собираются LiveCD диски.

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

гдето так я и предполагал, но squashfs мне наверно не нужен, а самый интересный момент с загрузчиком и непонятен )

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

но squashfs мне наверно не нужен

Что же вы тогда хотите изменить в iso образе? Как бы вся запускаемая система и находится в squashfs образе.

а самый интересный момент с загрузчиком и непонятен )

Ну так вперёд к чтению документации по загрузчику, который сейчас используется в iso образе или загрузчику, который вы хотите использовать при сборке загрузочного iso образа на предмет как собственно с использованием выбранного загрузчика собрать загрузочный iso образ.

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

Два чая этому господину.

Именно так это и делается.

Twissel ★★★★★
()
Ответ на: комментарий от kostik87

Что же вы тогда хотите изменить в iso образе?

ничего не хочу изменить, надо добавить
не вижу в ubuntu-14.04-desktop-i386.iso squashfs образов

Ну так вперёд к чтению документации по загрузчику,

ага, спасибо за совет, сходил в гугл

смог распаковать образ и загрузчик с помощью 7z

обратно образ собирается, но загрузчик не подцепляется - при загрузке пишет img cheksumm error

команда такая: mkisofs -v -o ubuntu-14.04-desktop-i386-my.iso -JR -iso-level 3 -joliet-long -l -no-emul-boot -boot-load-size 4 -b boot/Bootable_NoEmulation.img ./CD

гдето тут я ошибся, но пока не пойму где

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

поправил команду:

mkisofs -v -o ubuntu-14.04-desktop-i386-my.iso -cache-inodes -r -J -l -b «isolinux/isolinux.bin» -c «isolinux/boot.cat» -no-emul-boot -boot-load-size 4 -boot-info-table ./CD

так грузится в виртуалке, сейчас на реальную флешку запишу и проверю

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

но и собранный iso в виртуалке грузится «не до конца», через какоето время начинает ругаться initramfs что не может найти live file system

x905 ★★★★★
() автор топика

более простая задача: есть образ ubuntu-14.04-desktop-i386.iso, распаковываю его командой 7z x ubuntu-14.04-desktop-i386.iso
как собрать обратно (ничего не меняя) ?
команду сборки брал из https://help.ubuntu.com/community/LiveCDCustomization
новый образ собирается и в виртуалке грузится
но если его записать на флешку (через dd), то с флешки не грузится
с исходного ubuntu-14.04-desktop-i386.iso флешка грузится

isoinfo показывает для нового образа:
El Torito VD version 1 found, boot catalog is in sector 133
тогда как для исходного:
El Torito VD version 1 found, boot catalog is in sector 240

что делаю не так ?

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

Зачем тебе его распаковывать и запаковывать обратно? Открой тем же file-roller и просто добавь нужные файлы.

CYB3R ★★★★★
()
Ответ на: комментарий от CYB3R

и загрузчик будет ок и ты пробовал, а не просто написал как предыдущие советчики ?

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

ничего не хочу изменить, надо добавить

А добавление чего-либо во что-либо это разве не изменение исходного чего-либо?

не вижу в ubuntu-14.04-desktop-i386.iso squashfs образов

Поищи самый большой по размеру файл в образе - это и будет squashfs образ. Можешь так же взять и распаковать initramfs и посмотреть имя squashfs файла в сценарии init в initramfs.

так грузится в виртуалке, сейчас на реальную флешку запишу и проверю

Скажи, зачем ты собираешь iso образ, если собираешься грузить систему с флешки? Ты в курсе, что ты можешь попросту скопировать на флешку все файлы, установить на флешку любой загрузчик, хоть syslinux, хоть grub2, написать соответствующий конфиг для загрузчика и всё будет готово.

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

но и собранный iso в виртуалке грузится «не до конца», через какоето время начинает ругаться initramfs что не может найти live file system

Кхм, как бы весь нюанс в том, что тебе нужно разобраться как сценарий init в initramfs ищет файловую систему (носитель), который он должен смонтировать и на котором находится squashfs образ, который он будет монтировать вторым этапом. Скорее всего у файловой системы в iso образ должна быть определённая метка (label). Распакую initramfs и посмотри что делается в сценарии init, как он определяет нужную ему файловую систему. Ну либо читай документацию по initramfs из состава Ubuntu, там есть прочие параметр передаваемые ядру, которые обрабатывает сценарий init и посредством которых ты можешь указать где ему искать squashfs образ и имя этого образа.

но если его записать на флешку (через dd), то с флешки не грузится с исходного ubuntu-14.04-desktop-i386.iso флешка грузится

А чего ты хочешь, что бы iso образ можно было записать командой dd на флешку и он грузился с неё после этого, то iso образ в начале нужно сделать гибридным (hybrid), в составе пакета syslinux есть соответствующая утилита.

isoinfo показывает для нового образа: El Torito VD version 1 found, boot catalog is in sector 133 тогда как для исходного: El Torito VD version 1 found, boot catalog is in sector 240

Ты не думаешь.

а не просто написал как предыдущие советчики ?

Предыдущие советчики тебе всё правильно написали, просто ты думать не хочешь, а ждёшь, что тебе напишут что делать как для ребёнка. Так не получится, включай голову, ну или предлагай оплату за чтение с тобой по ролям документации и объяснение.

Удачи.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 1)
Ответ на: комментарий от w1nner

remastersys закрылся и не развивается, где-то ещё во времена Ubuntu 12.x, так что современный дистрибутив им не соберёшь, к тому же ТС так и не написал что он конкретно хочет. С другой стороны приведённых данных и так с лихвой хватает, надо лишь прочитать указанные материалы и подумать.

kostik87 ★★★★★
()
Ответ на: комментарий от x905

file-roller с iso работает только чтение

Кто тебе такую глупость сказал? Лучше закрой википедию, открой file-roller и сам проверь.

CYB3R ★★★★★
()
Ответ на: комментарий от kostik87

Предыдущие советчики тебе всё правильно написали, просто ты думать не хочешь, а ждёшь, что тебе напишут что делать как для ребёнка.

Я ему уже всё написал, как для ребёнка, а он просто не хочет ничего делать.

CYB3R ★★★★★
()
Ответ на: комментарий от CYB3R

я не использую гноме, проверить мне сложно это быстро
но проверю в понедельник

x905 ★★★★★
() автор топика
Ответ на: комментарий от kostik87

ты столько понаписал, а конкретно почему образ не создается у меня и так не ответил, хотя я привел полную команду создания (а значит и маны я почитал и в гугле был)

меня устроит команда, которой собирался исходный образ ubuntu-14.04-desktop-i386.iso разработчиками ubuntu, но где ее искать я пока не знаю

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

а конкретно почему образ не создается у меня и так не ответил

Где же он у тебя не создаётся? Ты же сам написал команду, которой создавал iso образ:

x905

поправил команду:

mkisofs -v -o ubuntu-14.04-desktop-i386-my.iso -cache-inodes -r -J -l -b «isolinux/isolinux.bin» -c «isolinux/boot.cat» -no-emul-boot -boot-load-size 4 -boot-info-table ./CD

так грузится в виртуалке, сейчас на реальную флешку запишу и проверю

Проверил команду, создал образ, только без первого ключа '-v', в VirtualBox всё прекрасно загружается.

меня устроит команда, которой собирался исходный образ ubuntu-14.04-desktop-i386.iso разработчиками ubuntu, но где ее искать я пока не знаю

Обращайся к разработчикам, но они там собирают образ утилитой xorriso, что видно в выводе isoinfo.

Теперь к вопросу, что у тебя что-то не загружается. Я тебе ответил, что если ты хочешь записывать посредством dd свой собранный образ на флешки, то тебе его в начале нужно сделать гибридным, есть утилита isohybrid, а так же перловый скрипт isohybrid.pl. Вот пока ты не сделаешь образ гибридным записывать его на флешку посредством dd смысла нет.

Ну и как я тебе уже сказал, начинай думать, включай голову, ну или предоставляй оплату, что бы кто-либо думал за тебя.

Ну и сходи ещё раз перечитай моё прошлое сообщение.

Удачи.

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

да, мне нужен гибридный образ, займусь его созданием
не делал ранее именно гибридный, потому такие вопросы

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

да, мне нужен гибридный образ, займусь его созданием

Ну и что же ты ноешь, я тебе всё расписал, а ты не прочитав начинаешь жаловаться. Ещё раз спрашиваю зачем именно гибридный? Ну сделаешь ты образ гибридным, ну запишешь его посредством dd на флешку, скажем объёмом в 4 Гб, как следствие образ размером в 1Гб займёт всё пространство флешки, оставшиеся 3 Гб будут не доступны. Повторяю ещё раз, а то ты, видимо, не понял можно на флешку попросту скопировать все файлы из iso образа, можно даже в отдельную директорию, затем установить на флешку любой загрузчик, хоть grub, но проще это делать с syslinux, тем более в iso образе есть конфигурационные файлы от isolinux (syslinux), которые можно сразу использовать, возможно придётся внести некоторые правки, в особенности, если файлы из iso образа ты разместишь в отдельной директории. В итоге у тебя на флешке, к примеру, будет директория /ubuntu/14.04/ в ней будут лежать файлы из образа, а в загрузчике на флешке ты будешь вызывать ядро и initrd из этой директории и передавать им управление. К тому же в остальном флешкой можно будет пользоваться как обычно, на затирая её и сохранив прочую файловую систему и накидать на неё таким способом ещё сколько угодно систем. К тому же если ставить grub2, то iso образ можно положить на флешку как файл, посмотри в Internet примеры как в grub2 создаются loop устройства и как их использовать при загрузке Ubuntu. Как то так.

Но разобраться как делать гибридные образы тоже неплохо. Только изучи файлы, которые лежат в директории .disk в корне образа, некоторые данные из этих файлов тебе понадобятся при создании гибридного образа.

Удачи.

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

создать гибридный образ мне помогла команда isohybrid на созданный ранее образ (вот за нее спасибо), флешку сделал, загрузился, ставлю (проверяю)

пока мне нужен именно образ системы «как эталон», чтобы его можно на любую флешку развернуть через dd и установка с нее работала

да, вариант с загрузчиком на уже имеющейся fat32 флешке неплох (обдумаю), но те, кто будут ставить эту ubuntu (не я) имеют свои флешки, мне проще им дать образ (новые флешки на 1-2 gb сами найдут и свои имеющиеся не поломают), чем объяснять как сделать флешку загрузочной (для себя может быть я так и сделаю как разберусь)

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

создать гибридный образ мне помогла команда isohybrid на созданный ранее образ (вот за нее спасибо), флешку сделал, загрузился, ставлю (проверяю)

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

Старайся учиться работать с имеющимися данными, так у тебя будет меньше вопросов, ведь ты сможешь решать их самостоятельно и объём знаний будет увеличиваться.

Удачи.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 2)
Ответ на: комментарий от kostik87

ok

еще вопрос если можно - как флешка стала «гибрибной» - она не перестала автомонтироваться, почему ? хотя руками mount /dev/sdb ./1 успешно работает

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

Флешка гибридной не стала, ты записал на флешку гибридный образ, содержащий файловую систему iso9660 и таблицу разделов. Посмотри вывод blkid. А так, зачем же тебе её автомонтировать, если там одна файловая система и та, доступная только на чтение.

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

blkid сказал /dev/sr0: LABEL=«SecureDrive» TYPE=«iso9660»

автомонтировать чтобы файлы почитать, которые я добавил

это конечно не критично, немного неудобно

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

Вот, iso9660, которая располагается на флешке, т.е. устройстве /dev/sdX, видимо udisks настроен на автоматическое монтироваиние файловых систем, которые соответствуют типу носителя. Т.е. файловую систему iso с CD/DVD привода он смонтирует, а вот если там будет, к примеру, ext4 - нет, тоже самое и с флешки файловую систему ext4 он смонтирует, а вот файловую систему, которая должна находиться на CD/DVD приводе - нет.

автомонтировать чтобы файлы почитать, которые я добавил

Если ты имеешь ввиду, что у тебя загружена система с этой флешки и ты хочешь получить доступ к данным (файлам), которые находятся на флешке, то разбирайся куда монтируется флешка при запуске LiveCD системы, ведь для запуска такой системы нужно смонтировать squashfs образ, как следствие флешка тоже должна быть смонтирована. Так что ищи, что-либо в /mnt/ ну либо распаковывай initramfs и изучай куда он монтирует флешку при запуске LiveCD(USB) системы. Т.е. во время работы LiveCD(USB) системы флешка уже смонтирована. Разбирайся куда. Можешь воспользоваться поиском:

find / -type f -iname 'имя_добавленного_файла'

kostik87 ★★★★★
()
Ответ на: комментарий от kostik87

до выполнения над образом команды isohybrid она также имела тип iso9660 (как мне кажется), ее автомонтирование выполнялось ОК

нет, система загружена уже с диска, флешку эту же вставляю еще раз чтобы файлы прочесть с неё

ну да ладно, не критично это

x905 ★★★★★
() автор топика
Ответ на: комментарий от x905

наверно это изза дурной флешки securedrive, которую я использу сейчас, там скрытый первый диск readonly

x905 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.