[make-initrd] Multipath feature

Leonid Krivoshein klark.devel at gmail.com
Mon Jan 29 15:03:25 MSK 2024


Привет!


On 1/28/24 17:12, Alexey Gladkov wrote:
> On Wed, Jan 24, 2024 at 03:09:55AM +0300, Leonid Krivoshein wrote:
>> Доброго времени!
>>
>>
>> On 1/24/24 01:44, Konstantin Lepikhov wrote:
>>> Hi Vladimir!
>>>
>>> On 01/18/2024, at 04:54:58 PM you wrote:
>>>
>>>> Мне кажется, какая-то проблема со службой multipathd. Когда я пытаюсь
>>>> запустить ее руками в шелле initrd, она выкидывает ошибки:
>>>>
>>>> $ multipathd -d -s
>>>>
>>>> multipathd v0.9.3alt2: start up
>>>>
>>>> Checker 'tur' not found in /lib64/multipath
>>>>
>>>> failed to initialize checkers
>>>>
>>>> multipathd: shut down
>>>>
>>> Я не Алексей, но судя по ошибкам, как-то нет уверенности что multipath
>>> работает :) А вы пробовали проверить конфигурацию не для корневой системы,
>>> а какого-то другого раздела, чтобы убедится, что все работает как нужно
>>> без initrd?  Если проверка будет успешной, тогда уже можно смотреть что не
>>> так с фичей в mk-i.
>> Видимо в 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

А вот так заработало, корень системы на 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)

Т.е. ещё проблема с PUT_DIRS.

$ 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.


More information about the Make-initrd mailing list