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

Разработки проекта PuppyRus => Разработка PFS и Initrd => Тема начата: Pro от 24 Апрель 2022, 11:49:11

Название: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: Pro от 24 Апрель 2022, 11:49:11
Итог (https://forum.puppyrus.org/index.php?topic=23847.msg183659#msg183659)

Sfs, а в initrd есть поддержка устройств типа nvme0?  Ядро разделы видит типа как /dev/nvme0n1p1

Еще возможно busybox старый т.к. его mount монтирует разделы с nvme, но содержимого не видно, ls выдает ошибку типа значение слишком большое. Модет и ядро конечно, я 5.11 использовал

  blkid из util-lunux разделы видит
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 24 Апрель 2022, 13:31:13
а в initrd есть поддержка устройств типа nvme0?
В догонку для sfs:
я тут обычную манджаро с крысой поставил на ссд. Странный результат - скорость сложно отличить от ЛФА с ЛФД, Скорее всего из-за того, что их так и не сумел с ссд запускать.
Раз уж большие спецы спрашивают, то возможно там не просто дело в неумении...


p.s. Почти все iso от sfs, теперь имеют строку запуска с uird. Если с ним запускается nvme, это может дать дополнительную полезную инфу разработчику. Или не дать, все же он тоже слегка 'выхолощенный' ради размера, руками sfs.
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 24 Апрель 2022, 13:42:44
Ну как вам сказать, я сделал linuxrc |grep nvm и ничего не нашлось. Конечно же я попробу другое ядро 5.13 вроде последнее у нас? Но вроде как nvme не первый год существуют, врядли ядро виновато.
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 24 Апрель 2022, 13:57:00
ядро 5.13 вроде последнее у нас?
5.16.0-pf1-mg2 (https://mirror.yandex.ru/puppyrus/puppyrus-a64/kernel/new/5.16.0-pf1-mg2/)
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 24 Апрель 2022, 15:19:01
ядро 5.13 вроде последнее у нас?
5.16.0-pf1-mg2 (https://mirror.yandex.ru/puppyrus/puppyrus-a64/kernel/new/5.16.0-pf1-mg2/)
Я даже mg3 поставил - не помогло
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 24 Апрель 2022, 20:30:50
Почти все iso от sfs, теперь имеют строку запуска с uird. Если с ним запускается nvme, это может дать дополнительную полезную инфу разработчику.
?

Код
live@roll2110 ~/.cache/zzzfm/prar21.10-x86_64-04.iso % grep -m1 uird menu.lst
title ▒▒ UIRD initrd https://github.com/neobht/uird  \n Собран dracut (есть под любой Linux)\n Расширенный набор FRUGAL и \n FULL (системный ini конфиг, сохранения на любой раздел, в img, в pfs и проч.) функционала
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 25 Апрель 2022, 02:19:13
Почти все iso от sfs, теперь имеют строку запуска с uird. Если с ним запускается nvme, это может дать дополнительную полезную инфу разработчику.
?

Уважаемый, я сообщаю о проблеме с конкретным initrd, ненужно наваливать все в одну кучу. Не стоит сообщать какая инфа будет полезна для разработчика - я сам бывший разработчик.
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 25 Апрель 2022, 05:12:50
:)

Наблюдая за процессом разнообразных форумных споров и разногласий, иногда sfs можно только посочувствовать. Твердости ему и желания не бросать нас. )


p.s. Есть разный подход к решению проблемы. На примере ремонта железа, можно обложиться диагностическими приборами, посткартами..., а можно методом тыка менять устройства на заведомо исправные, по очереди, до нахождения причины. Мне ближе и проще второй способ.
В заданном выше вопросе, при удачном запуске nvme с uird, это помогло бы понять, что еще надо перетащить из uird.lfa.cpio.xz в initrd. Возможно не хватает какого-то модуля *.ko. Имхо.
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 25 Апрель 2022, 09:38:53
с ядром все хорошо, nvme оно видит. Про то, что надо бы "перетащить" я тоже примерно написал.

Вобщем то до спора с sfs дело еще не дошло, а вот излишней болтовни уже много.
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: sfs от 25 Апрель 2022, 13:03:12
linuxrc |grep nvm и ничего не нашлось
linuxrc = porteus-initrd рассчитан на работу только с монолитными ядрами
в prar.iso mg2 поставить : полумонолитный - загрузка с ext ntfs3 fat разделов HDD SSD. C DVD USBflash и пр. FS загрузится только с initrd-raf2 или uird .
А какие модули ядра нужны для nvme? - давайте с этим определимся - тогда станет ясно где чего не хватает.
В kernel 5.16.0-pf1-mg2 : nvme-core.ko nvme.ko - монолитно. В initrd-raf2-5.16.0-pf1-mg2-fallback.xz есть дополнительные nvm*.ko (в моем uird для этого ядра -  нет)
Pro - попробуй этот инитрд
возможно busybox старый
У меня нет nvm - с тестами надежда только на тебя
Пересобери инитрд со свежим. Достаточно просто бинарник busybox в инитрд заменить. (хотя возможно и glibc) - короче - с этим могу помочь...
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 25 Апрель 2022, 13:23:41
в моем uird для этого ядра -  нет
В родном uird.magos.cpio.xz (https://mirror.yandex.ru/mirrors/magos/netlive/2021/MagOS/uird.magos.cpio.xz) присутствуют nvme.ko, nvme-core.ko. Наверно uird.lfa.cpio.xz собирался с исключениями (-e):
Код
$ grep nvme mkuird.cfg 
KM_dev="nbd zram mptspi mptfc mptsas nvme vmw_pvscsi"
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 25 Апрель 2022, 14:11:51
Пересобери инитрд со свежим. Достаточно просто бинарник busybox в инитрд заменить. (хотя возможно и glibc) - короче - с этим могу помочь...
у тебя скрипт linuxrc не сможет ничего увидеть т.к. парсит sd* устройства!!!

busybox обновлять придется, либо подсовывать полный mount т.к. с initrd-uird я загрузил систему. К ядру 5.11  и 5.16.0-pf1-mg2 у меня вопросов нет - они отработали как ожидалось. разделы видны ведь!
 
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: sfs от 25 Апрель 2022, 14:44:36
В родном uird.magos.cpio.xz присутствуют nvme.ko, nvme-core.ko
В kernel 5.16.0-pf1-mg2 : nvme-core.ko nvme.ko - монолитно
В 5.15.0-pf5-pt14 так же
Этих 2х модулей достаточно?

с initrd-uird я загрузил систему
А с initrd-raf2-5.16.0-pf1-mg2-fallback.xz нет? Можешь пересобрать с busybox из uird?


linuxrc не сможет ничего увидеть т.к. парсит sd* устройства!!!
Нет там такого парсинга. Там хитрее. Но там еще busybox старый и на uclibc. Дядя Шурик - у вас нет такого свежего?
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 25 Апрель 2022, 14:49:09
Этих 2х модулей достаточно?
в моем uird для этого ядра -  нет
с initrd-uird я загрузил систему
Получается, что и так работает, без nvme*.ko?
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 25 Апрель 2022, 15:05:51
busybox обновлять придется
Если упомянутый initrd-uird это и есть uird.lfa.cpio.xz из prar*.iso, то busybox в нем действительно крайней версии. При сборке uird он качается с github и пересобирается. Так что, может причина незапуска nvme с родным initrd в старой версии busybox. Почему нет.


upd.
prar2110
initrd (классический)  -         BusyBox v1.21.1
initrd-raf2-5.16.0-pf1-mg2  -  BusyBox v1.33.1
uird.lfa.cpio.xz  -                   BusyBox v1.32.0.git
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: sfs от 25 Апрель 2022, 15:45:39
Получается, что и так работает, без nvme*.ko?
Вряд ли. Они ведь монолитно в моем ядре . Если этого достаточно - проблема в скриптах и (или) BusyBox
может причина незапуска nvme с родным initrd в старой версии busybox. Почему нет.
пересобрать с busybox из uird
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 25 Апрель 2022, 16:25:15
initrd-raf2-5.16.0-pf1-mg2.xz вот с этим грузил, fallback не пробовал.
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: sfs от 25 Апрель 2022, 16:37:33
initrd-raf2-5.16.0-pf1-mg2.xz - в этом нет. доп. nvm*.ko
Мы пока так и не определились с
какие модули ядра нужны для nvme? - давайте с этим определимся - тогда станет ясно где чего не хватает.
В kernel 5.16.0-pf1-mg2 : nvme-core.ko nvme.ko - монолитно
Этого достаточно?
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 26 Апрель 2022, 04:18:07
в этом нет. доп. nvm*.ko
причем тут .ko блин, проблема была в том что монтирует как-то непонятно. Я же сказал - ядро nvme видит нормально.


Этого достаточно?
Я же сказал - ядро nvme видит нормально.
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: sfs от 26 Апрель 2022, 09:26:31
initrd-raf2-5.16.0-pf1-mg2.xz
Можешь
пересобрать с busybox из uird
Или еще интереснее со свежим  busybox из арчрепы
Сам сделаешь или помочь?
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: gumanzoy от 26 Апрель 2022, 14:58:39
Возможно зря влезаю. Но DogLinux с Porteus Initrd загружается с nvme.

у тебя скрипт linuxrc не сможет ничего увидеть т.к. парсит sd* устройства!!!

Насколько сильно linuxrc от sfs отличается от того что в DogLinux ?
В DogLinux монтируется так:
Код: linuxrc
# Source functions
. ./finit

# Create /etc/fstab and mount devices:
fstab
Код: finit
# Run fstab for setup
fstab() { rm -f /tmp/devices
param nocd || for x in /dev/sr*; do blkid $x >>/tmp/devices; done
param nohd || blkid | egrep -v '/dev/sr|/dev/loop|/dev/mapper' >>/tmp/devices
dev=`egrep -v 'TYPE="sw|TYPE="LVM|TYPE=".*_raid_member"' /tmp/devices 2>/dev/null | cut -d: -f1 | cut -d/ -f3 | sort | uniq`
cat > /etc/fstab << EOF
# Do not edit this file as fstab is recreated automatically during every boot.
# Please use /etc/rc.d/rc.local or sysvinit scripts if you want to mount/unmount
# drive, filesystem or network share.

# System mounts:
#aufs / aufs defaults 0 0
overlay / overlay 0 0

proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
devtmpfs /dev devtmpfs defaults 0 0
devpts /dev/pts devpts rw,mode=0620,gid=5 0 0

# Device partitions:
EOF
for x in $dev; do
    fs=`grep -w /dev/$x /tmp/devices | egrep -o ' TYPE=[^ ]+' | cut -d'"' -f2`
    [ $fs = vfat ] && echo "/dev/$x /mnt/$x vfat $MOPT,umask=0,check=s,utf8 0 0" >>/etc/fstab || echo "/dev/$x /mnt/$x $fs $MOPT 0 0" >>/etc/fstab
    if [ ! -d /mnt/$x ]; then
mkdir /mnt/$x
if [ $fs = ntfs ]; then
    ntfs-3g /dev/$x /mnt/$x -o $MOPT 2>/dev/null || { sed -i "/$x /d" /etc/fstab; rmdir /mnt/$x; }
else
    mount -n /mnt/$x 2>/dev/null || { modprobe $fs 2>/dev/null && mount -n /mnt/$x 2>/dev/null || { sed -i "/$x /d" /etc/fstab; rmdir /mnt/$x; }; }
fi
    fi
done

if [ -z "`egrep -o " noswap( |\$)" /proc/cmdline`" -a -e /tmp/devices ]; then
#echo -e "\n# Swap partitions:" >>/etc/fstab
for x in `grep 'TYPE="swap"' /tmp/devices | cut -d: -f1`; do echo "$x none swap sw,pri=1 0 0" >>/etc/fstab; done
fi }
Т.е. явно никакие /dev/sd* или /dev/nvme* или /dev/mmcblk не прописаны.

UPD
mount из busybox
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 26 Апрель 2022, 16:03:23
Сам сделаешь или помочь?
это не помогло.
Потому что в uird mount не из busybox, во вторых там все собрано под libc.so.6
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 26 Апрель 2022, 16:45:04
в uird mount не из busybox
В папку initramfs-lfa распакован uird.lfa.cpio.xz:
Код
live@roll2110 /mnt/sda3/iso/initramfs-lfa % find -name mount ! -type d -exec ls -l {} \; 
lrwxrwxrwx 1 live live 7 апр 25 15:19 ./usr/bin/mount -> busybox

Есть заинтересованность, чтобы вопрос разрешился положительно и нужные изменения были внесены в сборки. Припоминаю, что были похожие вопросы у пользователей, и проверочным запуском с uird все решалось, но как-то развития тема не получила. Может найду эти комменты.
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 26 Апрель 2022, 16:58:24
Может найду эти комменты.
Тред отсюда (https://forum.puppyrus.org/index.php?topic=23499.msg182237#msg182237) и ниже. Информации много, сложно выделить важное зерно, краеугольный камень проблемы.
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 26 Апрель 2022, 17:16:27
даж незнаю что еще подсказать, не зря конечно в iso аж 4 initrd
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: sfs от 27 Апрель 2022, 10:26:20
initrd-raf2-5.16.0-pf1-mg2.xz
Можешь пересобрать с busybox из uird
это не помогло.
А если поменять в initrd-raf2-5.16.0-pf1-mg2-fallback.xz ?
в uird mount не из busybox
из busybox
там все собрано под libc.so.6
В initrd-raf2-5.16.0-pf1-mg2*.xz тоже

Запустилось с флешки PRAR2110 в варианте UIRD! Без переделок
Тут та же проблема и то же решение. Полезной инфы для решения проблемы в initrd-raf2- там нет

Возможно зря влезаю.
Не зря. Особенно если поможете с тестированием nvme.
Porteus Initrd загружается с nvme.
У меня старая , доработанная мной версия портеус. Этот вариант если и буду дорабатывать - только после решения с rootaufs2

initrd-raf2-5.16.0-pf1-mg2-ui2.xz (http://mirror.yandex.ru/puppyrus/puppyrus-a64/kernel/new/5.16.0-pf1-mg2/initrd-raf2-5.16.0-pf1-mg2-ui2.xz)
Это initrd-raf2-5.16.0-pf1-mg2-fallback.xz - с замененными из uird модулями ядра и свежим ббокс из арчрепы
прошу протестировать
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 27 Апрель 2022, 13:31:48
initrd-raf2-5.16.0-pf1-mg2-ui2.xz
этот работает.
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: sfs от 27 Апрель 2022, 14:12:39
отлично! Тогда попробуй этот
initrd-raf2-5.16.0-pf1-mg2-ui3.xz (http://mirror.yandex.ru/puppyrus/puppyrus-a64/kernel/new/5.16.0-pf1-mg2/initrd-raf2-5.16.0-pf1-mg2-ui3.xz)
Это initrd-raf2-5.16.0-pf1-mg2-fallback.xz - со свежим ббокс из арчрепы
И все станет ясно
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: Pro от 27 Апрель 2022, 14:30:10
initrd-raf2-5.16.0-pf1-mg2-ui3.xz
этот работает
Название: Re: Поддержка устройств типа nvme в initrd
Отправлено: sfs от 27 Апрель 2022, 15:05:34
Тогда итог
Для поддержки загрузки с nvme в initrd необходимо
1. nvme-core.ko nvme.ko (в моих ядрах они монолитно)
2. busybox >=1.32

Протестировано с initrd-raf2-5.16.0-pf1-mg2-ui3.xz (http://mirror.yandex.ru/puppyrus/puppyrus-a64/kernel/new/5.16.0-pf1-mg2/initrd-raf2-5.16.0-pf1-mg2-ui3.xz)
и uird этого же ядра

С porteus-pra-initrd nvme работать не будет . Итог по нему (https://forum.puppyrus.org/index.php?topic=23847.msg183672#msg183672)
(см. п.2)
там еще busybox старый и на uclibc. Дядя Шурик - у вас нет такого свежего?
mount из busybox
Пересобрал с ним. initrd2.xz (http://mirror.yandex.ru/puppyrus/puppyrus-a/kernel/initrd2.xz)
Прошу проверить
Pro - спасибо+
обновил busybox 070-prar-full-2110-sf04.pfs (http://mirror.yandex.ru/puppyrus/roll/2110/pfs/070-prar-full-2110-sf04.pfs)
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: Pro от 27 Апрель 2022, 16:15:03
Пересобрал с ним. initrd2.xz
Прошу проверить
не работает
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 27 Апрель 2022, 17:13:52
    mount из busybox

Пересобрал с ним. initrd2.xz
Для поддержки загрузки с nvme в initrd необходимо
1. nvme-core.ko nvme.ko
Не соблюдение своих собственных установок. ) Не достаточно свежей версии busybox, нужны и nvme.ko. Наверно.

В initrd (https://forum.puppyrus.org/index.php?topic=23847.msg183649#msg183649) от gumanzoy (doglinux), полноценная директория с модулями *.ko ( lib/modules/5.10.0-11-amd64/ ). В классическом initrd из сборок sfs, там только ссылка lib/modules --> /usr/lib/modules.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: gumanzoy от 27 Апрель 2022, 18:27:40
В initrd от gumanzoy (doglinux), полноценная директория с модулями *.ko ( lib/modules/5.10.0-11-amd64/ ). В классическом initrd из сборок sfs, там только ссылка lib/modules --> /usr/lib/modules.
Это потому что в DogLinux могут и используются не монолитные ядра. По умолчанию штатные от Debian.
Если все нужное собрано монолитно то не нужны модули.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 27 Апрель 2022, 18:30:25
А можно ссылку на такой initrd, где нет модулей, но при этом работает с nvme.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: gumanzoy от 27 Апрель 2022, 18:39:36
А можно ссылку на такой initrd, где нет модулей, но при этом работает с nvme.
В теории должно работать. Лет 10 назад пользовался Gentoo без initrd вообще. На SATA конечно.
В личном пользовании у меня нет NVME. Но проверял свою сборку DogLinux (ядро с модулями) на ноутбуках в ремонте.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 27 Апрель 2022, 20:23:29
Если все нужное собрано монолитно то не нужны модули.
Протестировано с initrd-raf2-5.16.0-pf1-mg2-ui3.xz
Можно было бы попытаться вычленить конкретного виновника, раз уж nvme.ko и nvme-core.ko монолитно в ядре и не могут влиять на незапуск.

Сравнивая initrd-raf2-5.16.0-pf1-mg2-ui3.xz и initrd-raf2-5.16.0-pf1-mg2.xz из prar2110.iso, получаем 600 уникальных модулей. Вычитаем 200 модулей, руководствуясь списком modules.builtin, уже 400. Искать среди них именно те, которые необходимо внести в монолитное ядро, чтобы классический initrd увидел nvme...


upd. Так то, поиском по nvme в initrd-raf2-5.16.0-pf1-mg2-ui3.xz получаем:
Цитата
nvme-fabrics.ko
nvme-fc.ko
nvme-fcloop.ko
nvme-loop.ko
nvme-rdma.ko
nvme-tcp.ko   
nvmet-fc.ko       
nvmet-rdma.ko   
nvmet-tcp.ko   
nvmet.ko
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 28 Апрель 2022, 09:31:14
pra-porteus-initrd
не работает
c обновленным ббокс от gumanzoy
Т.к. ядро то же - вероятно дело в скриптах pra-porteus-initrd

Раз у gumanzoy работает - значит можно сравнением, т.к. initrd родственные. Здесь вместо udev - загрузка модулей ядра через modprobe  циклом по списку. Такое решение мне не нравится. Зачем в памяти лишние модули.

Протестировать мне не на чем. pra-porteus-initrd используется в дистрах для старого железа (где nvme нет)
Его можно заменить на rootaufs или uird
В итоге - пока чинить не планирую
https://mirror.yandex.ru/puppyrus/puppyrus-a/kernel/initrd-lf-pf-sf16.cpio.xz - i686 (будет работать и на x86_64) со свежим busybox для маленьких монолитных ядер - т.е. nwme должно работать. Не проверял - не на чем

Так то, поиском по nvme в initrd-raf2-5.16.0-pf1-mg2-ui3.xz получаем
Т.к. в initrd-raf2-5.16.0-pf1-mg2-ui2.xz этих .ko не было и он работал. Эти .ko не нужны
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: yxma от 28 Апрель 2022, 23:51:14
хочется верить, что до лета проблема окончательно устаканится в очередном обновлении лф все же я в деревню еду, а там все сурово, каждый байт на счету. И брат с ноутом приедет, что в нем - не в курсе, но просил линукс поставить. Последний раз это был пра, но давно это было и на другом ноуте, который таки сдох окончательно
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 01 Май 2022, 10:38:15
хочется верить, что до лета проблема окончательно устаканится
У вас есть nvme? Чем не устраивает решение выше?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 01 Май 2022, 10:47:28
1.
У вас есть nvme?
В догонку для sfs:
я тут обычную манджаро с крысой поставил на ссд. Странный результат - скорость сложно отличить от ЛФА с ЛФД, Скорее всего из-за того, что их так и не сумел с ссд запускать.
Раз уж большие спецы спрашивают, то возможно там не просто дело в неумении...

2.
Чем не устраивает решение выше?
Все же надо понимать, когда такие вопросы следует задавать, а когда нет. В данном случае, пользователь просто желает, чтобы из коробки все работало.
И сразу же стоит решить вопрос с классическим initrd - или убрать его из сборок, или сделать поясняющую надпись, что он не работает с nvme. Чтобы не заваливали пользователи форум вопросами, раз уж в теме написано [Решено].
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 01 Май 2022, 10:53:43
так и не сумел с ссд запускать.
Это скорее индивидуальная проблема
пользователь просто желает, чтобы из коробки все работало.
Я тоже за все хорошее против всего плохого
решить вопрос с классическим initrd - или убрать его из сборок
Думаю, убрать только из прар. В остальных
сделать поясняющую надпись, что он не работает с nvme
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 01 Май 2022, 12:27:19
классическим initrd
Это что вы считаете за классику?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: Pro от 01 Май 2022, 15:19:41
Факт то, что собственный initrd стал уже неподконтрольным )) рецепты утеряны, одноразовое  произведение искусства.

Я честно не ожидал что все окажется настолько сложно.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 01 Май 2022, 17:12:36
что вы считаете за классику?
Initrd, а-ля PuppyLinux от Барри Каулера, который работает только с монолитным ядром (нет полноценной директории /lib/modules/ с модулями *.ko). Плюс, за счет этого имеет самый маленький размер (сравнить с uird или с initrd-raf2 от sfs, или initrd от gumanzoy...).


upd. minitrd.gz от DdShurick тоже попадает в раздел классического (имхо).
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 01 Май 2022, 17:25:41
initrd, а-ля PuppyLinux от Барри Каулера
Вот его init я и переписал для Richy. Выходит я тоже "классик" :)
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 04 Май 2022, 11:17:24
что вы считаете за классику?
В контексте этой темы pra-porteus initrd (старый скрипт porteus c моими доработками). С PuppyLinux там никакой связи нет

В rootaufs2 перенесена часть pra-porteus кода . Т.к. оформлено в виде hook - можно самостоятельно собирать инитрд нужной конфигурации стандартными арч средствами . Это главный плюс. Пример (https://forum.puppyrus.org/index.php?topic=16345.msg183680#msg183680)
Поэтому особо запариваться с pra-porteus нет. Собранный без udev rootaufs2 будет почти таким же по размеру, как pra-porteus

собственный initrd стал уже неподконтрольным
Какой имеешь ввиду и что понимаешь под контролем?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: yxma от 04 Май 2022, 12:04:01
Прикольно, конечно, читать что я специалист в линуксе, но, конечно, окрыляет  :D
Честно говоря, я не представляю как можно запустить ЛФ с нмве если инитрд с ним не работает. Поэтому и уперся в манджару, которая летает на уровне ЛФ и с которой не нужно как на Маге решать вопросы звука, не возникающие на других линуксах с прошлого столетия. Думаю, до деревни я не вернусь к вопросам по нмве. Из-за этого я и на форуме стал реже появляться.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 04 Май 2022, 12:07:16
Прикольно, конечно, читать что я специалист в линуксе
Мой коммент был под вопросом Pro и отсылка, соответственно, была к нему. )
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 04 Май 2022, 13:11:09
я не представляю как можно запустить ЛФ с нмве если инитрд с ним не работает
Выше ссылка на рабочий инитдр
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 04 Май 2022, 13:51:57
Выше ссылка на рабочий инитдр
У тебя этих initrd развелось, на каждый случай, запутаться можно. А смысл? Чужие ядра тырить? Так у них всё равно aufs нет, пересобирать приходится. Тогда уж лучше сразу пересобрать ядро как надо, с поддержкой всех носителей. И будет, как говорил Владимир Ильич "лучше меньше, да лучше".
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 04 Май 2022, 13:53:48
А смысл?
Наличие системы сборки инитрд под любую задачу
оформлено в виде hook - можно самостоятельно собирать инитрд нужной конфигурации стандартными арч средствами
пересобрать ядро как надо, с поддержкой всех носителей
Избыточно большое получается. Постоянно в памяти держать такое накладно
полумонолитный - загрузка с ext ntfs3 fat разделов HDD SSD. C DVD USBflash и пр. FS загрузится только с initrd-raf2 или uird
Много развелось фс и носителей...
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 04 Май 2022, 14:07:59
Постоянно в памяти держать такое накладно
Как ты любишь говорить: "особенно по сравнению с браузером". Не смеши мои тапочки.. :)
Наличие системы сборки инитрд под любую задачу
Но initrd получится жёстко привязанным к ядру. Ну и ...?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 04 Май 2022, 16:37:54
Ну и ...?
Ну и поэтому золотая середина
полумонолитный - загрузка с ext ntfs3 fat разделов HDD SSD. C DVD USBflash и пр. FS загрузится только с initrd-raf2 или uird
Частоиспользуемые в монолит. Остальное в .ko
И маленькое ядро тоже есть типа тех что в портеусе и у Pro
В LFD10 будет маленький монолитный 5.15.0-pf5-pt14,
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 04 Май 2022, 17:13:32
поэтому золотая середина
С ядрами понятно, но я про initrd, жёстко привязанный к ядру, не получится легко менять ядра. Да и сомнение меня гложет насчёт твоих скриптов, оптимально ли? Посмотри TinyCore, init всего несколько строк, а работает. Классический init от B.K. я переписал именно по причине ненужности большинства кода и его неоптимальности. В init всё должно быть нацелено на сборку aufs и ничего более.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 04 Май 2022, 18:07:55
насчёт твоих скриптов, оптимально ли?
Вряд ли. Рождалось в муках. Но обязательно нужно под какую-то систему сборки инитрд
Если сделаете проще и с base module ... load= noload= - готов тестировать
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 04 Май 2022, 18:23:24
Если сделаете проще
Много лет назад уже сделано, и тишина...
с base module ... load= noload=
Именно так.
готов тестировать
Созрел? Раньше не готов был?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 05 Май 2022, 09:24:01
обязательно нужно под какую-то систему сборки инитрд
У вас под какую?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 05 Май 2022, 09:38:26
По итогу этой темы обновил busybox 070-prar-full-2110-sf04.pfs (http://mirror.yandex.ru/puppyrus/roll/2110/pfs/070-prar-full-2110-sf04.pfs)
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 05 Май 2022, 11:44:57
готов тестировать
Ну раз так, давай начнём изучать эту кухню. Глядишь и любознательные подтянутя. Только на "золотые горы" не рассчитывай, я болею.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 06 Май 2022, 09:23:00
обязательно нужно под какую-то систему сборки инитрд
У вас под какую?
Под какую будете делать?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 06 Май 2022, 09:36:19
Под какую будете делать?
Тебе опять план по валу надо гнать? Я не жалую системы сборки, когда что-то собираешь, надо думать головой, а не мышкой кликать. Я могу только рассказзать, как написать init для сборки aufs. Если тащить в initrd модули ядра, то надо их чем-то подгружать, а это дополнительный размер и время.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 06 Май 2022, 09:50:17
Я не жалую системы сборки
Без этого вообще не интересно
могу только рассказзать, как написать init для сборки aufs
Я пока не готов участвовать в написании. Максимум правки моего rootaufs2
Кстати - самый простой способ - причесать мой хук rootaufs2. И давно собираюсь слить rootaufs2 (aufs) и rootofs (overlayfs) в один. Там больше половины кода одинаковые
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 06 Май 2022, 11:08:02
Без этого вообще не интересно
Лентяй :)
Я пока не готов участвовать в написании.
Я не собираюсь писать новое.
Там больше половины кода одинаковые
Вообще-то должна отличатья только одна строка
Для overlayfs
Код
mount -t overlay overlay -o lowerdir=${SAVE}${UMNTRO}${KERNEL}/base,upperdir=/changes/upper,workdir=/changes/work /pup_new
Для aufs
Код
mount -t aufs -o udba=reval,diropq=w,dirs=/changes=rw:${SAVEXZM}${UMNTRO}${KERNEL}/base=ro aufs /pup_new
Вот от этих строк и надо плясать.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 06 Май 2022, 11:14:13
должна отличатья только одна строка
Примерно так. Пока rootofs сделано методом правки rootaufs2. Из-за невостребованности не окультуривал
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: yxma от 06 Май 2022, 18:18:43
Я, как всегда, с дурацкими предложениями
Как я понял - инитрд делается для экономности с разными... нюансами. В зависимости от этого в разных ситуациях, для разных компов, нужны варианты, кому какой подойдет. А есть в репе папка с разными инитрд, к которым аннотация - какой для чего придуман?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 06 Май 2022, 19:59:50
инитрд делается для экономности
Нет. Сейчас это общепринятый способ загрузки. Старые ядра 2.* умели без initrd. 
с разными... нюансами.
Для систем с aufs | overlayfs надо сначала найти модули и собрать их в слои. После этого запускается собранная система.
для разных компов, нужны варианты
Для разного железа нужны разные ядра, а если модули ядра включены в initrd, то initrd работает только в комплекте со своим ядром. Лично я против включения модулей ядра в initrd.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: yxma от 07 Май 2022, 15:08:26
Сейчас это общепринятый способ загрузки.
вы не поняли смысл вопроса. Главная мысль была в том, что из экономии делают разные инитрд, как минимум, для использования при загрузке с нмве и без такой возможности (по умолчанию). Может, и еще какие варианты есть - я ведь не очень тщательно слежу за ситуацией. А вдруг мне это очень надо - а я и не знал?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 07 Май 2022, 15:36:35
при загрузке с нмве
Если поддержка nvme вкомпилирована в ядро монолитно, то поддерживать будет, если модулем ядра, то специальный initrd, а экономии практически никакой.
Загружаемые модули ядра Linux (https://tokmakov.msk.ru/blog/item/476), sfs, обрати внимание, для загрузки модулей в initrd не обязательно включать udev и kmod, достаточно возможностей busybox.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 11 Май 2022, 10:02:18
для загрузки модулей в initrd не обязательно включать udev и kmod
думаю - лучше оставить как есть : в pra-porteus - только монолитные ядра.
В rootaufs - как в арче. Ходить по граблям за паку килобайт и корежить систему сборки инитрд арча - желания нет
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: DdShurick от 11 Май 2022, 11:11:07
желания нет
Как хочешь :(
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: yxma от 27 Октябрь 2022, 20:39:20
Сколько ни ковырялся я в теме, но ответа так и не нашел. После смены термопасты мой делл перестал греться, но перестал узнавать свой блок питания и стал жутко тормозить. Почитал отзывы - оказывается, мог вообще не завестись, так что и на том спасибо. Снова задумался о лф. Но запускать хочется с nmve...
Какой initrd качать? Или есть готовая сборка лф для суперкомпьютеров?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: uropb от 28 Октябрь 2022, 02:51:58
Присоединюсь к вопросу. Пытался запустить на ноуте с uefi. Загрузочную флешку не видит в бутменю. Закинул на ssd nvme, прописал в грубе - пишет типа не загрузочный диск, тоже самое на hdd с mbr. Мучился с lfd10. Запустился с флешки через груб на ssd.Причем на флешке была только папка lfd10 и то случайно. Прочитал всю тему. Prar2110 не запустился ни в каких вариациях, перебрал все initrd и uird.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 28 Октябрь 2022, 09:38:20
Какой initrd качать?
https://forum.puppyrus.org/index.php?topic=23847.msg183659#msg183659
есть готовая сборка лф для суперкомпьютеров?
Поддержка prar21.10 закончена.
prar21.10-x86_64-06.iso (https://boosty.to/sfslinux/posts/e9527463-9e0e-4684-83a8-4ad1aa0c2ebf?share=success_publish_link) - итоговый iso. В нем обновленные описанным выше способом инитрд
Сегодня постараюсь выложить аналогичные для ядра 6.0
Prar2110 не запустился ни в каких вариациях, перебрал все initrd и uird
Может запустить с носителя , с которого запускается и посмотреть - видно ли nvme...
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 28 Октябрь 2022, 09:57:11
Сегодня постараюсь выложить аналогичные для ядра 6.0
В initrd-raf2-6.0.0-pf2-mg3_64-fallback.xz - busybox 1.35. nwme монолитно в ядре. Пробовали?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: yxma от 29 Октябрь 2022, 14:19:02
Какой initrd качать?
https://forum.puppyrus.org/index.php?topic=23847.msg183659#msg183659
скачал, но есть нюансы - почему-то делл7577 не работает с ядром 5.16, только со старым. Ну, тут я, может, просто не копнул поглубже.
Может запустить с носителя , с которого запускается и посмотреть - видно ли nvme...
это ничего не дает. После запуска лф в любом виде nvme видны. Не видно только при загрузке.
Наконец-то правильный финансовый подход. Моя совесть не будет меня мучить. Но есть момент - прар я до сих пор не осилил. Хотя, скорее всего, потому что и так было хорошо. А сейчас возникли некоторые трудности, что, наверное, только к лучшему
А еще прикол в том, что удалось установить reFind, который поднимает все подряд, что попадается ему на глаза, лишь бы все на месте было, даже магОс без проблем с раздела, а не с флешки загрузился. Зато бук после смены пасты на больших линуксах начал заметно тормозить. С непривычки раздражает.

А ещё очень важно - в роликах описаны простые действия по установке ПРА на флешку и диск, но куда более сложные действия по установке ПРАР совсем ничего нет. Совсем даже не обязательны комментарии - надо просто записать процесс установки. Тогда, скорее всего, и я сподоблюсь. Ну пожалуйста, пожалуйста, пожалуйста!!!
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: yxma от 30 Октябрь 2022, 05:05:45
на hdd с mbr
В этом случае нужно ставить г4д - мой самый любимый загрузчик. Уефи при этом нужно отключать, включать режим легаци. Кстати, с флешки не грузился, скорее всего потому, что на нее тоже нужно ставить г4д. Хотя при загрузке с уефи должно грузиться и так. Я бы посмотрел, что у вас получается чисто по вайберу или ватсапу. Вы ролики по установке, на которые ссылка вверху, внимательно смотрели?
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: krasnyh от 30 Октябрь 2022, 13:41:59
Кстати, если речь именно о iso, то уже давно есть grub4dos-for_UEFI. Но эта инфа уже для сборщиков iso.
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 31 Октябрь 2022, 10:22:50
После запуска лф в любом виде nvme видны. Не видно только при загрузке.
Какое инитрд используете? С pra-porteus nwme работать не будет (подробнее в шапке темы)

Наконец-то правильный финансовый подход
Спасибо за подписку!
прар я до сих пор не осилил.
Все свежее скоро будет по подписке
в роликах описаны простые действия по установке ПРА на флешку и диск, но куда более сложные действия по установке ПРАР совсем ничего нет
Ролик по установке от sewar? Там нет ничего по EFI .  В MBR все мои дистры ставятся одинаково
Я сам не умею делать ролики. Текстом в вики про EFI все что знал - написал. Там главная проблема - на разных биосах может работать по разному. Тот же grub4dos-efi у меня на некоторых пк не заработал. Поэтому в исо - груб2
Если кто-то умеет - готов консультировать и распространить через донат  на бусте . Донаты перешлю автору
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: sfs от 31 Октябрь 2022, 11:16:56
https://mirror.yandex.ru/puppyrus/puppyrus-a/kernel/initrd-lf-pf-sf16.cpio.xz - i686 (будет работать и на x86_64) со свежим busybox для маленьких монолитных ядер - т.е. nwme должно работать. Не проверял - не на чем
Название: Re: [Решено] Поддержка устройств типа nvme в initrd
Отправлено: yxma от 01 Ноябрь 2022, 22:26:30
Я сам не умею делать ролики.
Собственно, уметь ничего не нужно. Надо просто записать на видеокамеру, да хоть на телефон, процесс установки ПРАР на жесткий диск. Если нужны будут какие-то комментарии - можете прислать мне видео, я наложу нужный звук.
Если возможна установка ПРАР из-под другой рабочей системы, то дело еще проще - записать экран с указателем мыши (обычно это отмечается галочкой).
В крайнем случае, если выйдет кривовато, по готовому шаблону я сделаю прямее. В любом случае попытаться нужно