[make-initrd] Multipath feature

Leonid Krivoshein klark.devel at gmail.com
Mon Jan 29 17:21:44 MSK 2024


On 1/29/24 16:47, Alexey Gladkov wrote:
> On Mon, Jan 29, 2024 at 03:03:25PM +0300, Leonid Krivoshein wrote:
>>>> Видимо в config.mk фичи надо паковать всю /%_lib/multipath, как в спеке
>>>> multipath-tools, т.к. там ещё и плагины. На стабильных бранчах в
>>>> установщике multipath рабочий, в обычной rootfs тоже.
>>> Кто-нибудь может проверить эту теорию ?
>> Проверил на предоставленном стенде на реальном железе. Теорию
>> подтверждаю. Виноват make-initrd, не установщик. Если хочешь, могу
>> скинуть личным письмом более подробную диагностику. Вот так не заработало:
>>
>> $ cat /etc/initrd.mk
>> # trying to detect modules and features to access to root volume
>> AUTODETECT = all
>> FEATURES += lvm multipath
>> PUT_DIRS += /lib64/multipath
> PUT_FILES += /lib64/multipath
>
>> А вот так заработало, корень системы на multipath:
>>
>> $ cat /etc/initrd.mk
>> # trying to detect modules and features to access to root volume
>> AUTODETECT = all
>> FEATURES += lvm
>> FEATURES += multipath
>> PUT_FILES += $(shell ls /lib64/multipath/*.so)
> Ок. Значит получается не хватает зависимости на lvm и плагинов.

Нет, я не уверен насчёт LVM, зависимость от установщика там была до 
правки /etc/initrd.mk. Помогло только добавление плагинов.


>
> С плагинами всегда боль. Что у multipath, что у plymouth они лежат в
> разных местах у разных вендоров. Я понимаю, что это только моя боль, но
> всё же. Нужно подумать как лучше паковать такое.
>
>> Т.е. ещё проблема с PUT_DIRS.
> PUT_DIRS работает также как PUT_FEATURE_DIRS. Это директория содержимое,
> которой нужно положить относительно корень образа.
>

Здесь непонятно, почему PUT_DIRS += ... не сработало, а PUT_FILES += ... 
работает. Там только плагины, больше ничего. И почему timestamp от 
начала эпохи UNIX.


>>> $ rpm -qa 'make-initrd*'
>> make-initrd-mdadm-2.31.0-alt4.noarch
>> make-initrd-luks-2.31.0-alt4.noarch
>> make-initrd-lvm-2.31.0-alt4.noarch
>> make-initrd-integrity-0.5.0-alt1.noarch
>> make-initrd-2.31.0-alt4.x86_64
>> make-initrd-devmapper-2.31.0-alt4.noarch
>> make-initrd-multipath-2.31.0-alt4.noarch
>>
>> $ sudo initrd-ls /boot/initrd-6.1.29-un-def-alt1.img |grep ./lib64/multipath
>>
>> (пусто при первом варианте). И не пусто при втором, и кстати даты странные:
>>
>> 1 drwxr-xr-x 2 0 0       0 Jan 01 03:00:00 1970 ./lib64/multipath
>> 1 -rw-r--r-- 1 0 0   14312 Jan 01 03:00:00 1970
>> ./lib64/multipath/libcheckcciss_tur.so
>> 1 -rw-r--r-- 1 0 0   14432 Jan 01 03:00:00 1970
>> ./lib64/multipath/libcheckdirectio.so
>> 1 -rw-r--r-- 1 0 0   14464 Jan 01 03:00:00 1970
>> ./lib64/multipath/libcheckemc_clariion.so
>> 1 -rw-r--r-- 1 0 0   14232 Jan 01 03:00:00 1970
>> ./lib64/multipath/libcheckhp_sw.so
>> 1 -rw-r--r-- 1 0 0   14456 Jan 01 03:00:00 1970
>> ./lib64/multipath/libcheckrdac.so
>> 1 -rw-r--r-- 1 0 0   14240 Jan 01 03:00:00 1970
>> ./lib64/multipath/libcheckreadsector0.so
>> 1 -rw-r--r-- 1 0 0   14408 Jan 01 03:00:00 1970
>> ./lib64/multipath/libchecktur.so
>> 1 -rw-r--r-- 1 0 0   30696 Jan 01 03:00:00 1970
>> ./lib64/multipath/libforeign-nvme.so
>> 1 -rw-r--r-- 1 0 0   14296 Jan 01 03:00:00 1970
>> ./lib64/multipath/libprioalua.so
>> 1 -rw-r--r-- 1 0 0   14288 Jan 01 03:00:00 1970
>> ./lib64/multipath/libprioana.so
>> 1 -rw-r--r-- 1 0 0   14008 Jan 01 03:00:00 1970
>> ./lib64/multipath/libprioconst.so
>> 1 -rw-r--r-- 1 0 0   14312 Jan 01 03:00:00 1970
>> ./lib64/multipath/libpriodatacore.so
>> 1 -rw-r--r-- 1 0 0   14304 Jan 01 03:00:00 1970
>> ./lib64/multipath/libprioemc.so
>> 1 -rw-r--r-- 1 0 0   14304 Jan 01 03:00:00 1970
>> ./lib64/multipath/libpriohds.so
>> 1 -rw-r--r-- 1 0 0   14304 Jan 01 03:00:00 1970
>> ./lib64/multipath/libpriohp_sw.so
>> 1 -rw-r--r-- 1 0 0   14304 Jan 01 03:00:00 1970
>> ./lib64/multipath/libprioiet.so
>> 1 -rw-r--r-- 1 0 0   14304 Jan 01 03:00:00 1970
>> ./lib64/multipath/libprioontap.so
>> 1 -rw-r--r-- 1 0 0   14312 Jan 01 03:00:00 1970
>> ./lib64/multipath/libpriopath_latency.so
>> 1 -rw-r--r-- 1 0 0   14304 Jan 01 03:00:00 1970
>> ./lib64/multipath/libpriorandom.so
>> 1 -rw-r--r-- 1 0 0   14304 Jan 01 03:00:00 1970
>> ./lib64/multipath/libpriordac.so
>> 1 -rw-r--r-- 1 0 0   14296 Jan 01 03:00:00 1970
>> ./lib64/multipath/libpriosysfs.so
>> 1 -rw-r--r-- 1 0 0   14312 Jan 01 03:00:00 1970
>> ./lib64/multipath/libprioweightedpath.so
>>
>>
>> -- 
>> WBR, Leonid Krivoshein.
>> _______________________________________________
>> Make-initrd mailing list
>> Make-initrd at lists.altlinux.org
>> https://lists.altlinux.org/mailman/listinfo/make-initrd


-- 
WBR, Leonid Krivoshein.


More information about the Make-initrd mailing list