Форум проекта PuppyRus Linux
Разработки проекта PuppyRus => Разработка PFS и Initrd => Initrd UIRD => Тема начата: sfs от 14 Февраль 2021, 17:46:15
-
Читаю доку
uird.load[ +]= - фильтр для модулей/директорий, которые необходимо подключить на этапе загрузки
Не нашел, где написано , что "+" означает "добавить к параметру uird.load из текстового конфига
Без + будет "вместо"
[] - значит что параметр опциональный
100 пудов юзера так и вкатят uird.load[ +]=
[ +] - c пробелом написал, т.к. без - движок форума понимает, как управляющий символ
https://github.com/neobht/uird/blob/master/initrd/usr/share/uird.help/uird.load.help
Не нашел примеров для модулей
Если в porteus скелете (/base /modules /optional , т.е. с конфигом lfa) надо дополнительно загрузить /optional/xfce.pfs
uird.load+=/optional/xfce.pfs ?
или можно uird.load+=xfce.pfs или uird.load+=xfc ?
С uird.noload аналогично или сложнее?
uird.noload+=/modulesl/ovs.pfs
-
+= это конструкция чтоб добавить дополнительные значения к тем что прописаны в указанном uird.basecfg (или дефолтном) конфиге. Если без "+", то параметры будут заменены. Как нужно было написать?
По второму вопросу. Uird.load это маска, должны все три варианта сработать. С нолоад - аналогично.
-
Как нужно было написать?
Нашел * uird.параметр+=значение - добавить значение к списку значений по умолчанию
Вы выше лучше объяснили. Может дописать, чтобы ну совсем всем было понятно
* нужны? Лишняя путаница...
должны все три варианта сработать.
Добавить бы примеров в *help. Хотя бы этих
Везде бы чем больше примеров, тем лучше
-
По хорошему придумать бы чтобы хелпы были в вики и добавлялись бы прямо оттуда в гит. Тяжело отслеживать все изменения и писать в хелпы. Тем более на двух языках и побольшому счету в одного.
-
https://github.com/neobht/uird/blob/master/initrd/usr/share/uird.help/uird.load.help найти проблемы не составило, но там мало примеров
в одного
Кстати neobht : Последняя активность: 19 Апрель 2020 Давно не видно у нас. Занят чем-то другим?
?
-
Антон никуда не пропал. Заглядывает, отвечает если спросить. Смотрит за гит, релиз вот на днях оформил. Но коммитит мало, может интерес пропал или просто идей нет.
-
uird.load+=xfc без путя не сделает двойное монтирование, если в /modules/xfce-power.pfs , например , есть - который уже грузится со всеми модулями из /modules ?
-
Гм. Не готов ответить. Надо проверять.
-
может интерес пропал или просто идей нет.
Бесплатная идея.
Одна версия uird для разработчиков, назовем ее uird-git, где будет как сейчас - компиляция busybox, dracout и все последние навинки.
И обычный uird привязанный к версиям бинарных пакетов busybox и dracout. Можно сказать - замороженный, но большинству юзеров этого функционала достаточно. И по итогу упрощение для конечного пользователя.
Вот прям вчера этим занимался. Думаю, что это вредно и просто раскладывает грабли по полю. Но вопрос возникает всякий раз как заходит речь об опакечивание mkuird. Такая возможность будет.
-
привязанный к версиям бинарных пакетов busybox и dracout
Как минимум busybox при той же версии можно очень разнообразно скомпилить , что и есть в разных дистрах
Когда опакечивали для арча - спецом положили usr/lib/uird/busybox/busybox - чтобы никому не мешал
и %CONFLICTS% dracut прописали
это вредно и просто раскладывает грабли
поддерживаю. И размер маленький - не критично
-
Как минимум busybox при той же версии можно очень разнообразно скомпилить , что и есть в разных дистрах
Да. Все так. И с дракутом тоже не гладко. Мы обновляем срез где-то раз в год и почти всегда приходится что-то подправлять.
Сделаю возможность указывать бинарь бизибокса и скрипт дракута в конфиге, а дальше пусть сами решают. По умолчанию будет как сейчас.
-
Сделаю возможность указывать бинарь бизибокса и скрипт дракута в конфиге, а дальше пусть сами решают.
Вообще-то мой спич был к neobht, там же не просто положить бинарники. Требуется перетряхнуть проект, чтобы с определенными бинарными версиями busybox и dracout гарантированно собирался uird. Без ошибок.
А то что сейчас он не соберется, я в курсе. Где-то на форуме есть мое сообщение о неудачной попытке, со скринами.
-
Требуется перетряхнуть проект, чтобы с определенными бинарными версиями busybox и dracout гарантированно собирался uird. Без ошибок.
То что он соберется еще ничего не гарантирует. Бизибокс с дефолтным кофигом это более 380 команд, и выхлоп каждой из них, а так же набор доступных ключей может отличаться от "большого" прототипа. Как такое отследить?
-
Да, я неправильно выразился. Uird собирался с бинарником busybox, но при запуске системы вылезала ошибка и загрузка прерывалась.
-
Да, я неправильно выразился. Uird собирался с бинарником busybox, но при запуске системы вылезала ошибка и загрузка прерывалась.
Я именно об этом. Как такое отследить? Потому и тащим свой вариант бизибокса. Он отличается от дистрибутивных тем, что работа с ним проверена. Вот и все.
-
Мое старое сообщение, и скрин выше с ошибкой:
Правда я там не собирал busybox, а просто установил через pacman и перенес в uird/busybox. Может повлияло.
-
Еще одна моя старая бесплатная идея: )
2betcher, я бы предложил упрощенную версию сборки uird.
Например,
1. В репах MagOS выкладывать uird.magos.cpio.xz отдельно каждый месяц.
2. Понадобится незамысловатый скрипт пересборки готового uird.magos на другое ядро, типа
./mkrebuild uird.magos.cpio.xz -k 57manjaro -m "путь к модулям ядра 57manjaro"
3. Останется в menu.lst указать uird.basecfg=prar1912
На мой взгляд здесь можно будет обойтись без сборки dracut и busybox, что очень сильно все упростит для неофитов. :)
-
Уирд и так выкладывается ежемесячно. Вместе со сборкой магос. Мне кажется я отвечал уже на этот вопрос.
-
Пункт 2? Я не осилю, да и никто здесь.
-
А зачем пересобирать? Второй инитрд с /lib/modules.
-
У донора все равно надо убирать директорию /lib/modules.
Так написали бы скрипт, чтобы качал текущий uird.magos.cpio.xz с репы, перепаковывал с удалением /lib/modules и собирал второй initrd с указанной директорией /lib/modules.
А я выступлю в качестве тестера. Не понимаю, зачем препятствовать идее максимально удобного и легко получаемого uird под любой линукс. :)
-
У донора все равно надо убирать директорию /lib/modules.
Зачем удалять? Добавляете модули для текущего ядра во втором уирд и все. Нечего скриптовать :)
-
Там разве полностью перекроется? Грубо говоря, если у донора 50 модулей ядра, а у второго initrd - 10. Разве не подгрузится разница от магос?
-
Модули ядра лежат в либ/модулез в подпапках по имени ядра. Ничего там не перекрывается.
-
Точно. А я то все думал, как у sfs работают два разных ядра 000-kernel в /base, с управлением из menu.lst. И не мешают друг другу.
Хотя там наверно через initrd прописан noload для неактивного ядра.
-
Второй инитрд с /lib/modules
С aufs работает, с overlay - нет.
-
Для второго инитрд разницы между оаерелеем и ауфс быть не должно.
-
С overlay цикличная загрузка.
UPD. Скрин.
-
А во втором инитрд что-то есть кроме модулей ядра?
-
Точно. А я то все думал, как у sfs работают два разных ядра 000-kernel в /base, с управлением из menu.lst. И не мешают друг другу.
Хотя там наверно через initrd прописан noload для неактивного ядра.
Какое к черту noload?
Активным должно быть ядро с которого загрузились
-
кроме модулей ядра?
Ничего кроме.
Легко проверить:
1. Если не ошибаюсь, prar20.08-x86_64-08.iso (https://forum.puppyrus.org/index.php?topic=19901.msg171247#msg171247) уже скачивался для тестов. Если удален, то вот и ссылка.
2. Кинуть содержимое iso на загрузочную флешку (gr4d)
3. Монтировать /prar2008/base/000-kernel-5.7.17-2-MANJARO.pfs и упаковать в initrd.xz папку /usr/lib/modules/, изменив ее на /lib/modules/
4. Полученный initrd.xz кинуть в /prar2008/boot и туда же крайний uird.magos.cpio.xz
5. Прописать при загрузке initrd /%d%/boot/uird.magos.cpio.xz /%d%/boot/initrd.xz
Но как я понимаю из предыдущего своего опыта, никому это не интересно. Не барское это дело. :)
-
Напомню:
С aufs работает, с overlay - нет.