Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#78499 - mkinitcpio and kernel changes
Attached to Project:
Arch Linux
Opened by David Summers (summers) - Friday, 12 May 2023, 13:31 GMT
Last edited by Toolybird (Toolybird) - Saturday, 13 May 2023, 21:13 GMT
Opened by David Summers (summers) - Friday, 12 May 2023, 13:31 GMT
Last edited by Toolybird (Toolybird) - Saturday, 13 May 2023, 21:13 GMT
|
DetailsDescription: mkinitpio -p linux on old systems fails with looking for modules in /lib
Additional info: * package version(s) : mkinitcpio-35.2-1 * config and/or log files etc. : /etc/mkintcpio.d/linux.preset * link to upstream bug report, if any Steps to reproduce: On my ten year old system, on update (first in 4 months or so) and mkinitcpio -p linux fails as it looks for modules in /lib/modules. passing "-r /usr/lib" and same error. The wiki pages don't help, it does say what the prefered linux.preset is. nowhere does it say where to change the kernel module location. This has made two of my machines unbootable. It seems connected to changes in where the kernel lives in the kernel package, as thats moved from /boot. |
This task depends upon
Closed by Toolybird (Toolybird)
Saturday, 13 May 2023, 21:13 GMT
Reason for closing: Not a bug
Additional comments about closing: See comments
Saturday, 13 May 2023, 21:13 GMT
Reason for closing: Not a bug
Additional comments about closing: See comments
Actual errors, and actual changes you made to linux.preset, or this is useless.
[1] https://wiki.archlinux.org/title/System_maintenance#Upgrading_the_system
cat /etc/mkinitcpio.d/linux.preset
# mkinitcpio preset file for the 'linux' package
ALL_config="/etc/mkinitcpio.conf"
ALL_kver="/boot/vmlinuz-linux"
ALL_microcode=(/boot/*-ucode.img)
PRESETS=('default' 'fallback')
default_image="/boot/initramfs-linux.img"
fallback_image="/boot/initramfs-linux-fallback.img"
fallback_options="-S autodetect"
-----------------------------
mkinitcpio -p linux
==> Building image from present: /etc/mkinitcpio/linux.preset: 'default'
-> -k /boot/linuz-linux -c /etc/mkinicpio.conf -g /boot/initramfs-linux.img --microcode /boot/*-ucode.img
==> ERROR: '/lib/modules/6.3.1-arch2-1' in not a valid kernel module directory
and the same for fall back
and the same for mkinitcpio -r /usr -p linux
Now I'm made no changes here from how it was set up it was installed.
I don't agree that /lib should be a link to /usr/lib - or rather that that should solve why mkinitcpio is looking in /lib
This computer is on 24/7 - I update when I can, and fix changes when I can, so you are saying that arch isn't what I should be using, I disagree.
_d_kmoduledir="$_optmoduleroot/lib/modules/$KERNELVERSION"
_optmoduleroot doesnt seem to be set by -r, and the default maybe should be /usr
Is that symlink not present on your system? What is the output `pacman -Qikk filesystem`?
You can disagree all you want, but without that symlink, a lot of things will fail.