Как стать автором
Обновить

Комментарии 12

А почему не cubic?

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

Посмотрев описание - даже удивился. Очень хороший скрипт. Поизучаю и опробую его на досуге. Этот пост лишь результирует мой скромный опыт понимания обустройства LiveCD систем. Люблю учиться на практике.

За подсказку спасибо. Обязательно ознакомлюсь.

Изначально этот скрипт был написан чтобы вставлять костыли для установки дистрибутивов на Intel Atom устройства (там крайне много нюансов было), позже функционал очень хорошо расширился, пользуюсь периодически.

Для федора линукс есть божественный https://github.com/livecd-tools/livecd-tools Он настолько прекрасен, насколько это вообще возможно! Все операции по монтированию он берет на себя, выдает шелл препарируемой ОС и позволяет убрать или добавить любые пакеты и конфиги. Но это еще не всё! Самая мякотка в возможности создать носитель, содержащий образ для чтения, и область записи. Все изменения пишутся в overlay область носителя, т.е. ОС можно в любой момент "скинуть на дефолт" (я этот функционал немного автоматизировал и прирезал к rc.local таким образом, что выбрать режим reset-to-defaults можно выбрать в меню загрузки ОС) . Опять же, в отличии от снимка файловой системы, откатывать можно не только целиком, но и вплоть до каждого файла, это позволяет, например обнулить только системные или только пользовательские настройки. Очень мощно!

Вариант с полностью live образом (все изменения только в памяти) там тоже есть, но мне он не понравился. Банально, яркость, уровень звука и прочие параметры после каждой перезагрузки придется выставлять заново. Опять же, если вам нужно будет управлять этим хозяйством (мы смотрели в сторону Foreman), всё будет очень печально.

Мы исследовали эту штуку, когда всех накрыло ковидом как унифицированную среду для подключения из дома и как "тонкий клиент".

PS в той версии livecd-tools, которую мы использовали, был косяк, что ему нужен был resolv.conf как файл, а в новых live дистрибутивах федоры это ссылка. Причем, при распаковке, эта ссылка получается "битой". Решается циничным комментом это блока в утилите livecd-creator (сама утилита, по-сути это скрипт). Дальше всё идет как по маслу. Ну а разработчикам софтины мой низкий поклон, всё очень круто, очень функционально!

С федорой пока на вы)

К сожалению, я не стал бы рекомендовать данную статью тем, кто хочет пересобрать LiveCD любой системы. В ней достаточно много неточностей и ошибок. В частности, если сделать именно то, что описано выше, при запуске ISO при старте системы будет ошибка целостности файлов, так как нужно было сгенерировать новый файл с суммами md5. Кроме того, именно этот вариант будет загружаться дольше, чем большинство LiveCD, так как запуск mksquashfs без параметров жмёт старым gzip, тогда как в современных системах для сжатия применяются быстрые lz4 и zstd.

Верные уточнения. Для LiveCD суммы md5 не принципиальны, он стартует в легкую. Эту ошибку получаем если пытаться его установить. Это легко исправить... Допишу в статью, чтобы не было этого недоразумения (обновление md5 и manifest) это всего пару строк кода. На счет сжатия - сложно сказать. Пробовал запускать как есть по тексту, сжимал lz... Сильной разницы не заметил. Zstd не пробовал, как выдастся свободное время обязательно его протестирую. Постараюсь исправить неточности. За комментарий благодарю, мне очень полезно, я только учусь.

Видимо, вы не пробовали запустить систему на достаточно слабом железе, там разница между типами сжатия заметна. Она не так критична, но она есть.

Ниже можно посмотреть сравнение разных типов сжатия:

http://facebook.github.io/zstd/

Принято. Знакомлюсь. Пока в скрипт добавил сжатие lz4.

Внес исправления и дополнения (компрессия, md5, manifest). Если есть еще спорные моменты, буду рад о них узнать, ежели вас не затруднит подсказать, направить. Хочется, чтобы описанный опыт был полезен и главное точен.

Большое вам спасибо за конструктивную критику.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории