dracut Предупреждение: невозможно обработать initqueue

1983
Bemipefe

Я на Mageia2 x86_64 с ядром 3.3.8-desktop-2.mga2. Ядро загружается нормально.

Мой ноутбук старый, поэтому мне нужно старое ядро ​​для лучшей совместимости и функциональности. Проблема в том, что старое ядро ​​2.6.38.7-desktop-1.mga Mageia1 не загружается после обновления с Mageia1 до Mageia2.

Я попытался изменить параметр grub "root" с root = UUID ... (uuid верен, я проверил с помощью blkid) на root = / dev / sda1, но ошибка та же:

udevd[186]: could not find module by name='8139too'  dracut Warning: Unable to process initqueue  dracut Warning: /dev/... does not exist 

Отбрасывание для отладки оболочки

«...» означает sda1 или диск / метку, когда я использую uuid. С помощью оболочки отладки я обнаружил, что в каталоге / dev нет ни устройства / dev / sdaX, ни каталога / dev / sr0 или / dev / disk, и кажется, что физическое устройство не загружается при загрузке.

Я попытался также воссоздать initrd с помощью следующей команды:

dracut -l -f --hostonly /boot/initrd-2.6.38.7-desktop-1.mga.img 2.6.38.7-desktop-1.mga 

со следующим выводом:

I: *** Including module: dash *** I: *** Including module: i18n *** E: i18n_vars not set! Please set up i18n_vars in configuration file. E: No KEYMAP. I: *** Including module: rpmversion *** I: *** Including module: plymouth *** E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 I: *** Including module: kernel-modules *** E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: modprobe: tools/kmod-modprobe.c:550: print_action: Assertion `kmod_module_get_initstate(m) == KMOD_MODULE_BUILTIN' failed. E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 I: *** Including module: resume *** I: *** Including module: rootfs-block *** I: *** Including module: terminfo *** I: *** Including module: udev-rules *** I: Skipping udev rule: 50-udev.rules I: Skipping udev rule: 95-late.rules I: Skipping udev rule: 50-firmware.rules I: *** Including module: usrmount *** I: *** Including module: base *** I: *** Including module: fs-lib *** I: *** Including module: shutdown *** I: Skipping program kexec as it cannot be found and is flagged to be optional I: *** Including modules done *** I: Wrote /boot/initrd-2.6.38.7-desktop-1.mga.img: I: -rw------- 1 root root 6473315 Dec 24 17:57 /boot/initrd-2.6.38.7-desktop-1.mga.img 

Но во время загрузки исчезла только ошибка, связанная с моделью 8139.

Кто-то может мне помочь? Спасибо

2
Хорошо сконструированный первый вопрос. slm 11 лет назад 0

1 ответ на вопрос

0
Bemipefe

The problem is related the error reported in the libkmod error showed in the above post.

E: libkmod: index_mm_open: major version check fail: 65537 instead of 2953311319 

I don't know why but the modules provided in the folder /lib/modules/2.6.38.7-desktop-1.mga and attached to the initrd are not loaded correcly. Indeed with dracut boot i can see a lot of unknown symbol error for example when the module pata_atiixp is loaded that is used to access the disk and the related rootfs. So this is why the rootfs isn't mounted at boot time.

I tried to create an initrd without dracut the official adopted in Mageia2 with the old mkinitrd. I tried first with mkinitrd-mkinitrd command in Mageia2 and then with mkinitrd from an installation of Mageia1. Both ramdisk was built with modules pata_atiixp, ext4, ehci-hcd, ohci-hcd and others modules needed to boot.

The result was the same the kernel boot with this two initrd but when the kdm login screen is reached i can't use the keyboard and the mouse/touchpad or every hid attached to the usb ports. As work around i edited the xorg.conf file putting this line:

Option "AutoAddDevices" "False" 

and manually added two InputSection one for keyboard and one for synaptics touchpad. After reboot only the keyboard was enabled and at least i was able to login and discover that the wireless module, the sound card module a lot of others are not loaded. Trying to load manually this module give the above libkmod error. Probably the same happen to the keyboard modules and mouse modules that are not loaded and this is why i was unable to use them without the xorg.conf workaround.

However i discoverd also that suspend and hibernate won't work any more with the old kernel as in Mageia1. I started this fight because i thought that with old kernel this functionality probably will come back but this was not the result. The new library of Mageia2 used to the Power Management, especially e2ram and e2disk seem to be incompatible with my hardware doesn't matter if the kernel is 2.6.38 or 3.3.8 and now another question arise:

Why i'm not able to suspend or hibernate my laptop with the old kernel ?

and

what does mean the libkmod error ?

Maybe it's related the "version magic" of the modules ? But this is very strange because it's a precompiled kernel taken from the official repository and used without problem in Mageia1.