1

I came across the problem after upgrading my system through pacman -Syu.

During the upgrade, I encountered a python package conflict which caused the upgrade transaction aborted. So I resolved the conflict: removing the python package by pip uninstall pkg_name, then retried pacman -Syu. This time no more errors.

Then I rebooted my system and the problem occurred:

Warning: /lib/modules/4.19.1-arch1-1-ARCH/modules.devname not found - ignoring
starting version 239
/dev/nvme0n1p2: clean, 968023/31227904 files, 27066236/124895569 blocks
mount: /new_root: unknown filesystem type 'ext4'
You are now being dropped into an emergency shell,
sh: can't access tty: job control turned off
[rootfs] #

BTW: As the warning indicating, I was upgrading kernel 4.18 to 4.19

  • Edit your question with the output of pacman -Q linux && uname -r. – jasonwryan Nov 15 '18 at 6:29
  • @jasonwryan Sorry I can't make it. Since the last reboot, I can no longer login in my system, blocked by the Warning posted above. However I do remember that before the last reboot I executed uname -r and the ouput kernel version was still 4.18.xxx – streethacker Nov 15 '18 at 6:36
  • You need to chroot in, make sure / and /boot are mounted and then reinstall linux. – jasonwryan Nov 15 '18 at 6:37
2

If the update was aborted and the kernel was in the process of being updated, you probably still have the initramfs of the the old kernel in your /boot whilst having the new kernel installed which can prevent booting. This can also happen on a freshly installed system if you forgot to properly mount the /boot partition.

The easiest way to fix this would be to boot with an archlinux installation media, perform a chroot and reinstall the kernel using pacman

# mount /dev/yourrootdisk /mnt
# mount /dev/yourbootdisk /mnt/boot # if needed
# mount /dev/yourefipartition /mnt/boot/EFI # if you use EFI (optionnal)
# arch-chroot /mnt
# pacman -S linux

The files that should be modified are /boot/initramfs-linux.img and /boot/initramfs-linux-fallback.img so you probably don't need to mount the EFI partition

If for some reason you can't use pacman, you can also launch mkinitcpio by hand to regenerate the initramfs to use the new kernel

  • Your answer is correct, but please do not advise people to -Sy $package, it is terrible advice and just leads to breakage. – jasonwryan Nov 15 '18 at 17:01
  • indeed good point, edited – Fredszaq Nov 19 '18 at 13:40
0

The text can't access tty: job control turned off is just a notification by the shell that job control doesn't work, that means that you can't stop a program with Ctrl+C or Ctrl+Z.

The problem is visible in the lines above, and maybe what is above that lines:

Warning: /lib/modules/4.19.1-arch1-1-ARCH/modules.devname not found - ignoring
mount: /new_root: unknown filesystem type 'ext4'

It seems the kernel modules are not found, and therefor no module ext4, and therefor no mounting the ext4 root file system.

Most distributions don't delete the old kernel in case there is something wrong with the new one, so try to boot the previous kernel.

If that doesn't work, boot a live system and either install the previous kernel with matching modules, or the new one, or any kernel that works.

It's also possible that there was just something wrong with the creation of the initrd file system, that ext4 was not included for some reasons. In this case, you can boot a live system, recreate initrd with ext4 and reboot.

  • Arch does remove the old kernel. OP's issue is that /boot wasn't mounted during that upgrade so the installed modules do not match the kernel. – jasonwryan Nov 15 '18 at 19:47
  • @jasonwryan If /boot was not mounted, then the matching kernel and initrd should be in the root file system, so it should be possible to load them from there. – RalfFriedl Nov 16 '18 at 6:10
  • Not necessarily; actual /boot may get mounted over the top or the initrd could be corrupted. The only safe approach is to chroot and fix it. – jasonwryan Nov 16 '18 at 6:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.