Impossible de démarrer archlinux après la mise à jour: impossible de trouver uuid

10

J'ai mis à jour archlinux avec "pacman -Syu" et puis quand j'ai redémarré, le système ne peut pas démarrer. Voici le rapport:

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

Dans ce shell, mon clavier ne fonctionne pas.

J'essaie avec un livecd d'archlinux: monter les partitions et utiliser chroot. Je vérifie l'uuid de la partition racine dans "/ etc / fstab". C'est mon 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

Et c'est le résultat de "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

J'ai de nouveau mis à jour le système avec "pacman -Syu" et j'ai essayé de faire "mkinitcpio -p linux", mais cela n'a pas résolu le problème (malgré le résultat de la commande c'est ok). Voici le rapport:

==> 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

J'ai essayé de changer l'ordre des CROCHETS dans "/etc/mkinitcpio.conf". Mais ça ne marche pas. Voici l'ordre actuel:

base udev block autodetect modconf filesystems keyboard fsck

"uname -r" renvoie:

4.11.7-1-ARCH

"pacman -Q linux" renvoie:

linux 4.11.9-1

Le fichier de mise en garde "/lib/modules/4.11.9-1-ARCH/modules.devnam" existe.

J'ai essayé d'installer et d'utiliser "linux-lts" mais le résultat est le même. J'utilise grub et j'ai essayé de le reconfigurer aussi.

Que puis-je faire?

Lifka
la source
3
/bootn'a pas été monté lorsque vous avez exécuté la mise à niveau; d'où les modules manquants. Chroot, assurez-vous que tout est correctement monté et relancez la mise à jour.
jasonwryan
Voilà le problème ... Je ne peux pas comprendre comment je ne l'ai pas réalisé. Merci beaucoup, jasonwryan.
Lifka

Réponses:

10

J'ai juste oublié de monter la botte de montage (merci, jasonwryan).

La solution à ce problème, dans mon cas, était:

  1. Utilisez un livecd pour monter toutes les partitions et utilisez chroot.
  2. Mise à jour:

    pacman -Syu

  3. Régénérez les initramfs en utilisant:

    mkinitcpio -p linux

  4. Si vous utilisez grub:

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

  5. Redémarrer.

Lifka
la source
3
Pour info arch-chrootsur arc au lieu de simplementchroot
Nepoxx
En complément à cette réponse: au cas où le fallback initramfstravaille et vous l' utilisez pour la réparation, l' utilisation /boot/grub/grub.cfg. Ensuite, vous n'avez pas non plus à arch-chrootflasher votre clé USB si vous l'essuyez. (ou perdu :)
Linux4win
Fonctionne aussi pour moi. Merci mon pote.
Marcin
0

Voici ce qui a fonctionné pour moi (antergos, dual booted avec windows 10). C'est une légère modification de la réponse ci-dessus.

  1. Utilisez une clé USB en direct pour monter les partitions racine et de démarrage. Les commandes pour ceux-ci sont ici . Dans ce cas, ma partition de démarrage était la partition EFI-boot (fat).
  2. Mise à jour:

    pacman -Syu

  3. Régénérez les initramfs en utilisant:

    mkinitcpio -p linux

  4. Si vous utilisez grub:

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

  5. Redémarrer.

Flamand
la source
1
Oui, votre réponse est plus longue que la réponse de Lifka. Mis à part une certaine verbosité, qu'avez-vous ajouté pour que votre message se démarque comme une nouvelle réponse différente?
G-Man dit `` Réintègre Monica ''