11

I updated archlinux with "pacman -Syu" and then when I've restart, the system can't start. This is the report:

Warning: /lib/modules/4.11.9-1-ARCH/modules.devname not found - ignoring
version 232
Error: device 'UUID=b5a9a977-e9a7-4d3d-96a9-dcf9c3a9010d' not found. Skipping fsck.
Error: can't find UUID=b5a9a977-e9a7-4d3d-96a9-dcf9c3a9010d 
You are now being dropped into a emergency shell.
Can't access tty: job control turned off

In that shell my keyboard doesn't work.

I'm trying with a livecd of archlinux: mounting the partitions and using chroot. I check the uuid of the root partition in "/etc/fstab". It's my fstab:

# /dev/sda2 UUID=b5a9a977-e9a7-4d3d-96a9-dcf8c3a9010d   /           ext4        rw,relatime,data=ordered    0 1  
# /dev/sda1 UUID=FBA9-977B          /boot       vfat        rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro 0 2  
# /dev/sda4 UUID=a43b8426-c93a-4f32-99c8-9dd5cf645373   /home       ext4        rw,relatime,data=ordered    0 2  
# /dev/sda3 UUID=9eec735e-3157-4e0e-a5c6-ef3a7c674201   none        swap        defaults    0

And it's the result of "lsblk -f"

NAME   FSTYPE   LABEL       UUID                                 MOUNTPOINT
loop0  squashfs                                                  /run/archiso/sfs/airootfs
sda                                                              
├─sda1 vfat                 FBA9-977B                            
├─sda2 ext4                 b5a9a977-e9a7-4d3d-96a9-dcf8c3a9010d /mnt
├─sda3 swap                 9eec735e-3157-4e0e-a5c6-ef3a7c674201 
└─sda4 ext4                 a43b8426-c93a-4f32-99c8-9dd5cf645373 /mnt/home

I've updated the system again with "pacman -Syu" and I tried to make "mkinitcpio -p linux", but it haven't solved the problem (in spite of the result of the command it's ok). This is the report:

==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
  -> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> Starting build: 4.11.9-1-ARCH
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [block]
  -> Running build hook: [block]
WARNING: Possubly missing firmware for module: aic94xx
WARNING: Possubly missing firmware for module: wd719x
  -> Running build hook: [autodetect]
  -> Running build hook: [modconf]
  -> Running build hook: [filesystems]
  -> Running build hook: [keyboard]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-linux.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
  -> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> Starting build: 4.11.9-1-ARCH
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [block]
WARNING: Possubly missing firmware for module: aic94xx
WARNING: Possubly missing firmware for module: wd719x
  -> Running build hook: [modconf]
  -> Running build hook: [filesystems]
  -> Running build hook: [keyboard]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-linux-fallback.img
==> Image generation successful

I tried to change the order of HOOKS in "/etc/mkinitcpio.conf". But it doesn't work. This is the current order:

base udev block autodetect modconf filesystems keyboard fsck

"uname -r" returns:

4.11.7-1-ARCH

"pacman -Q linux" returns:

linux 4.11.9-1

The file of warrning "/lib/modules/4.11.9-1-ARCH/modules.devnam" exists.

I tried to install and use "linux-lts" but the result it's the same. I use grub and I tried to reconfigure it too.

What can I do?

2
  • 3
    /boot wasn't mounted when you ran the upgrade; hence the missing modules. Chroot in, make sure everything is correctly mounted and re-run the update.
    – jasonwryan
    Commented Jul 10, 2017 at 0:49
  • That's the problem... I can't undertand how I did not realize. Thank you so much, jasonwryan.
    – Lifka
    Commented Jul 10, 2017 at 2:04

2 Answers 2

13

I just forgot mount boot (thank you, jasonwryan).

The solution to this problem, in my case was:

  1. Use a livecd to mount all partitions and use chroot.
  2. Update:

    pacman -Syu

  3. Regenerate initramfs using:

    mkinitcpio -p linux

  4. If you use grub:

    grub-mkconfig -o /mnt/boot/grub/grub.cfg

  5. Restart.

3
  • 4
    FYI use arch-chroot on arch instead of simply chroot
    – Nepoxx
    Commented Apr 3, 2018 at 14:28
  • As an addition to this answer: in case the fallback initramfs works and you use it for repair, use /boot/grub/grub.cfg. Then you also don't have to arch-chroot or flash your USB if you wiped it. (or lost it :)
    – ummw
    Commented May 30, 2019 at 14:58
  • Works for me as well. Thanks mate.
    – Marcin
    Commented Oct 12, 2019 at 4:22
-1

Here is what worked for me (antergos, dual booted with windows 10). It's a slight modification of the above answer.

  1. Use a live usb to mount root and boot partitions. The commands for these are here. In this case, my boot partition was the the EFI-boot (fat) partition.
  2. Update:

    pacman -Syu

  3. Regenerate initramfs using:

    mkinitcpio -p linux

  4. If you use grub:

    grub-mkconfig -o /boot/grub/grub.cfg

  5. Restart.

1
  • 1
    Yes, your answer is a few words longer than Lifka's answer. Aside from some verbosity, what have you added to make your post stand out as a new, different answer? Commented Dec 19, 2018 at 14:03

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .