Форум проекта PuppyRus Linux

Дистрибутивы проекта PuppyRus Linux => Сборки Linux от пользователей => MiniOS - модульный debian RU frugal => Тема начата: sfs от 04 Август 2022, 15:44:51

Название: Критика initrd slax-minios. Предложения по улучшению
Отправлено: sfs от 04 Август 2022, 15:44:51
Ознакомился с initrd slax-minios.
Очень не понравился
1. Даже noload load нет
2. Модули ядра грузятся по списку, без udev. Т.е. загружается куча лишнего для вашего железа

В доке
perch   Активировать функцию постоянных изменений (https://github.com/minios-linux/minios-live/wiki/Параметры-командной-строки-(чит-коды)).
Видимо гуглом перевели. Пока не прочитал
perch   Activate Persistent Changes feature
не понял что это сохраненка  :)
https://www.slax.org/starting.php
Цитата
При запуске с носителя только для чтения, такого как CD/DVD, Slax сохраняет все системные изменения только в памяти, и вы теряете их при перезагрузке. Если вы запускаете Slax с носителя с возможностью записи, например, с USB-накопителя, то все изменения, внесенные вами в саму операционную систему, сохраняются и восстанавливаются при следующей загрузке. Если ваше устройство использует файловую систему FAT, которая чаще всего встречается на USB-накопителях, то все файловые изменения самого Slax сохраняются в специальный файл changes.dat, который создается на вашем загрузочном устройстве в каталоге /slax/changes/ и автоматически увеличивается в размере до 4 ГБ.

Если ваше загрузочное устройство использует собственную файловую систему Linux, например ext4, то измененные файлы сохраняются в директорию /slax/changes/ без промежуточного файла changes.dat.

Если вам по какой-либо причине не нравятся постоянные изменения, просто выберите другую опцию в меню загрузки, и ваш Slax начнет использовать "свежую" конфигурацию по умолчанию и не будет сохранять никаких изменений. Это может быть полезно в случаях, когда вы хотите протестировать что-то в масштабах всей системы, поскольку вы всегда можете вернуться к состоянию по умолчанию простой перезагрузкой (если что-то пойдет не так).
Т.е. сохраненки в модуль нет и вообще никакую сохраненку не сделать ReadOnly ? Т.е. неубиваемости нет  :'(

Юзер пересобрать его как-то может ? например под другое ядро? Т.е. есть система пересборки?

Чем он Вас привлек? Самый не функциональный из тех, что я видел. Хуже только в puppy-woof
Не думали поменять?
Название: Re: Re: MiniOS - модульный debian RU frugal
Отправлено: gumanzoy от 04 Август 2022, 17:25:05
1. Даже noload нет
В обычном slax 9 есть noload.
А minios разве нет ?
Название: Re: Re: MiniOS - модульный debian RU frugal
Отправлено: sfs от 04 Август 2022, 19:08:45
noload load
перепутал
Название: Re: Re: MiniOS - модульный debian RU frugal
Отправлено: crims0n от 07 Август 2022, 16:18:36
Юзер пересобрать его как-то может ? например под другое ядро? Т.е. есть система пересборки?

Чем он Вас привлек? Самый не функциональный из тех, что я видел. Хуже только в puppy-woof
Не думали поменять?
Это уже обсудили в телеге. Менять будем, но нескоро, так как надо в новый initrd дописывать текущий функционал миниоси, такой как включение/отключение служб systemd, изменение пароля пользователя и рута, выбор под кем грузить систему (пользователь или рут), установку ключа ssh...
Название: Re: Re: MiniOS - модульный debian RU frugal
Отправлено: krasnyh от 07 Август 2022, 16:27:40
так как надо в новый initrd дописывать текущий функционал миниоси
UIRD - Unified Init Ram Disk system (https://github.com/neobht/uird#uird---unified-init-ram-disk-system)

Вот не понятно, что все так избегают готовых решений, тем более это русскоязычные авторы, написавшие продукт с нуля, можно сказать импортозамещение. :)
Что sfs предпочел писать свой initrd-raf2, что другие. А потом все удивляются, что нет никакой унификации - куча линукс-дистрибутивов, еще больше приложений выполняющих одни и те же функции... )
Название: Re: Re: MiniOS - модульный debian RU frugal
Отправлено: sfs от 08 Август 2022, 09:51:23
включение/отключение служб systemd, изменение пароля пользователя и рута, выбор под кем грузить систему (пользователь или рут), установку ключа ssh...
А разве это не сделать уже в загружаемой системе, т.е. после инитрд?
Как минимум дебажить будет проще и можно юзать любой инитрд.
Менять будем
В спорах с Дядей Шуриком мне не удалось пропихнуть систему сборки инитрд и юдев. Из за его упрямости, а не весомых аргументов. В МиниОс разрабы адекватнее

Рассматривали варианты :
liveboot - родной для дебиана. Есть persistence. Нужно добавить только многомодульность (а может и это есть - давно не юзал.)
dracut - по опыту нашего форума уже несколько раз выручал, когда rootaufs и porteus не вывозили
Есть во всех линуксах

UIRD - когда я озадачился идеей заморозки ФУЛЛ - его и хотел применить. Там это уже было.  Но тогда не было примеров и сам не разобрался, а авторы мне долго не отвечали. Мне не терпелось - в итоге rootaufs2
Можно пока перейти на UIRD (что я и сделал в своем варианте LF-minios)
А вообще я до сих пор считаю UIRD сложным и перегруженным. Без конкретных предъяв. Просто личные ощущения.
А совсем уж хорошо - как у меня в ПРАР - несколько инитрд - выбирай что хочешь. UIRD естественно присутствует с конфигами от соавтора
Название: Re: Re: MiniOS - модульный debian RU frugal
Отправлено: crims0n от 09 Август 2022, 11:37:48
Вот не понятно, что все так избегают готовых решений, тем более это русскоязычные авторы, написавшие продукт с нуля, можно сказать импортозамещение.
Любое готовое решение плохо тем, что оно неготовое)) Я не готов отказаться от того функционала, что уже есть в миниоси, так как использую его в работе (удобно же, когда система грузится в ОЗУ с учётными данными, отличными от стандартных).
Название: Re: Re: MiniOS - модульный debian RU frugal
Отправлено: crims0n от 09 Август 2022, 11:44:01
А разве это не сделать уже в загружаемой системе, т.е. после инитрд?
Как установить сервисы, которые должны выполняться на самом старте системы, в системе, которая уже грузится вовсю? Я пока не нашёл способ для этого. В любом случае, настройка системы из initrd намного надёжнее, чем вешать сервис, который может внезапно не отработать. Но я подумаю, как можно это реализовать.
Название: Re: Re: MiniOS - модульный debian RU frugal
Отправлено: sfs от 10 Август 2022, 10:34:44
Как установить сервисы, которые должны выполняться на самом старте системы, в системе, которая уже грузится вовсю?
Задача инитрд - собрать из модулей корень / и запустить в нем systemd. Все остальное делать сервисами системд. Такое дебажится стандартными средствами. Если это в инитрд - надо писать какиме-то свои логи и т.п.
В любом случае, настройка системы из initrd намного надёжнее, чем вешать сервис, который может внезапно не отработать
Если скрипт кривой - одинаково криво отработает везде и наоборот
Модули собирались относительно 04-gui-base, что позволяет их использовать без модулей с xfce.
и собрать модули других ДЕ, не сломав зависимости модули софта
Название: Re: Критика initrd slax-minios. Предложения по улучшению
Отправлено: crims0n от 13 Август 2022, 05:14:20
Задача инитрд - собрать из модулей корень / и запустить в нем systemd. Все остальное делать сервисами системд. Такое дебажится стандартными средствами. Если это в инитрд - надо писать какиме-то свои логи и т.п.
Не только. initrd выполняет подготовку перед переключением корня. В случае миниоси, невозможно без дополнительного кода в initrd указать, какие сервисы systemd должны стартовать в системе, которая грузится в чистом режиме или в ОЗУ. Со старыми подсистемами инициализации было проще, можно было встроить подобный функционал непосредственно в главный скрипт загрузки системы. Помимо этого, в миниоси issue.net динамический. Зависит от того, что скрипт читает в файле конфигурации и настроек, указанных в конфиге на флешке, либо в /proc/cmdline. Теоретически, можно этот функционал переложить на начальные стадии загрузки, но вот указания на запуск определённых сервисов в другом сервисе указать не получится, либо это потребует редакции оригинальных сервисов, что трудоёмко и сломается при обновлении пакетов.
Название: Re: Критика initrd slax-minios. Предложения по улучшению
Отправлено: betcher от 13 Август 2022, 08:16:15
Сложность uird это цена за универсальность. По этому лоад, нолоад это не прибитые гвоздями имена папок, а фильтры. По этому все, что монтируется может быть источником для поиска слоев, по этому слой это не конкретно сквош,  а также как с источниками - все что монтируется.У нас нет управления сервисами системд, но есть обработка  ини, где можно делать вообще что угодно до старта системд.
Такой подход позвлляет с уирд делать вещи, которые не были запланированы просто играя параметрами. Так я впервые загрузил уирдом обычную установленную на диск росу, просто параметры подобрал и все. Вчера с Ильфатом занимались PXE загрузкой, записал в uird.from источник с nfs и все. Ничего больше не нужно.
Уирд дает сразу несколько способов сохранений, вообще без дополнительного кода в системе. В том числе toxzm где можно хоть для каждого файла указать нужно ли его сохранять и в какой модуль.
Как все это можно сделать просто? Впрочем.юзеру ОС знать этого не нужно. При сборке уирд записываете туда нужный конфиг и ваша ось грузится вообще без параметров в cmdline ядра.
Название: Re: Критика initrd slax-minios. Предложения по улучшению
Отправлено: sfs от 13 Август 2022, 10:55:04
невозможно без дополнительного кода в initrd указать, какие сервисы systemd должны стартовать в системе
Написать скрипт, который читает  /proc/cmdline и обрабатывает параметры из него и делает systemctl enable\disable. Запускать его в самом начале системд
сломается при обновлении пакетов
Для подобного у меня есть модуль исправлений 089, выше которого только сохраненка
При сборке уирд записываете туда нужный конфиг и ваша ось грузится вообще без параметров в cmdline ядра.
Что хорошо продемотнстрировано вашими прменами в исо прар. Причем если не нравится систаксис параметров - есть даже алиасы. Т.е. можно сделать упрощенную обвязку с имитацией привычного юзерам параметров загрузки
Название: Re: Критика initrd slax-minios. Предложения по улучшению
Отправлено: crims0n от 16 Август 2022, 10:25:37
Написать скрипт, который читает  /proc/cmdline и обрабатывает параметры из него и делает systemctl enable\disable. Запускать его в самом начале системд
Теория или практика? У меня на практике такое провернуть не вышло, не запускаются сервисы, назначенные в автозагрузку в процессе загрузки.
Название: Re: Критика initrd slax-minios. Предложения по улучшению
Отправлено: gumanzoy от 16 Август 2022, 11:18:55
У меня на практике такое провернуть не вышло, не запускаются сервисы, назначенные в автозагрузку в процессе загрузки.
Может быть нужно добавить вызов systemctl daemon-reload ?
Название: Re: Критика initrd slax-minios. Предложения по улучшению
Отправлено: betcher от 16 Август 2022, 13:09:01
Не пробовал в ини для UIRD писать юниты. В магос скрипты с юнитами лежат в 88-magos.xzm  и только запускаются UIRD.
Hо по идее что-то вроде такого должно работать независимо от ОС:

[/usr/lib/systemd/system/my.service]
+[Unit]
+Description=my service
+[Service]
+Type=OneShot
+ExecStart=/usr/bin/my-daemon

[/tmp/systemd.sh]a+x [chroot . ]
#!/bin/bash
systemctl enable my.service

Если не сработает с systemctl, то ссылку создать точно можно.

Название: Re: Критика initrd slax-minios. Предложения по улучшению
Отправлено: sfs от 18 Август 2022, 09:45:04
добавить вызов systemctl daemon-reload ?
Посмотрел в prar - у меня самодельного  daemon-reload нет в systemd