I am attempting to repair and upgrade an Arch Linux system. I boot off of a Live USB which is a newer version than the original install. Then I mount the sda and chroot to its mount point. When I run mkinitcpio -p linux, I get the error from the title:
'/lib/modules/4.9.8-1-ARCH' is not a valid kernel module directory
lib/modules/ has 4.13.3-1-ARCH. How do I tell mkinitcpio to use this directory instead?
uname -r && pacman -Q linux?4.12.8-2-ARCHandlinux 4.13.3-1/bootwasn't mounted when you upgraded your kernel. Make sure it is, re-run the kernel upgrade and you should be good.