update-initramfs brakuje /lib/modules/4.4.0-13-generic

12

Właśnie zaktualizowałem linux-firmwarepakiet, a potem użyłem, $ sudo update-initramfs -u -k allale otrzymałem kilka błędów:

$ sudo update-initramfs -u -k all
[sudo] password for piotrek: 
update-initramfs: Generating /boot/initrd.img-4.4.0-34-generic
Warning: No support for locale: en_US.utf8
update-initramfs: Generating /boot/initrd.img-4.4.0-31-generic
Warning: No support for locale: en_US.utf8
update-initramfs: Generating /boot/initrd.img-4.4.0-13-generic
WARNING: missing /lib/modules/4.4.0-13-generic
Ensure all necessary drivers are built into the linux image!
depmod: ERROR: could not open directory /lib/modules/4.4.0-13-generic: No such file or directory
depmod: FATAL: could not search modules: No such file or directory
Warning: No support for locale: en_US.utf8
depmod: WARNING: could not open /var/tmp/mkinitramfs_LJbkti/lib/modules/4.4.0-13-generic/modules.order: No such file or directory
depmod: WARNING: could not open /var/tmp/mkinitramfs_LJbkti/lib/modules/4.4.0-13-generic/modules.builtin: No such file or directory

Jestem pewien, że nie mam jądra 4.4.0-13. Mógłbym to mieć jakiś czas temu, ale go usunąłem:

$ apt list --installed | grep linux-

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

linux-base/xenial,xenial,now 4.0ubuntu1 all [installed,automatic]
linux-firmware/now 1.159 all [installed,local]
linux-headers-4.4.0-31/xenial-updates,xenial-updates,xenial-security,xenial-security,now 4.4.0-31.50 all [installed]
linux-headers-4.4.0-31-generic/xenial-updates,xenial-security,now 4.4.0-31.50 amd64 [installed]
linux-headers-4.4.0-34/xenial-updates,xenial-updates,xenial-security,xenial-security,now 4.4.0-34.53 all [installed]
linux-headers-4.4.0-34-generic/xenial-updates,xenial-security,now 4.4.0-34.53 amd64 [installed]
linux-image-4.4.0-31-generic/xenial-updates,xenial-security,now 4.4.0-31.50 amd64 [installed]
linux-image-4.4.0-34-generic/xenial-updates,xenial-security,now 4.4.0-34.53 amd64 [installed]
linux-image-extra-4.4.0-31-generic/xenial-updates,xenial-security,now 4.4.0-31.50 amd64 [installed]
linux-image-extra-4.4.0-34-generic/xenial-updates,xenial-security,now 4.4.0-34.53 amd64 [installed]
linux-libc-dev/xenial-updates,xenial-security,now 4.4.0-34.53 amd64 [installed]
linux-sound-base/xenial,xenial,now 1.0.25+dfsg-0ubuntu5 all [installed]
syslinux-common/xenial,xenial,now 3:6.03+dfsg-11ubuntu1 all [installed]
syslinux-legacy/xenial,now 2:3.63+dfsg-2ubuntu8 amd64 [installed]

Jak naprawić te update-initramfsbłędy?

piotrekkr
źródło

Odpowiedzi:

21

Narzędzie update-initramfswygląda var/lib/initramfs-tools. Znajdziesz tam wpis dla tego starego jądra. Usuwanie:

sudo rm /var/lib/initramfs-tools/4.4.0-13-generic

pozbędzie się tego błędu

(problem z ustawieniami regionalnymi to coś zupełnie innego ...)

Zanna
źródło
2
Ok, dziękuję, zadziałało. I naprawiłem ustawienia regionalne za pomocą sudo locale-gen --purge --no-archivetej odpowiedzi askubuntu.com/a/100519/56083
piotrekkr
Czy ktoś wie, w czym tworzy pliki /var/lib/initramfs-tools? I kiedy? I dlaczego? Chciałbym wiedzieć, co powoduje problem.
mpb
@mpb afaik, jest tworzony przez update-initramfs , który jest wywoływany przez APT (lub dpkg?) podczas aktualizacji jądra lub sterownika. Ale imho, powinieneś zadać o to pytanie
Zanna
@Zanna, wyjąłem wszystkie pliki /var/lib/initramfs-toolsi uruchomiłem update-initramfs. Natychmiast wyszedł. Wierzę, że zaktualizuje pliki, które już tam istnieją, ale nie utworzy plików, które nie istnieją. Dodatkowo będzie próbował budować tylko initrddla wersji jądra, w których są już pliki /var/lib/initramfs-tools. Gdybym troszczył się o to, zadałbym osobne pytanie, ale mam inne zadania do wykonania. Dzięki!
mpb
nie rozwiązałem tego dla mnie. ten sam problem tutaj, ale nie ma starego jądra.
Chris