this morning I -Syu'd. Among other things, the upgrade included mkinitcpio-0.12.0-3 and linux-3.7.4-1.
after the update, I discovered a new mkinicpio.conf.pacnew. It was the same as my existing mkinitcpio.conf, except that it was missing stata, pata and scsi in the HOOKS line. Since the wiki on mkinitcpio.conf says these are deprecated, I figured that was fine. So, I replaced my existing mkinitcpio.conf with the .pacnew.
Having done this, I figured I needed to run mkinitcpio (is this correct)?
When I did, (as a dry run), it failed with the following error:
==> ERROR: '/lib/modules/3.7.3-1-ARCH' is not a valid kernel module directory
Now, in my /lib/modules directory there is a directory called 3.7.4-1-ARCH. Presumably this reflects the fact that the Syu just upgraded to 3.7.4-1 linux.
Anyway, it appears that somewhere in the process, mkinitcpio thinks that my modules are in /lib/modules/3.7.3-1-ARCH, when in fact there is no such directory, and the modules are in /lib/modules/3.7.4-1-ARCH. How can I fix this?
Last edited by stuvjordan (2013-01-28 17:51:38)
Reboot after updating the kernel.
The upgrade of linux to 3.7.4-1 should have regenerated the initramfs, did it worked properly ? If so then it should be safe to reboot, which I guess is needed to have mkinitcpio find the new kernel libraries (at this time you run your previous kernel version but have installed a new one in between in another dir).
Edit: too late ;-)
Last edited by valr (2013-01-28 17:21:57)
So, just to be sure I do this right.
Should I reboot with my OLD mkinitcpio.conf, or the NEW one (i.e. the one without the deprecated hooks)?
actually, wait....of course it won't make any diference, because mkinitcpio.conf is only used by the mkinitcpio process, and that isn't run during the boot process, right?
Last edited by stuvjordan (2013-01-28 17:50:27)
mkinitcpio.conf alone doesn't do anything, it's used to generate initramfs. If you have a working initramfs, just reboot. It doesn't matter if you've already updated mkinitcpio.conf or not.
thanks, marking as solved.