Tidak dapat memulai archlinux setelah pembaruan: Tidak dapat menemukan uuid

10

Saya memperbarui archlinux dengan "pacman -Syu" dan kemudian ketika saya restart, sistem tidak dapat memulai. Ini laporannya:

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

Dalam shell itu keyboard saya tidak berfungsi.

Saya mencoba dengan livecd dari archlinux: memasang partisi dan menggunakan chroot. Saya memeriksa uuid dari partisi root di "/ etc / fstab". Ini adalah fstab saya:

# /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

Dan itu adalah hasil dari "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

Saya telah memperbarui sistem lagi dengan "pacman -Syu" dan saya mencoba untuk membuat "mkinitcpio -p linux", tetapi itu belum menyelesaikan masalah (terlepas dari hasil perintah itu ok). Ini laporannya:

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

Saya mencoba mengubah urutan HOOKS di "/etc/mkinitcpio.conf". Tapi itu tidak berhasil. Ini adalah pesanan saat ini:

base udev block autodetect modconf filesystems keyboard fsck

"uname -r" mengembalikan:

4.11.7-1-ARCH

"pacman -Q linux" mengembalikan:

linux 4.11.9-1

File warrning "/lib/modules/4.11.9-1-ARCH/modules.devnam" ada.

Saya mencoba menginstal dan menggunakan "linux-lts" tetapi hasilnya sama. Saya menggunakan grub dan saya mencoba mengkonfigurasi ulang juga.

Apa yang dapat saya?

Lifka
sumber
3
/boottidak dipasang ketika Anda menjalankan peningkatan; maka modul yang hilang. Masuk, pastikan semuanya sudah terpasang dengan benar dan jalankan kembali pembaruan.
jasonwryan
Itulah masalahnya ... Saya tidak bisa memastikan bagaimana saya tidak menyadarinya. Terima kasih banyak, jasonwryan.
Lifka

Jawaban:

10

Saya baru saja lupa me-mount boot (terima kasih, jasonwryan).

Solusi untuk masalah ini, dalam kasus saya adalah:

  1. Gunakan livecd untuk me-mount semua partisi dan gunakan chroot.
  2. Memperbarui:

    pacman -Syu

  3. Regenerasi initramfs menggunakan:

    mkinitcpio -p linux

  4. Jika Anda menggunakan grub:

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

  5. Mengulang kembali.

Lifka
sumber
3
FYI digunakan arch-chrootpada lengkungan bukan hanyachroot
Nepoxx
Sebagai tambahan untuk jawaban ini: seandainya fallback initramfskarya dan Anda menggunakannya untuk perbaikan, gunakan /boot/grub/grub.cfg. Maka Anda juga tidak perlu arch-chrootatau mem-flash USB Anda jika Anda menghapusnya. (atau hilang :)
Linux4win
Bekerja untuk saya juga. Terima kasih sobat.
Marcin
0

Inilah yang bekerja untuk saya (antergos, dual boot dengan windows 10). Ini sedikit modifikasi dari jawaban di atas.

  1. Gunakan live usb untuk memasang root dan mem-boot partisi. Perintah untuk ini ada di sini . Dalam hal ini, partisi boot saya adalah partisi EFI-boot (gemuk).
  2. Memperbarui:

    pacman -Syu

  3. Regenerasi initramfs menggunakan:

    mkinitcpio -p linux

  4. Jika Anda menggunakan grub:

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

  5. Mengulang kembali.

Fleming
sumber
1
Ya, jawaban Anda beberapa kata lebih panjang dari jawaban Lifka. Selain beberapa kata, apa yang Anda tambahkan untuk membuat posting Anda menonjol sebagai jawaban baru dan berbeda?
G-Man Mengatakan 'Reinstate Monica'