Тема не для технических подробностей и не для выбора основы (porteus / dracut / etc.), а для обсуждения общего функционала.
Это необходимо. Главное на данном этапе - определить что именно хотелось бы получить в результате.
Описанный в теме функционал, как мне кажется, можно без особых сложностей приделать почти к любому варианту Init'а.
Но пока
нет ясной запланированной цели - никакой совместной работы не получится.
Первый важный вопрос - какие задачи должен решать универсальный Live Initrd.
В шапке темы описан "минимальный функционал". Есть возражения и/или дополнения?
Могу аргументировать пользу каждого пункта.
Одна из основных задач при создании универсального Initrd -
простое и логичное, интуитивно понятное управление.
Объяснить новичку суть и преимущества многослойной ФС не так уж сложно.
Но дальше объяснений дело не пойдёт, потому что простого и удобного способа использовать неспециализированный Linux-дистрибутив с корневой ФС типа AUFS не существует.
Сложнее объяснить особенности конкретной реализации - "сохранёнки", "модули" и т.п. Расширения файлов, нагромождение параметров, не очевидные префиксы - в этом трудно разобраться даже человеку, хорошо знающему суть, но не знакомому с конкретной реализацией. Это надо обязательно исправить, снизить порог вхождения в Linux на многослойной ФС.
Управление LiveInit'ом должно быть максимально простым и очевидным, чтобы в нём можно было легко разобраться.
Параметры
rw= /
ro= , как мне кажется, наиболее простой и понятный способ управления. Их назначение даже объяснять не надо, и так понятно что к чему.
А использование конфиг. файла пригодится, скорее всего, разработчикам конкретных дистрибутивов. Типовой конфиг. файл можно поставлять вместе с системой, или же формировать при установке (чтобы учесть особенности реализации системы).