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

Разработки проекта PuppyRus => Разработка PFS и Initrd => LF (linux frugal). => Тема начата: betcher от 21 Октябрь 2017, 07:45:48

Название: Сборка Initrd UIRD в PRA
Отправлено: betcher от 21 Октябрь 2017, 07:45:48
UIRD (http://forum.puppyrus.org/index.php?topic=16558.0;topicseen)
http://wiki.puppyrus.org/soft/uird

Собирал uird в prar1811 (http://forum.puppyrus.org/index.php?topic=20164.msg151566#msg151566)

Собрал uird для pra-roll-170808-xfce.iso. Полет нормальный. Грузится, changes и homes работают. Проверил. Чего еще смотреть?
http://files.magos-linux.ru/betcher/uird.pra-roll.cpio.xz

Свежий (https://mirror.yandex.ru/mirrors/magos/netlive/2016.64/MagOS/)
Распаковать:
binwalk-p-2.1.1_any-sf01.pfs (ftp://ftp.yandex.ru/puppyrus/puppyrus-a64/pfs-portable/binwalk-p-2.1.1_any-sf01.pfs)
Код
#!/bin/sh
 offset=$(binwalk -y xz "$1" | awk '$3 ~ /xz/ { print $1; exit }')
 dd if="$1" bs=$offset skip=1 | xz -dc | cpio -id --no-absolute-filenames
Для использования в арче (пра) - удалите /lib/firmware и /lib/modules и создайте симлинки  /usr/lib/firmware /usr/lib/modules


Инструкция по сборке отличается совсем немного. На всякий случай вот:
доустанавливаем пакманом:
git
make
pkg-config
kmod
gcc
glibc
linux-api-headers
busybox (если загружено с уирд, то бизибокс не нужен)

git clone --recursive https://github.com/neobht/uird.git
cd uird
./make_dracut.sh
cd dracut
make install
cd ..

Далее нужен конфиг, они лежат в /uird/configs/uird_configs/
для pra64 конфиг есть, для ролл пока нет по этому
cp pra64 pra-roll
и заменяем внутри все "pra64" на "prar", остальное по желанию :)

Собираем:
./mkuird pra-roll
В стандартном случае загрузит без параметров (без uird параметров, остальные нужны наверное)

З.Ы, Что нужно проверить?
ЗЗЫ Не нашел sync2layer, pfs-utils не те?
ЗЗЗЫ Не хочет вставать загрузчик в Vbox. Запустить скриптр должно быть достаточно? Спрашивает диск, пробовал и sda и sda1 - не грузится зараза.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 21 Октябрь 2017, 08:29:14
доустанавливаем пакманом:
git
Специфика ПРА: подключаем DEVX (http://wiki.puppyrus.org/puppyrus/pra?&#%D0%BA%D0%BE%D0%BC%D0%BF%D0%B8%D0%BB%D1%8F%D1%86%D0%B8%D1%8F)

Спасибо+ Буду переносить в вики (http://wiki.puppyrus.org/soft/uird)

busybox
Какой нужен ббокс? В арче 2 : https://www.archlinux.org/packages/?sort=&q=busybox&maintainer=&flagged=
если загружено с уирд, то бизибокс не нужен
Т.е. скрипт как-то догадается и вытащит из инитрд...?

для pra64 конфиг есть, для ролл пока нет по этому
А разве тут есть разница для разным пра... или с другими линуксами...
остальное по желанию
А вот тут бы подробнее насписать
В идеале разделить параметры на группы: сеть и т.п.

Не нашел sync2layer,
/usr/local/bin
pfs-utils не те?
Те. Свежак из гит
Не хочет вставать загрузчик в Vbox.
Да. Есть проблема в 64 пра (http://forum.puppyrus.org/index.php?topic=20128.0)

Что нужно проверить?
pfsunload подключенного (и конечно не занятого) uird-ом модуля
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 21 Октябрь 2017, 08:55:49
при сборке ищет бизибокс в /usr/bin, а его там нет похоже. Если установит все проходит нормально.  В uird есть параметр, чтоб копировать файлы из uird  в систему при загрузке. Для  пра  вписал ьуда бизибокс.
Разница в конфиге минимальна, просто чтоб не указывать uird.from=/prar
sync2layer что-то не нашелся. Может сам протупил, перепроверю.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 21 Октябрь 2017, 09:06:00
при сборке ищет бизибокс в /usr/bin, а его там нет похоже
нет - поэтому и вопрос - какой надо ббокс. Вроде работает только с Вашим
В uird есть параметр, чтоб копировать файлы из uird  в систему при загрузке.
Этот костыль нужен только для ПРА-не-roll
sync2layer что-то не нашелся.
В модуле 089-zz-pfs-utils-cli-170502-sf09.pfs

В идеале бы закончить тему PKGBUILD в AUR и пакетами в репе пра
PKGBUILD Почти сделал. В AUR никогда не размещал
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 21 Октябрь 2017, 09:12:44
тот бизибокс, что ставится пакманом - подходит. Костыль можно и убрать, но тогда для сборки нужно будет снова ставить бизибокс в /usr/bin.
По AUR я вряд ли чем помогу, вообще не в теме.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 21 Октябрь 2017, 09:22:43
тот бизибокс, что ставится пакманом - подходит
Какой из двух?
для сборки нужно будет снова ставить бизибокс в /usr/bin.
Не вижу проблемы - прописать в зависимости пакета
По AUR я вряд ли чем помогу, вообще не в теме.
Обозначил свои планы по этой теме
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 21 Октябрь 2017, 09:59:18
Я сейчас не могу сказать который. Можете посмотреть в моем уирд или загрузить с ним и посмотреть в /usr/bin.
packman -S busybox - поставил подходящий :)
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 21 Октябрь 2017, 20:01:29
pfsunload подключенного (и конечно не занятого) uird-ом модуля
Отключает.  Запускал его циклом по каталогу /memory/bundles, из 23 модулей осталось 14, остальные отключил.
BusyBox v1.27.1
sync2layer на месте и даже работает, не пойму как я его потерял :)
Что еще?
Название: Сборка UIRD в PRAR
Отправлено: FelenAmvrosiy от 21 Ноябрь 2018, 16:49:46
Пытаюсь собрать UIRD по betcher'у
Но не получается из-за того что, modinfo не видит модули ядра из mkuird
Что делать?
Название: Re: Сборка UIRD в PRAR
Отправлено: sfs от 21 Ноябрь 2018, 17:08:31
Подробнее напишите что как делали или возьмите -pf ядро и готовый initrd-uird
pf ядру для загрузки с cd hdd flash не нужны модули ядра в инитрд. Нужное вкомпилено монолитно
Название: Re: Сборка UIRD в PRAR
Отправлено: FelenAmvrosiy от 21 Ноябрь 2018, 19:48:12
Я делал по спец.теме betcher'a где он все подробно описывал, но mkuird при сборке запускал modinfo, который не находил нужных модулей
Название: Re: Сборка UIRD в PRAR
Отправлено: sfs от 22 Ноябрь 2018, 09:17:01
Я делал по спец.теме betcher'a
ссылка ?
mkuird при сборке запускал modinfo, который не находил нужных модулей
скрин?
Название: Re: Сборка UIRD в PRAR
Отправлено: Ильфат от 22 Ноябрь 2018, 10:15:13
Пытаюсь собрать UIRD по betcher'у
Но не получается из-за того что, modinfo не видит модули ядра из mkuird
Что делать?
Если вы имеете ввиду что-то вроде этого:
Код
modinfo: ERROR: Module ext3 not found.
modinfo: ERROR: Module cbc not found.
modinfo: ERROR: Module aes-generic not found.
modinfo: ERROR: Module aes-i586 not found.
modinfo: ERROR: Module ahci not found.
modinfo: ERROR: Module sd_mod not found.
modinfo: ERROR: Module scsi_mod not found.
modinfo: ERROR: Module jbd not found.
modinfo: ERROR: Module jbd2 not found.
modinfo: ERROR: Module evdev not found.
То это нормально. Эти модули уже в ядре, поэтому они отсутствуют в виде отдельных модулей, отсюда и ошибка.
Название: Re: Сборка UIRD в PRAR
Отправлено: FelenAmvrosiy от 22 Ноябрь 2018, 15:37:18
И как это пофиксить?
Название: Re: Сборка UIRD в PRAR
Отправлено: sfs от 22 Ноябрь 2018, 15:50:21
это нормально
Название: Re: Сборка UIRD в PRAR
Отправлено: sfs от 03 Декабрь 2018, 13:53:03
Загрузил PRAR чтоб собрать uird
Получилось? Выложите... В идеале с пошаговой инструкцией
В итоге по совету betcher'a подложил уирду бинарник бизибокса из системы
Зачем собирать? Надо было просто сравнить его модули
пришлось линковать /usr/lib/modules/4.19 в /lib/modules/4.19.
В дистре - да, а в инитрд зачем?
Название: Re: Сборка UIRD в PRAR
Отправлено: Ильфат от 03 Декабрь 2018, 14:10:48
В идеале с пошаговой инструкцией
Так по инструкции с этого форума и собирал :) Конфиг только магосовский использовался.
Получился 17 мегабайт, в МагОС родной почти 26 мб. Загрузившись на вашем ядре в МагОС собрал еще раз, он получился уже 32 мб. Вот этот момент я вообще не понял )) То что в PRAR он собрался 17 мб понятно, но почему он в МагОС собрался большим размером чем сам магосовский мне не понятно.
Зачем собирать?
Сейчас для сборки уирда бизибокс тоже нужно собирать, так как с системными есть проблемы. А так у всех один и тот же бизибокс получается. В случае проблем проще их находить и исправлять.
В дистре - да, а в инитрд зачем?
Я видимо не уточнил.. Линковал в дистре. Ваш модуль 000-kernel.pfs тоже подключал, но там модули лежат в другом месте, поэтому пришлось создавать линки.
Название: Re: Сборка UIRD в PRAR
Отправлено: betcher от 03 Декабрь 2018, 14:21:30
Загрузившись на вашем ядре в МагОС собрал еще раз, он получился уже 32 мб. Вот этот момент я вообще не понял ))
Думаю причина таже - ядрерные модули. Меньше вкомпилено в ядро - больше попадет в uird.
Цитата: sfs от Сегодня в 13:53:03

    Зачем собирать?

Сейчас для сборки уирда бизибокс тоже нужно собирать, так как с системными есть проблемы. А так у всех один и тот же бизибокс получается. В случае проблем проще их находить и исправлять.
Все верно, сталкивались, с тем что с родными бизибоксами что-то да не работало. Господа дистроклепатели любят что нибудь понастраивать, нам ли не знать :)

Если правильно понял, вся проблема в том, что не собрался бизибокс. Если подходит от пра можно использовать его.  Либо, что правильнее, разобраться чего не хватает для сборки.
Название: Re: Сборка UIRD в PRAR
Отправлено: sfs от 03 Декабрь 2018, 14:29:19
по инструкции с этого форума и собирал
Дайте ссылку
для сборки уирда бизибокс тоже нужно собирать
Ну так 1 раз , наверное, достаточно собрать - он везде подойдет
с родными бизибоксами что-то да не работало. Господа дистроклепатели любят что нибудь понастраивать,
Не знаю как в других дистрах, но в арче маленький bbox рассчитан на работу в составе archiso
Предявлять ему за uird не справедливо
И есть большой - он , наверное покатил бы
Если правильно понял, вся проблема в том, что не собрался бизибокс. Если подходит от пра можно использовать его.  Либо, что правильнее, разобраться чего не хватает для сборки.
Да. Готов поучаствовать если надо
Перл в пра отдельным модулем в DEVX. Возможно trim перестарался
Название: Re: Сборка UIRD в PRAR
Отправлено: Ильфат от 03 Декабрь 2018, 14:30:36
Меньше вкомпилено в ядро
Вообще ядро Манжаро по размеру больше Магосовского, может быть за счет свежести, код все-таки всем миром пишут, понаписали за 10 то релизов )) Наверное да, в ядре меньше модулей.
Либо, что правильнее, разобраться чего не хватает для сборки.
Надо узнать в каких пакетах в Арче находятся недостающие файлы, о которых я писал. В МагОС пакетный менеджер показал, что они у нас в Perl, что подтверждает Google. Может они просто не попали в PATH. Не сообразил find'ом пройтись.
Название: Re: Сборка UIRD в PRAR
Отправлено: sfs от 03 Декабрь 2018, 14:32:14
узнать в каких пакетах в Арче находятся недостающие файлы, о которых я писал
pkgfile файл
Название: Re: Сборка UIRD в PRAR
Отправлено: betcher от 03 Декабрь 2018, 14:34:25
Надо узнать в каких пакетах в Арче находятся недостающие файлы, о которых я писал. В МагОС пакетный менеджер показал, что они у нас в Perl, что подтверждает Google. Может они просто не попали в PATH. Не сообразил find'ом пройтись.
Самый прямой вариант это разобрать src пакет бизибокса от арча и посмотреть что там в зависимостях.
Ну так 1 раз , наверное, достаточно собрать - он везде подойдет
Да все верно. Также и с дракутом.
Название: Re: Сборка UIRD в PRAR
Отправлено: Ильфат от 03 Декабрь 2018, 14:35:57
Дайте ссылку
Сборка Initrd UIRD в PRA (http://forum.puppyrus.org/index.php?topic=20164.0)
pkgfile файл
Возьму на заметку, спасибо)
Название: Re: Сборка UIRD в PRAR
Отправлено: betcher от 03 Декабрь 2018, 14:41:46
Инструкция устаревшая. Сейчас немного не так.
По зависимостям  надо уточнить, скорее всего изменений для uird нет. Может что-то надо для бизибокса еще.
По сборке.
./make_dracut.sh
./make_busybox.sh
./mkuird pra64

Первые две команды выполняются один раз.
./mkuird при каждой сборке.
Название: Re: Сборка UIRD в PRAR
Отправлено: sfs от 03 Декабрь 2018, 14:45:01
разобрать src пакет бизибокса от арча и посмотреть что там в зависимостях.
У маленького (https://git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/mkinitcpio-busybox) glibc
Большой - похоже, статический (https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/busybox) на miusl
Возьму на заметку, спасибо)
Вот так и пересаживаются на арч-манджаро  :D
Тогда еще полезного (http://wiki.puppyrus.org/setups/pacman)
Сборка Initrd UIRD в PRA
Тогда объединю темы
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 03 Декабрь 2018, 14:49:29
А вообще - я перешел на модель - инитрд отдельно - модули ядра отдельно
Так проще. Просто грузим
Код
 initrd initrd1 initrd-kernel
Опять же удобно пробовать разные инитрд (uird rootaufs2)
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 03 Декабрь 2018, 14:54:39
А вообще - я перешел на модель - инитрд отдельно - модули ядра отдельно
Так проще. Просто грузим
UIrd тоже можно так собрать. Как пример посмотрите скрипты make_uird_*. Готового именно под такую задачу нет, но можно сделать чтоб один скрипт собирал uird_base, а второй uird_kernel_modules.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 03 Декабрь 2018, 15:07:22
можно сделать чтоб один скрипт собирал uird_base
Вот этот бы Вам и выкладывать, чтобы другие не собирали
Можно пересобрать обычный. Или , если размер и время загрузки не критичны, а ядро другое - не помешает (можно не пересобирать)
второй uird_kernel_modules.
А этот скрипт как-нибудь бы упростить (чтобы без дракут и пр.) , чтобы на входе - ядро с модулями,  на выходе инитрд2
И будет всем счастье

Выложите свежий проверенный uird... или ссылку на всегда свежий
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: Pro от 03 Декабрь 2018, 15:50:05
Раз busybox для initrd, то логичнее сказать ему чтобы man'ы не собирал, тогда perl не понадобится
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 03 Декабрь 2018, 15:51:14
Ну мы для пра не собираем. Не было такой задачи. А uird  для магос - в магос :)
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 03 Декабрь 2018, 16:51:52
мы для пра не собираем.
Кроме модулей ядра - чем он будет отличаться  ;)
uird  для магос - в магос
Можно где-то качнуть только свежий initrd без остального? В идеале - постоянно свежий
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 03 Декабрь 2018, 17:13:25
https://mirror.yandex.ru/mirrors/magos/netlive/2016.64/MagOS/
Здесь ядро и  uird  от магос, обновляется ежемесячно.
Но правильнее как мне кажется наладить сборку в пра с родным конфигом и дровами под ваши ядра.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 03 Декабрь 2018, 17:33:40
наладить сборку в пра с родным конфигом
Может быть имеет смысл собрать под монолитное ядро pf и без сети
И хорошо бы опакетить
В остальном оптимально так (http://forum.puppyrus.org/index.php?topic=20164.msg151301#msg151301)
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 03 Декабрь 2018, 17:58:53
Может быть имеет смысл собрать под монолитное ядро pf и без сети
То, что вкомпилено в ядро в uird не попадет. А в остальном открывайте ./mkuird и удаляйте все что считаете лишним.
По разделению на основу и драйвера с Антоном переговорю еще. Может рано наобещал :)
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: neobht от 03 Декабрь 2018, 18:11:34
по разделению: uird_minimal+uird_kernel - это и есть то, что делает слоеный initrd.

специально для pra создавал пару лет назад такое разделение.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 06 Декабрь 2018, 17:07:29
Выдрал (рецепт в шапке) нужное из родного МагОс initrfd
http://file.puppyrus.org/users/pra64/kernel/initrd-uird1811.xz
Гружу бутербродом с правильными модулями ядра по мануалу (http://wiki.puppyrus.org/soft/uird)

Full: uird.from=/dev/sda1 uird.ro=*0/dirname uird.load=dirname - запуск дистрибутива из каталога dirname на sda1
Почему-то грузится только в qs режиме ...

Frugal: uird.from=/prar1811 или uird.from=/prar1811
Модули в /prar1811/base - не находит. blkid видит cd , но почему, то не монтирует

Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 06 Декабрь 2018, 18:57:14
А с каким конфигом собран uird? Или вы наш взяли? Параметров в конфиге больше чем вы приводите, возможно в uird.ro  нет  pfs.
Инструкция по сборке слегка не правильная в шапке. Выше писал чего надо поменять.
Если нужен какой-то новый конфиг давайте добавлю.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 07 Декабрь 2018, 09:57:07
вы наш взяли?
да
в uird.ro  нет  pfs.
uird.ro=*0/dirname.*.pfs - так?

Главное что меня сейчас интересует в uird - ful c сохраненкой в папке на этом же разделе средствами aufs
У меня получилось только с overlayfs - соответственно без возможности горячего подключения
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: Ильфат от 07 Декабрь 2018, 10:46:13
возможно в uird.ro  нет  pfs
Есть pfs:
uird.ro=*.xzm;*.rom;*.rom.enc;*.pfs
запуск дистрибутива из каталога dirname на sda1
Чтоб из папки надо:
uird.ro=*layer-base/0
uird.load=*
uird.from=/dev/sda1/dirname
В UIRD есть каталог с конфигами, там посмотрите варианты.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 07 Декабрь 2018, 11:52:38
Для загрузки из папки оба варианта  выглядят правильными. То есть если внутри dirname корень линукс дистра, то должно грузиться. В обоих случаях.
Про pfs говорил для фругал. Но если хотите подключать модули слоями после dirname, то надо добавить в uird.ro через запятую *.pfs, а в uird.load  добавить папку с модулями. Если папка не на sda1,  то нужно добавить в uird.from второй источник.
Если точно опишите что и как должно быть подключено, навание папок и разделов где они лежат постараюсь сочинить конфиг.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 07 Декабрь 2018, 15:26:26
Если точно опишите что и как должно быть подключено, навание папок и разделов где они лежат постараюсь сочинить конфиг
/mnt/sda1/prar1811/prar1811 - корень / в папке.
/mnt/sda1/prar1811/changes - сохранение в папку средствами aufs
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 07 Декабрь 2018, 16:08:05
/mnt/sda1/prar1811/prar1811 - корень / в папке.
/mnt/sda1/prar1811/changes - сохранение в папку средствами aufs

Возможно проблемы были связаны с одинаковыми именами папок. Но попробую так. Параллельно подробно опишу.
Вариант номер Раз.
uird.from=/dev/sda1
      /memory/data/from/0 - это корень /sda1
      /memory/layer-base/0 - тоже корень /sda1
uird.ro=*prar1811/prar1811
      подключаем папку в режиме ro, то есть как модуль. Две папки из-за дублирования названий, чтоб первую не подключил
uird.load=prar1811
      Это чтоб в других папках не искал, можно и *

Вариант номер Два.
uird.from=/dev/sda1/prar1811
      /memory/data/from/0 - это корень /sda1
      /memory/layer-base/0 - это уже /dev/sda1/prar1811
uird.ro=*0/prar1811
      подключаем папку в режиме ro, то есть как модуль.
uird.load=*
      тут не соображу сработает ли prar1811


Это продолжение для обоих вариантов.

uird.mode=changes
      Включаем changes на диске
uird.changes=/dev/sda1/prar1811/changes
      Указываем где сохранять (можно и просто changes, должен найти)
      
uird.config="" - не искать конфиг
uird.ramsize=70% - размер tmpfs
uird.find_params=-maxdepth_3 - глубина поиска в источнике

Надеюсь ничего не напутал, если не получится выкладывайте как-то вашу конструкцию буду усебя пробовать.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 07 Декабрь 2018, 16:13:20
спасибо. Как опробую - отпишусь
А в целом - бутурбродная рагрузка - один инитрд с модулями + 2 варианта (uird + rootaifs2) получается хорошо. В арче инитрд с модулями можно арч-средствами собирать
Остальные - апдейтить только когда надо, а не при смене ядра
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 10 Декабрь 2018, 18:04:59
номер Раз - не пошел
2- норм. С сохраненкой тоже.
uird.changes=/dev/sda1/prar1811/changes - нужно заранее создать - не очень логично

uird.config="" - не искать конфиг
uird.ramsize=70% - размер tmpfs
uird.find_params=-maxdepth_3
это нужно указывать.... Не дефолты?

Спасибо+ Поправил вики
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 11 Декабрь 2018, 20:54:40
Собирал uird в 1811. Собралось норм. Зависимотсти теже из шапки дальше собираем дракут и бизибокс
./make_dracut.sh
./make_busybox.sh (этот ругается, но бинарник busybox собирает)
Дальше я менял бранч на свой свой экспериментальный git checkout mkuird2 (это не обязательно)
./mkuird pra64 (как самый близкий конфиг)
При сборке ругается на отсутствие нескольких бинарей. Из важных - rsync лучше установить, так что допишите в зависимости. Остальное фигня.

Пробовал грузить. Из уирд параметров добавлял только uird.from=/dev/sda1/prar1811 (так как в конфиге pra64)
Загрузка идет до иксов. Стрелка мыши по заставке шевелится и все. Но тут уже вам разбираться.
P.S. А не, по пкм меню вылазит. Openbox наверное.
https://yadi.sk/d/uZtLYCM4fdkIBA
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 11 Декабрь 2018, 21:18:18
Стрелка мыши по заставке шевелится и все. Но тут уже вам разбираться.
P.S. А не, по пкм меню вылазит. Openbox наверное.
1811 это конструктор, там много load=
Выделенное наверно не работает под uird? А значит и соответствующие модули не грузятся.
Цитата
title ▒▒ PRAR1811 LXQT FRUGAL.
set d=prar1811
set k=4.19-x86
find --set-root --ignore-floppies /%d%/boot/vmlinuz-%k%_64
set l=load=de-lxqt;lxqt-gtk2;030-qt;035-gtk2;upower;udisk;polk;polyb;connman-;connman_a;netsurf-gtk2;gpart;pulse;pavucont
set n=noload=de-ovs

kernel /%d%/boot/vmlinuz-%k%_64 root=LABEL=hybrid-iso dir=%d% rw quiet %l% %n% 
initrd /%d%/boot/initrd-sf03.cpio.xz /%d%/boot/initrd-%k%_64-fallback+.cpio.xz
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 11 Декабрь 2018, 21:34:00
 Наверно правильный menu.lst будет такой?
Цитата
title ▒▒ PRAR1811 LXQT FRUGAL.
find --set-root --ignore-floppies /prar1811/boot/vmlinuz-4.19-x86_64
kernel /prar1811/boot/vmlinuz-4.19-x86_64 root=LABEL=hybrid-iso rw quiet uird.from=/dev/sda1/prar1811 uird.load=de-lxqt;lxqt-gtk2;030-qt;035-gtk2;upower;udisk;polk;polyb;connman-;connman_a;netsurf-gtk2;gpart;pulse;pavucont uird.noload=de-ovs
initrd /prar1811/boot/uird.pra64.cpio.xz /prar1811/boot/initrd-4.19-x86_64-fallback+.cpio.xz
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 12 Декабрь 2018, 03:15:53
Жесть. И эти люди запрещали мне ковыряться в носу :))) Это у uird то параметров много? :))

В магос совсем другая логика по модулям.
в MagOS/base - лежат все базовые модули
в MagOS-Data/modules - пользовательские модули которые надо подключить при загрузке
в MagOS-Data/optional - пользовательские модули которые НЕ надо подключить при загрузке
Т.е. достаточно подключить все из MagOS/base, а в остальных папках - пусто. И ситуации когда модуль с lxqt помешает загрузке например Plasma у нас не бывает.
А у вас в pra ну ооооочень не очевидно что нужно подгрузить, а что мешать будет.
 
Ну да ладно. Почему опенбокс понятно. Теперь чего делать. uird.load и uird.noload работают не так как  load и noload от либлинукслайв. Наверное проще:
uird.load+=optional это добавит все модули из optional
uird.noload=список,чего,не,надо,из,optional,modules
Или использовать конструкции типа uird.load+=optional.*lxqt - загрузит все из optional, где в названии есть lxqt

Файл перезалью, сорри, фиг знает как так вышло.

https://yadi.sk/d/uZtLYCM4fdkIBA

P.S. Конструкцию root= из cmdline обязательно удалить надо. Дракут ее по своему понимает :)
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: knn от 12 Декабрь 2018, 05:55:06
uird.load+=optional.*lxqt
  Какой "синтаксис перечислений" значений к.-либо параметра(~ов) (/если "перечисление" возможно)? --Пр.: в ПРА - ...;...;...;...
 --т.е. как будет выглядеть -  uird.load+=optional.*lxqt;*any1;*any2   ?
 
   Интерес - "прикидка" по использованию переменных.

p.s.
Какой "синтаксис перечислений" значений к.-либо параметра(~ов)
-- и одинаков ли "синтаксис"(/"пунктуация)" ?     (-- применительно к различным параметрам).
---------------
ковыряться в носу
:) может иногда и помогает.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 12 Декабрь 2018, 07:16:26
Перечисления через запятую или точку с запятой. Во всех местах где можно перечислять такой синтаксис.
Груб2 точку с запятой понимает как конец строки, то есть там только запятая.
+= добавит параметры к тем, что есть в конфиге
= заменит параметры из конфига
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 12 Декабрь 2018, 10:37:52
Переходить в мою веру (чем проще, тем надёжнее)
Идея хорошая, но не подкрепленная дистрибутивом

Про остальное продолжил здесь (http://forum.puppyrus.org/index.php?topic=21287.msg151580#msg151580)
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 12 Декабрь 2018, 10:46:27
/mnt/sda1/prar1811/prar1811 - корень / в папке.
/mnt/sda1/prar1811/changes  - сохранение в папку средствами aufs
Эту задачу решил совсем простым отдельным хуком. По сути одна главная строчка и один параметр aufs=changes (в папку prar1811-changes) . Если сохраненка в ram : aufs
Код
mount -t aufs -o br=/mnt/sda1/prar1811-changes:/mnt/sda1/prar1811 aufs /new_root
Изначально пытался впилить это в rootaufs (заточенный под frugal) - получалось сложно
Наверное это и в uird сложно по этой же причине - не надо мешать в кучу фругал и фул (имею ввиду самый главный модуль  распакован или в сквоше)
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 12 Декабрь 2018, 11:43:38
Конечно если прибить гвоздями название папок и их расположение, то будет проще. Вот только элементарные задачи к примеру иметь несколько changes для разных машин и уже - упс. Подключить модуль не из optional, а к примеру из lxqt_modules и опять проблема. А с uird  любые имена на любых дисках,  да еще и по сети. Uird без особых проблем загрузит и пра и прар и магос и обычные  линуксы и из корня и из папки и из исо. Естественно это сложнее и параметров больше.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 12 Декабрь 2018, 11:55:23
несколько changes
aufs=несколько_разных_папок
для разных машин
Не очень понял - это наверное что-то корпоративно - сетевое
Подключить модуль не из optional, а к примеру из lxqt_modules
http://wiki.puppyrus.org/soft/porteus-initrd#extramod
не прижилось
Uird без особых проблем загрузит и пра и прар и магос и обычные  линуксы и из корня и из папки и из исо. Естественно это сложнее и параметров больше.
Да. Но дома это не нужно
Хотя
добавить 1 параметр uird.basecfg=pra64 и имеем porteus?
Может скрыть от юзера сложности
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: DdShurick от 12 Декабрь 2018, 12:20:53
Не очень понял - это наверное что-то корпоративно - сетевое
Элементарно. Загружаемся с одной флешки на нескольких разных машинах, для каждой свой save. Это было реализовано в классическом Puppy. Но надо ли? Есть другой путь, см. autoNet например.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 12 Декабрь 2018, 13:21:59
Может скрыть от юзера сложности
Конечно.  Я вам это уже давным-давно донести пытаюсь.
В стандартном случае, без сохранений в cmdline вообще пусто будет.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 12 Декабрь 2018, 16:05:44
 А debug как реализован в uird? Нашел только uird.break=STAGE, но что-то не работает. Или работает, но не так как я привык в initrd - остановка загрузки и продолжение после нажатия Ctrl-D. 

upd. Нашел как правильно https://github.com/neobht/uird/blob/master/initrd/usr/share/uird.help/ru_RU.UTF-8/uird.break.help
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 12 Декабрь 2018, 16:39:54
debug вроде тоже работает, только он и на ядро действует. Лог - /var/log/uird.dbg.log, копируется в систему после работы uird'а. Там довольно подробно, но разобраться бывает не просто :)
Еще  есть qs и qse параметры. Если уирд собран с mc, в 
qs вообще удобно. С qse  уже можно чрутнутся и системные утилиты запускать, тот же mc например.
Короче дебаг сущее удовольствие :)
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 12 Декабрь 2018, 16:56:18
debug вроде тоже работает
Да, debug работает. Хотел увидеть загружаемые модули, debug их показывает (под uird), но там много доп. информации, поэтому  пролистывает вверх.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 12 Декабрь 2018, 17:02:44
 По поводу загрузки с uird.pra64.cpio.xz. Оригинальный конфиг грузит LXQT:
Код
title ▒▒ PRAR1811 LXQT FRUGAL. Без загрузки в RAM и сохранения.
set d=prar1811
set k=4.19-x86
find --set-root --ignore-floppies /%d%/boot/vmlinuz-%k%_64
set l=load=de-lxqt;lxqt-gtk2;030-qt;035-gtk2;upower;udisk;polk;polyb;connman-;connman_a;netsurf-gtk2;gpart;pulse;pavucont
set n=noload=de-ovs
kernel /%d%/boot/vmlinuz-%k%_64 root=/dev/sda3 dir=%d% rw quiet %l% %n% 
initrd /%d%/boot/initrd-sf03.cpio.xz /%d%/boot/initrd-%k%_64-fallback+.cpio.xz

 С uird ошибка на стадии загрузки пользователя (загрузка с sda3; menu.lst на sda1). Модули вроде все подгрузились:
Цитата
user not known to the underlying authentication module
Цитата
title ▒▒ PRAR1811 LXQT FRUGAL.
find --set-root --ignore-floppies /prar1811/boot/vmlinuz-4.19-x86_64
kernel /prar1811/boot/vmlinuz-4.19-x86_64 quiet rw uird.from=/dev/sda3/prar1811 uird.load+=optional.*de-lxqt;lxqt-gtk2;030-qt;035-gtk2;upower;udisk;polk;polyb;connman-;connman_a;netsurf-gtk2;gpart;pulse;pavucont uird.noload=de-ovs
initrd /prar1811/boot/uird.pra64.cpio.xz /prar1811/boot/initrd-4.19-x86_64-fallback+.cpio.xz
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 12 Декабрь 2018, 17:20:01
А что дает второй инитрд? Он нужен?
По списку молулей не подскажу, сравните список в режиме qse например. Есть еще вариант, что  uird подключит модули не в том порядке что ваш инитрд. Если сами модули имеют пересекающиеся файлы это может быть критично. Если у пра есть еще какие-то тонкости при загрузке лучше допросить Sfs :)  Uird  свою часть работы делает ауфс из модулей собирает, загрузку иниту передает.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 12 Декабрь 2018, 17:39:36
Есть еще вариант, что  uird подключит модули не в том порядке что ваш инитрд
Нет, здесь нормально, важные модули с цифрами и грузятся в нужном порядке (то что я успел увидеть при загрузке):
Цитата
020-polkit-1811-sf03.pfs
020-upower-1811-sf02.pfs
030-pulseaudio-1811-sf02.pfs
030-udisks2-1811-sf02.pfs
030-qt5-1811-sf02.pfs
035-gtk2-1811-sf02.pfs
040-de-lxqt-1801-sf08.pfs
089-de-lxqt-numix-1811-sf07.pfs

А что дает второй инитрд? Он нужен?
Ну, это же система заточенная под full. Во втором initrd наверно важные параметры. Но и с одним uird.pra64.cpio.xz та же ошибка.

 Я подумал, что не хватает еще каких-то uird параметров.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 12 Декабрь 2018, 17:45:37
Я подумал, что не хватает еще каких-то uird параметров.
Если все модули подключены, ауфс из них собран и загрузка передана иниту, то задача инитрд выполнена. Нужно разбираться в составе модулей наверное, в последовательности их подключения и наверное все. Разве что ваш инитрд делает что-то еще, о чем я не знаю. Или может быть какой то из параметров в cmdline нужен не ядру или инитрд, а системе и тогда его нужно оставить. Лучше подождать SFS я слишкам мало разбтраюсь в устройстве ПРА.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 12 Декабрь 2018, 18:23:10
в последовательности их подключения
Сейчас раскидал все модули из параметров uird.load+=  uird.noload=  по папкам /base, /modules. LXQT загрузился.
Цитата
[title ▒▒ PRAR1811 LXQT FRUGAL.
find --set-root --ignore-floppies /prar1811/boot/vmlinuz-4.19-x86_64
kernel /prar1811/boot/vmlinuz-4.19-x86_64 quiet rw uird.from=/dev/sda3/prar1811
initrd /prar1811/boot/uird.pra64.cpio.xz /prar1811/boot/initrd-4.19-x86_64-fallback+.cpio.xz

Получается, что 'плохой uird' :) не выстраивает модули в нужном порядке в отличие от initrd ( load= ).
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 12 Декабрь 2018, 18:33:21
В магос можно перевернуть всю сборку и загрузиться. Единственный файл который дублируется в двух модулях  это файл который отвечает за дефолтный ДЕ. То есть при перевороте модулей и без параметра desktop= загрузится lxqt вместо kde. Если в ваших модулях повторяются файлы uird ли виноват? :)
Прямого способа задать нужную последовательность нет. Модули прошедшие фильтры load,noload,ro подключаются по алфавиту. Надо подумать что можно тут сделать.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 12 Декабрь 2018, 18:39:06
Модули прошедшие фильтры load,noload,ro подключаются по алфавиту.
Т.е. Не учитывается 030- 040- 089- ? Хотя по алфавиту - модули с цифрами будут сверху.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 12 Декабрь 2018, 18:44:40
Модули прошедшие фильтры load,noload,ro подключаются по алфавиту.
Т.е. Не учитывается 030- 040- 089- ? Хотя по алфавиту - модули с цифрами будут сверху.
Учитывается конечно, но base по алфаыиту выше чем modules, а modules выше чем optional.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 12 Декабрь 2018, 18:46:35
Если в ваших модулях повторяются файлы uird ли виноват?
Наверно в magos тоже что-то повторяется иначе не было бы цифрового индекса?
Код
live@pra-roll ..1026/MagOS_2016.64_20181026/MagOS/base % ls
00-kernel.xzm   10-core.xzm      41-x-utilities.xzm   45-x-java.xzm
42-x-network.xzm     70-documentation.xzm
01-drivers.xzm  20-x-base.xzm    43-x-multimedia.xzm 
35-x-plasma.xzm  44-x-office.xzm      88-magos.xzm

читывается конечно, но base по алфавиту выше чем modules, а modules выше чем optional.
Ясно, а initrd наверно формирует общий список, после обработки всех фильтров (load=; noload=).

Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 12 Декабрь 2018, 18:57:21
Наверно в magos тоже что-то повторяется иначе не было бы цифрового индекса?
Цифровой индекс именно для этого, Вы правы. Но файлы реально не повторяются. Я склеивал mkpfs'ом  с сохрананием дубликатов и там только один файл дублируется.
Думаю, что когда у SFS все устаканится с модулями проблема сама собой исчезнет.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 12 Декабрь 2018, 23:14:15
Я склеивал mkpfs'ом  с сохрананием дубликатов и там только один файл дублируется.
Стало интересно, а как у нас.

Сейчас раскидал все модули из параметров uird.load+=  uird.noload=  по папкам /base, /modules. LXQT загрузился.
Склеил (mkpfs) все модули в /mnt/sda3/prar1811/base:
Код
root@pra-roll:base# mkpfs -m --save-duplicates /mnt/sda3/prar1811/base/ -o test.pfs
/mnt/bundles1/000-kernel-4.19.1-MANJARO.pfs
/mnt/bundles1/001-prar1811-sf04.pfs
/mnt/bundles1/020-polkit-1811-sf03.pfs
/mnt/bundles1/020-upower-1811-sf02.pfs
/mnt/bundles1/030-pulseaudio-1811-sf02.pfs
/mnt/bundles1/030-qt5-1811-sf02.pfs
/mnt/bundles1/030-udisks2-1811-sf02.pfs
/mnt/bundles1/035-gtk2-1811-sf02.pfs
/mnt/bundles1/040-de-lxqt-1801-sf08.pfs
/mnt/bundles1/070-pra-frugal-sf02.pfs
/mnt/bundles1/084-theme-numix-1811-sf07.pfs
/mnt/bundles1/089--pra-roll-filesystem-2018.11-26.pfs
/mnt/bundles1/089-de-lxqt-numix-1811-sf07.pfs
/mnt/bundles1/089-prar-upd-1811-sf01.pfs
save_duplicates enabled
/home/live/.config/autostart/numlock.desktop -- saved as unique for 089--pra-roll-filesystem-2018.11-26.pfs submodule
/home/live/.config/fontconfig/fonts.conf -- saved as unique for 089--pra-roll-filesystem-2018.11-26.pfs submodule
/home/live/.config/openbox/rc.xml -- saved as unique for 089--pra-roll-filesystem-2018.11-26.pfs submodule
/etc/systemd/system/mountall.service -- saved as unique for 070-pra-frugal-sf02.pfs submodule
/start.sh -- saved as unique for 030-udisks2-1811-sf02.pfs submodule
/etc/group -- saved as unique for 030-pulseaudio-1811-sf02.pfs submodule
/etc/gshadow -- saved as unique for 030-pulseaudio-1811-sf02.pfs submodule
/etc/passwd -- saved as unique for 030-pulseaudio-1811-sf02.pfs submodule
/etc/shadow -- saved as unique for 030-pulseaudio-1811-sf02.pfs submodule
/start.sh -- saved as unique for 030-pulseaudio-1811-sf02.pfs submodule
/etc/group -- saved as unique for 020-upower-1811-sf02.pfs submodule
/etc/gshadow -- saved as unique for 020-upower-1811-sf02.pfs submodule
/etc/passwd -- saved as unique for 020-upower-1811-sf02.pfs submodule
/etc/shadow -- saved as unique for 020-upower-1811-sf02.pfs submodule
/etc/group -- saved as unique for 020-polkit-1811-sf03.pfs submodule
/etc/group- -- saved as unique for 020-polkit-1811-sf03.pfs submodule
/etc/gshadow -- saved as unique for 020-polkit-1811-sf03.pfs submodule
/etc/gshadow- -- saved as unique for 020-polkit-1811-sf03.pfs submodule
/etc/passwd -- saved as unique for 020-polkit-1811-sf03.pfs submodule
/etc/passwd- -- saved as unique for 020-polkit-1811-sf03.pfs submodule
/etc/shadow -- saved as unique for 020-polkit-1811-sf03.pfs submodule
/etc/shadow- -- saved as unique for 020-polkit-1811-sf03.pfs submodule
/etc/group -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/group- -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/gshadow -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/gshadow- -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/mc/filehighlight.ini -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/mc/mc.ext -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/mc/mc.menu -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/pacman.conf -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/passwd -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/passwd- -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/shadow -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/shadow- -- saved as unique for 001-prar1811-sf04.pfs submodule
/etc/systemd/journald.conf -- saved as unique for 001-prar1811-sf04.pfs submodule
/usr/share/glib-2.0/schemas/gschemas.compiled -- saved as unique for 001-prar1811-sf04.pfs submodule
/usr/share/icons/hicolor/icon-theme.cache -- saved as unique for 001-prar1811-sf04.pfs submodule
/var/lib/pacman/local/libxkbcommon-0.8.2-1/desc -- saved as unique for 001-prar1811-sf04.pfs submodule
/var/log/pacman.log -- saved as unique for 001-prar1811-sf04.pfs submodule
/usr/bin/cryptsetup -- saved as unique for 000-kernel-4.19.1-MANJARO.pfs submodule
/usr/lib/initcpio/install/encrypt -- saved as unique for 000-kernel-4.19.1-MANJARO.pfs submodule
/usr/lib/initcpio/install/sd-encrypt -- saved as unique for 000-kernel-4.19.1-MANJARO.pfs submodule
/usr/lib/tmpfiles.d/cryptsetup.conf -- saved as unique for 000-kernel-4.19.1-MANJARO.pfs submodule
Parallel mksquashfs: Using 4 processors
Creating 4.0 filesystem on test.pfs, block size 524288.
[=====================================================================-] 39851/39851 100%

Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 12 Декабрь 2018, 23:16:41
 Не очень понимаю как это все интерпретировать, но частые повторы shadow, passwd, group, для меня как причина ошибки при загрузке prar1811 с uird (когда нарушен порядок модулей с цифровым индексом ):
С uird ошибка на стадии загрузки пользователя (загрузка с sda3; menu.lst на sda1).

 user not known to the underlying authentication module
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 13 Декабрь 2018, 06:33:51
Да. Вемьма вероятно,что дело именно в этих файлах. Но вот ума не дам как в уирд прикрутить заданную последовательность подключения. Сейчас все довольно просто, отфильтровали список и подключили. Единственно может реверс получится встроить не усложняя, но тут не поможет однако. Боюсь в данном случае решать придется со стороны ПРА.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 13 Декабрь 2018, 09:22:01
uird.load+=optional.*de-lxqt
В pra-porteus и rootaufs изменен порядок слоев AUFS загружаемых модулей. 08*.pfs 09*.pfs всегда в верхнем слое
Т.е. с uird надо , чтобы 08*.pfs 09*.pfs были в /base. По другому - только патчить uird
Если бороться за супер-универсальность, возможно было бы сделать вставной код, который меняет слои своим скриптом - типа конфига
что дает второй инитрд?
В первом - только модули используемого ядра. Во втором (сейчас в исо наоборот, но по слоям правильнее так ) сам инитрд
В итоге при смене ядра не надо пересобирать инитрд
Только модули ядра в арче собирают таким конфигом /etc/mkinitcpio.conf
Код
HOOKS=( udev autodetect modconf block filesystems keyboard )
При смене инитрд - не надо пересобирать модули
Уже ведь это обсуждали
/etc/gshadow -- saved as unique for 020-upower-1811-sf02.pfs submodule
/etc/passwd -- saved as unique for 020-upower-1811-sf02.pfs submodule
Еще при установке некоторых пакетов добавляются группы и юзера
Похоже - удалять. Иначе перекроют рабочие
Единственно может реверс получится встроить не усложняя, но тут не поможет однако. Боюсь в данном случае решать придется со стороны ПРА.
/modules (http://wiki.puppyrus.org/soft/porteus-initrd?&#%D0%BE%D1%81%D0%BE%D0%B1%D0%B5%D0%BD%D0%BD%D0%BE%D1%81%D1%82%D0%B8_porteus-initrd)
    Модули.pfs автозагружаются в алфавитном порядке выше base
/optional
Модули.pfs загружаются в алфавитном порядке выше base, modules при указании load=module[1];module[n]
Если пордок слоев в uird другой (как решить с 08*.pfs 09*.pfs - см. выше) - получается несовместимость
вряд ли получится переставить слои после инитрд
Если про group - все копии надо удалить
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 13 Декабрь 2018, 10:02:57
Со вторыи инитрд понятно, просто в этом конкретном  uird  дрова родные для этого ядра. Сборку uird где будут только дровп и фирмварь тоже делаю: mkuird --kmod вот так.
По последовательности слоев мне не понятно в какой ситуации может понадобиться пихать слои раньше базовых модулей, обычно наоборот приходится изменять файлы которые уже есть в base  модулях, а значит подключать модули после. Изменение порядка подключения для конкретно для модулей которые начинаются на 08, 09 выглядит костылем. Действительно почему именно эти модули, а не какие-то другие. В таком виде в uird это пихать не буду.
Как будет время посмотрю код, который подключает слои в uird может будут какие идеи.
Если удалить из модулей "двойники" shadow, group то может и проблема пропадет сама собой.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 13 Декабрь 2018, 10:32:15
08*.pfs 09*.pfs всегда в верхнем слое
Т.е. перекрывают все
По последовательности слоев мне не понятно в какой ситуации может понадобиться
090 - у нас сохраненка. Разве не логично ее иметь поверх всего?
А так /optional и /modules перекрывали.
089 - типа того же - преднастройки  или багфиксы
В таком виде в uird это пихать не буду.
Не надо. Если они в /base - все должно быть норм
удалить из модулей "двойники" shadow, group то может и проблема пропадет сама собой.
Это по любому правильно сделать

По итогу с uird - то, что я хотел - я сделал в rootaufs2 и он родной - арчевый. Дошлифую - выложу
Причем, возможно mkinitrd арча будет проще адаптировать к другим дистрам, чем dracut. Заморачиваться сборкой наших инитрд тоже смысла не вижу - проще юзать 2 инитрд
В остальных наворотах uird дома необходимости не вижу
Соответственно сам доводить конфиги uird под пра ближайшее время не буду.
Сейчас меня больше волнует эта (http://forum.puppyrus.org/index.php?topic=20314.msg151550#msg151550) проблема
С хуком aufs (http://forum.puppyrus.org/index.php?topic=20164.msg151582#msg151582) тут норм. Остальные хуки надо доводить
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: DdShurick от 13 Декабрь 2018, 11:25:15
Если удалить из модулей "двойники" shadow, group
Не просто удалить, а объединить в base. Сделать "на все случаи жизни".
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 13 Декабрь 2018, 11:38:22
объединить в base
Это и имел ввиду. Автоматически не получится. В итоге объединяю руками и кладу в 089
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: DdShurick от 13 Декабрь 2018, 11:46:44
В итоге объединяю руками и кладу в 089
А потом появляется новый модуль с новым пользователем, и начинай сначала? Надо один раз и навсегда учесть всё возможное и невозможное.

Придумал. Можно прочитать все passwd, shadow, group и gshadow из bundles/etc/ и записать в верхний слой при загрузке.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 13 Декабрь 2018, 12:15:29
Придумал. Можно прочитать все passwd, shadow, group и gshadow из bundles/etc/ и записать в верхний слой при загрузке.
Разочарую, но вы не первый. Ильфат предлагал такое как-то. Делать правда не стали :)
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 13 Декабрь 2018, 12:40:04
А потом появляется новый модуль с новым пользователем, и начинай сначала?
Это бывает редко
Нет. Осядет в сохраненке
прочитать все passwd, shadow, group и gshadow из bundles/etc/ и записать в верхний слой при загрузке.
На каком этапе загрузки? В инитрд?
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: Ильфат от 13 Декабрь 2018, 12:55:25
Придумал. Можно прочитать все passwd, shadow, group и gshadow из bundles/etc/ и записать в верхний слой при загрузке.
А если юзер не добавлен, а модифицирован? Как два варианта одного юзера сойдутся в верхнем слое?
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 15 Декабрь 2018, 00:32:04
Инструкция устаревшая. Сейчас немного не так.
Надо бы поправить в шапке.
Цитата
git clone --recursive https://github.com/neobht/uird.git
cd uird
./make_dracut.sh
./make_busybox.sh
cd dracut
make install
cd ..

./mkuird pra64

 Проверил собранный uird.pra64.cpio.xz в prar-1806, работает. Подключал еще rsync-, надо?
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 15 Декабрь 2018, 06:38:57
Устанавливать дракут  тоже не надо, только собрать.
То есть
git clone ....
cd uird
./make_dracut.sh
./make_busybox.sh
и сразу
./mkuird ...
Для обновления с гитхаба
git pull
и теже команды. Если с гитхаба не обновляли, то собирать дракут и бизибокс больше не нужно. Один раз собрали и все. Да и после обновления не обязательно, бизибокм и дракут обновляем редко.
По rsync точно не могу сказать, надо код смотреть, мне кажется я его не везде убрал. То есть что-то может не работать без него. Копи2рам например.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 26 Декабрь 2018, 20:43:27
 А как собрать uird под другое ядро, не загруженное в систему?
Например, захотел попробовать Linux-ck https://wiki.archlinux.org/index.php/linux-ck, а конкректно ck-core2  https://wiki.archlinux.org/index.php/Unofficial_user_repositories/Repo-ck#Kernels_and_related_packages.

 Пока я вижу возможность только через chroot2pfs?
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: Ильфат от 26 Декабрь 2018, 21:43:56
А как собрать uird под другое ядро, не загруженное в систему?
С последними коммитами так:
Код
# ./mkuird pra64 -k 4.15.4-pf -m /local/dir/to/modules
Где опцией -k задается имя папки с модулями ядра, обычно лежит в /lib/modules или /usr/lib/modules.
Если в системе нет модулей ядра, то путь к директории с папкой модулей ядра задается опцией -m. Папка с модулями ядра должна быть с правами на запись.
Имя выходного файла можно задать с помощью опции -n.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: Ильфат от 26 Декабрь 2018, 22:03:36
Папка с модулями ядра должна быть с правами на запись.
Не уверен что это необходимо всегда, но если в этой папке нет файла modules.dep, то точно запись нужна, потому в этом случае depmod ругнется и сгенерирует его.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: krasnyh от 27 Декабрь 2018, 00:41:25
# ./mkuird pra64 -k 4.15.4-pf -m /local/dir/to/modules
Код
./mkuird pra64 -k 4.19.9-1-ck-core2 -m /usr/lib/modules
Собрал, но в Linux-ck все равно aufs нет. Что-то ошибочное мнение закралось, что uird загружает с любым ядром. )
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 27 Декабрь 2018, 04:57:52
А как определить есть ли у ядра ауфс? Особенно в вашем случае, когда при сборке и ядра то нет, только модули ядра.
З.Ы. Если модули в /lib/modules указывать -m не нужно, только -k.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: Pro от 27 Декабрь 2018, 07:18:10
А как определить есть ли у ядра ауфс?
dmesg | grep aufs или grep /usr/lib/modules/$kern_ver/modules.builtin или modules.order
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 27 Декабрь 2018, 09:24:16
как собрать uird под другое ядро, не загруженное в систему?
Наиболее просто взять готовый http://file.puppyrus.org/users/pra64/kernel/initrd-uird1811.xz
И средствами дистрибутива собрать (http://wiki.puppyrus.org/soft/arch-initrd?&#%D1%81%D0%B1%D0%BE%D1%80%D0%BA%D0%B0_initrd) initrd c модулями ядра
В etc/mkinitcpio.conf достаточно
Код
HOOKS="block autodetect"
Грузить : initrd /путь/initrd_с_модулями_ядра /путь/uird1811.xz

в Linux-ck все равно aufs нет. Что-то ошибочное мнение закралось, что uird загружает с любым ядром. )
С любым AUFS

как определить есть ли у ядра ауфс?
Код
cd /lib/modules/версия_ядра && grep aufs modules.builtin modules.dep
Аналогично с overlayfs
Если есть в modules.builtin - значит вкомпилено в ядро монолитно, т.е. если и прочее (как в ядрах-pf от Pro) для загрузки монолитно - модули ядра в инитрд не нужны
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: sfs от 27 Декабрь 2018, 10:02:30
Оформил в вики (http://wiki.puppyrus.org/soft/arch-initrd?&#%D1%83%D0%BF%D1%80%D0%BE%D1%89%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9_%D0%B2%D0%B0%D1%80%D0%B8%D0%B0%D0%BD%D1%82_%D1%81%D0%B1%D0%BE%D1%80%D0%BA%D0%B8_%D0%B4%D0%BB%D1%8F_%D0%BB%D1%8E%D0%B1%D0%BE%D0%B3%D0%BE_%D0%BB%D0%B8%D0%BD%D1%83%D0%BA%D1%81%D0%B0)
Понятно?
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 27 Декабрь 2018, 10:36:41
/usr/lib/modules/$kern_ver/modules.builtin
Да, это вариант. Но в общем виде будет несколько сложнее. У модулей еще алиасы есть. То есть сперва нужно смотреть не является ли имя модуля алиасом (modules.symbols), затем искать в modules.builtin. Пожалуй добавлю такую проверку в mkuird.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: Pro от 27 Декабрь 2018, 10:39:59
У модулей еще алиасы есть. То есть сперва нужно смотреть не является ли имя модуля алиасом (modules.symbols), затем искать в modules.builtin.
применительно к aufs наверное не актуально, кто на него алиасить будет.
Название: Re: Сборка Initrd UIRD в PRA
Отправлено: betcher от 27 Декабрь 2018, 10:42:05
применительно к aufs наверное не актуально, кто на него алиасить будет.
Редактировать сообщение
Сообщить модератору   Записан
Имею ввиду проверять все, что не найдено modinfo