From: Leonid Krivoshein <klark.devel@gmail.com>
To: make-initrd@lists.altlinux.org
Subject: Re: [make-initrd] Release make-initrd 2.14.0
Date: Wed, 31 Mar 2021 16:55:18 +0300
Message-ID: <83d214e6-2616-03ba-901b-4a92c69c22ff@gmail.com> (raw)
In-Reply-To: <20210331133927.j3gupd4yfflszaum@example.org>
[-- Attachment #1: Type: text/plain, Size: 2741 bytes --]
31.03.2021 16:39, Alexey Gladkov пишет:
> On Wed, Mar 31, 2021 at 04:08:26PM +0300, Leonid Krivoshein wrote:
>> 31.03.2021 10:44, Alexey Gladkov пишет:
>>> On Tue, Mar 30, 2021 at 11:18:56PM +0300, Leonid Krivoshein wrote:
>>>>> 2.14.0
>>>>>
>>>> Шикарный набор, впечатляет! Огромное тебе спасибо!!!
>>>>
>>>> Не против, если я немного поковыряю pipeline для доведения его до нынешнего
>>>> пропагатора и скину все изменения оптом?
>>> Разве я могу запретить кому-то чем-то заниматься ? )))
>>>
>>> Если чего-то не хватает, то это можно добавить. Фича pipeline была сделана
>>> как минимальный базис.
>> Да, это понятно. Разобрались, наконец, с локальной загрузкой и как/чего
>> переделывать. Но наткнулись на другую неприятную ошибку. Скорее всего, она
>> внутри initrd-put -- при создании универсального загрузочного носителя (на
>> замену того, что было с propagator) более половины ядерных модулей и
>> каталогов с модулями попадает не в /lib/modules/$KVER, а в корневой каталог
>> initramfs. Причём, это не зависит от используемого способа (директив)
>> указания списка модулей и места, где это делается. И это не только в 2.14.0,
>> с 2.13.0 то же самое. Нужна ли какая-то дополнительная диагностика?
> Разумеется нужна. Расскажите, что вы делали ?
Просто давали команду make-initrd, предварительно скармливая разными
способами список модулей через /etc/initrd.mk. Перепробованы были разные
директивы -- PUT_DIRS/PUT_FILES с указанием полных путей, директивы
MODULES_LOAD и MODULES_PRELOAD с указанием только названий модулей. Во
всех случаях модули попадают, но в основном не туда, куда надо. См. во
вложении пример вывода initrd-ls и один из вариантов скриптов, которым
это делается.
--
Best regards,
Leonid Krivoshein.
[-- Attachment #2: 511.lst.gz --]
[-- Type: application/gzip, Size: 18769 bytes --]
[-- Attachment #3: 80-make-initrd-for-pipeline --]
[-- Type: text/plain, Size: 1957 bytes --]
#!/bin/sh -efux
# NB: /etc/initrd.mk carefully prepared by earlier scripts
fatal() { echo "** error: $@" >&1; exit 1; }
kver=
for KFLAVOUR in $GLOBAL_KFLAVOURS; do
kver+=" $(rpm -qa 'kernel-image*' \
--qf '%{version}-%{name}-%{release}\n' \
| grep "$KFLAVOUR" \
| sed 's/kernel-image-//')"
done
[ -n "$kver" ] ||
fatal "no kernel version identified"
INITRD_FEATURES+="add-modules compress cleanup rdshell pipeline"
INITRD_MODULES="$(grep -v ^# /.in/modules |
grep -v / |
grep .ko |
sort -u)"
INITRD_PUT_DIRS="$(grep -v ^# /.in/modules |
grep -v .ko |
sort -u)"
initrd_modules_find()
{
if [ -n "$INITRD_MODULES" ]; then
echo "MODULES_LOAD += \\"
for INITRD_MODULE in $INITRD_MODULES; do
MODNAME="$(find /lib/modules/$KVER -type f -name $INITRD_MODULE)"
[ -z "$MODNAME" ] || echo " ${MODNAME##*/} \\"
done
echo " #"
fi
if [ -n "$INITRD_PUT_DIRS" ]; then
echo "PUT_DIRS += \\"
for INITRD_PUT_DIR in $INITRD_PUT_DIRS; do
[ ! -d "/lib/modules/$KVER/$INITRD_PUT_DIR" ] ||
echo " /lib/modules/$KVER/$INITRD_PUT_DIR \\"
done
echo " #"
fi
}
# FIXME: large storage systems can get that tmpfs filled up
# with debug data as of make-initrd 2.2.12
rm -vf /usr/share/make-initrd/data/etc/udev/rules.d/00-debug.rules \
/usr/share/make-initrd/data/lib/uevent/filters/debug
MAKE_INITRD_OPTS="--no-checks AUTODETECT="
MAKE_INITRD_VER="`make-initrd -V \
| sed -rn 's/^make-initrd version ([0-9.]+)/\1/p'`"
[ -z "$GLOBAL_VERBOSE" ] ||
MAKE_INITRD_OPTS="$MAKE_INITRD_OPTS -v"
cd /boot
for KVER in $kver; do
touch /etc/initrd.mk
cp -Lvf /etc/initrd.mk /etc/initrd-mk.bak
initrd_modules_find >> /etc/initrd.mk
make-initrd $MAKE_INITRD_OPTS -k "$KVER" \
FEATURES+="$INITRD_FEATURES" ||
fatal "make-initrd failed"
mv -vf /etc/initrd-mk.bak /etc/initrd.mk
done
case `arch` in
e2k)
kname=image;;
*)
kname=vmlinuz;;
esac
rm -f $kname initrd.img
ln -s $kname-$KVER $kname
ln -s initrd-$KVER.img initrd.img
:
next prev parent reply other threads:[~2021-03-31 13:55 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-30 18:21 Alexey Gladkov
2021-03-30 20:18 ` Leonid Krivoshein
2021-03-31 7:44 ` Alexey Gladkov
2021-03-31 13:08 ` Leonid Krivoshein
2021-03-31 13:39 ` Alexey Gladkov
2021-03-31 13:55 ` Leonid Krivoshein [this message]
2021-03-31 14:07 ` Антон Мидюков
2021-03-31 14:34 ` Alexey Gladkov
2021-03-31 14:40 ` Alexey Gladkov
2021-03-31 14:48 ` Alexey Gladkov
2021-03-31 14:49 ` Leonid Krivoshein
2021-03-31 14:50 ` Антон Мидюков
2021-03-31 15:22 ` Alexey Gladkov
2021-03-31 15:37 ` Антон Мидюков
2021-03-31 15:54 ` Leonid Krivoshein
2021-03-31 15:57 ` Alexey Gladkov
2021-03-31 16:20 ` Leonid Krivoshein
2021-03-31 16:55 ` Alexey Gladkov
2021-03-31 17:02 ` Антон Мидюков
2021-03-31 17:17 ` Alexey Gladkov
2021-03-31 18:08 ` Leonid Krivoshein
2021-03-31 18:10 ` Leonid Krivoshein
2021-03-31 18:29 ` Alexey Gladkov
2021-03-31 18:54 ` Leonid Krivoshein
2021-03-31 18:03 ` Leonid Krivoshein
2021-03-31 18:11 ` Антон Мидюков
2021-03-31 18:24 ` Michael Shigorin
2021-03-31 19:02 ` Leonid Krivoshein
2021-03-31 18:38 ` Alexey Gladkov
2021-03-31 18:49 ` Leonid Krivoshein
2021-03-31 19:20 ` Leonid Krivoshein
2021-04-01 2:32 ` Антон Мидюков
2021-03-31 18:44 ` Leonid Krivoshein
2021-03-31 18:45 ` Alexey Gladkov
2021-03-31 23:49 ` Leonid Krivoshein
2021-04-01 9:02 ` Alexey Gladkov
2021-04-01 10:38 ` Leonid Krivoshein
2021-04-02 17:46 ` Leonid Krivoshein
2021-04-02 17:57 ` Leonid Krivoshein
2021-04-04 19:04 ` Konstantin Lepikhov
2021-04-04 19:21 ` Leonid Krivoshein
2021-04-02 18:37 ` Leonid Krivoshein
2021-04-03 11:09 ` Alexey Gladkov
2021-04-03 11:31 ` Leonid Krivoshein
2021-04-03 11:37 ` Антон Мидюков
2021-04-03 12:16 ` Leonid Krivoshein
2021-04-03 12:27 ` Антон Мидюков
2021-04-03 11:59 ` Alexey Gladkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=83d214e6-2616-03ba-901b-4a92c69c22ff@gmail.com \
--to=klark.devel@gmail.com \
--cc=make-initrd@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Make-initrd development discussion
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/make-initrd/0 make-initrd/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 make-initrd make-initrd/ http://lore.altlinux.org/make-initrd \
make-initrd@lists.altlinux.org make-initrd@lists.altlinux.ru make-initrd@lists.altlinux.com
public-inbox-index make-initrd
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.make-initrd
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git