Сломанные пакеты ядра, предотвращающие установку / обновление

4

Во-первых, я рассмотрел различные другие вопросы и ответы на эту тему, и они не исправили мою проблему, поэтому я не просто бросился без долгого времени в Google и здесь. Кроме того, нет отдельного загрузочного раздела, и есть много свободного места.

Я на 16.04, и я думаю, что произошло то, что мой ноутбук перезагрузился или разбился во время обновления. Конечно, это было неожиданно, когда я вернулся к нему, и теперь я не могу установить что-либо с apt-get. В моем стремлении к решению единственное серьезное изменение от того, где было в этот момент, - это то, что я пытался заставить удаление linux-generic, как предложено где-то, но хотя это удалось удалить пакет, он не будет переустанавливаться.

В настоящее время я смог вернуться к ядру 4.8.0-54-generic, который работает достаточно хорошо (сейчас я использую ноутбук).

Я начну с dpkg --audit:

The following packages have been unpacked but not yet configured.
They must be configured using dpkg --configure or the configure
menu option in dselect for them to work:
 linux-generic-hwe-16.04 Complete Generic Linux kernel and headers
 linux-image-extra-4.8.0-56-generic Linux kernel extra modules for version 4.8.
 linux-image-extra-4.8.0-58-generic Linux kernel extra modules for version 4.8.
 linux-image-generic-hwe-16.04 Generic Linux kernel image

The following packages are only half configured, probably due to problems
configuring them the first time. The configuration should be retried using
dpkg --configure <package> or the configure menu option in dselect:
 linux-image-4.8.0-53-generic Linux kernel image for version 4.8.0 on 64 bit x8
 linux-image-4.8.0-56-generic Linux kernel image for version 4.8.0 on 64 bit x8
 linux-image-4.8.0-58-generic Linux kernel image for version 4.8.0 on 64 bit x8

The following packages are only half installed, due to problems during
installation. The installation can probably be completed by retrying it;
the packages can be removed using dselect or dpkg --remove:
 linux-image-extra-4.4.0-83-generic Linux kernel extra modules for version 4.4.
 linux-image-extra-4.8.0-53-generic Linux kernel extra modules for version 4.8.

Выполнение for i in /boot/vmlinuz* ; do dpkg -S $i | egrep -v $(uname -r); done |cut -d- -f3-4 выходов:

4.4.0-53
4.8.0-53
4.8.0-56
4.8.0-58

dpkg в принципе не будет делать ничего, кроме некоторых удалений. Таким образом, dpkg --configure -a производит:

Setting up linux-image-4.8.0-53-generic (4.8.0-53.56~16.04.1) ...
Running depmod.
update-initramfs: deferring update (hook will be called later)
Not updating initrd symbolic links since we are being updated/reinstalled 
(4.8.0-53.56~16.04.1 was configured last, according to dpkg)
Not updating image symbolic links since we are being updated/reinstalled 
(4.8.0-53.56~16.04.1 was configured last, according to dpkg)
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.8.0-53-generic /boot/vmlinuz-4.8.0-53-generic
run-parts: executing /etc/kernel/postinst.d/dkms 4.8.0-53-generic /boot/vmlinuz-4.8.0-53-generic
Error! Your kernel headers for kernel 4.8.0-53-generic cannot be found.
Please install the linux-headers-4.8.0-53-generic package,
or use the --kernelsourcedir option to tell DKMS where it's located
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.8.0-53-generic /boot/vmlinuz-4.8.0-53-generic
update-initramfs: Generating /boot/initrd.img-4.8.0-53-generic
cp: cannot stat '/etc/fonts/conf.d/60-latin.conf': No such file or directory
E: /usr/share/initramfs-tools/hooks/plymouth failed with return 1.
update-initramfs: failed for /boot/initrd.img-4.8.0-53-generic with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-4.8.0-53-generic.postinst line 1052.
dpkg: error processing package linux-image-4.8.0-53-generic (--configure):
 subprocess installed post-installation script returned error exit status 2
Setting up linux-image-4.8.0-58-generic (4.8.0-58.63~16.04.1) ...
Running depmod.
update-initramfs: deferring update (hook will be called later)
The link /initrd.img is a dangling linkto /boot/initrd.img-4.8.0-56-generic
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.8.0-58-generic /boot/vmlinuz-4.8.0-58-generic
run-parts: executing /etc/kernel/postinst.d/dkms 4.8.0-58-generic /boot/vmlinuz-4.8.0-58-generic
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.8.0-58-generic /boot/vmlinuz-4.8.0-58-generic
update-initramfs: Generating /boot/initrd.img-4.8.0-58-generic
W: Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1_01.bin for module i915
cp: cannot stat '/etc/fonts/conf.d/60-latin.conf': No such file or directory
E: /usr/share/initramfs-tools/hooks/plymouth failed with return 1.
update-initramfs: failed for /boot/initrd.img-4.8.0-58-generic with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-4.8.0-58-generic.postinst line 1052.
dpkg: error processing package linux-image-4.8.0-58-generic (--configure):
 subprocess installed post-installation script returned error exit status 2
Setting up linux-image-4.8.0-56-generic (4.8.0-56.61~16.04.1) ...
Running depmod.
update-initramfs: deferring update (hook will be called later)
The link /initrd.img is a dangling linkto /boot/initrd.img-4.8.0-58-generic
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.8.0-56-generic /boot/vmlinuz-4.8.0-56-generic
run-parts: executing /etc/kernel/postinst.d/dkms 4.8.0-56-generic /boot/vmlinuz-4.8.0-56-generic
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.8.0-56-generic /boot/vmlinuz-4.8.0-56-generic
update-initramfs: Generating /boot/initrd.img-4.8.0-56-generic
W: Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1_01.bin for module i915
cp: cannot stat '/etc/fonts/conf.d/60-latin.conf': No such file or directory
E: /usr/share/initramfs-tools/hooks/plymouth failed with return 1.
update-initramfs: failed for /boot/initrd.img-4.8.0-56-generic with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-4.8.0-56-generic.postinst line 1052.
dpkg: error processing package linux-image-4.8.0-56-generic (--configure):
 subprocess installed post-installation script returned error exit status 2
dpkg: dependency problems prevent configuration of linux-image-generic-hwe-16.04:
 linux-image-generic-hwe-16.04 depends on linux-image-4.8.0-58-generic; however:
  Package linux-image-4.8.0-58-generic is not configured yet.

dpkg: error processing package linux-image-generic-hwe-16.04 (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of linux-image-extra-4.8.0-58-generic:
 linux-image-extra-4.8.0-58-generic depends on linux-image-4.8.0-58-generic; however:
  Package linux-image-4.8.0-58-generic is not configured yet.

dpkg: error processing package linux-image-extra-4.8.0-58-generic (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of linux-image-extra-4.8.0-56-generic:
 linux-image-extra-4.8.0-56-generic depends on linux-image-4.8.0-56-generic; however:
  Package linux-image-4.8.0-56-generic is not configured yet.

dpkg: error processing package linux-image-extra-4.8.0-56-generic (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of linux-generic-hwe-16.04:
 linux-generic-hwe-16.04 depends on linux-image-generic-hwe-16.04 (= 4.8.0.58.29); however:
  Package linux-image-generic-hwe-16.04 is not configured yet.

dpkg: error processing package linux-generic-hwe-16.04 (--configure):
 dependency problems - leaving unconfigured
Errors were encountered while processing:
 linux-image-4.8.0-53-generic
 linux-image-4.8.0-58-generic
 linux-image-4.8.0-56-generic
 linux-image-generic-hwe-16.04
 linux-image-extra-4.8.0-58-generic
 linux-image-extra-4.8.0-56-generic
 linux-generic-hwe-16.04

Обратите внимание, что он жалуется на отсутствие файлов заголовков для другого ядра от фактически запущенного (-53 вместо -54, оба из которых довольно далеки от самого высокого ядра, которое я установил до того, как этот беспорядок разразился).

apt-get -f install дает:

 Reading package lists... Done
 Building dependency tree       
 Reading state information... Done
 Correcting dependencies... Done
 The following packages were automatically installed and are no longer required:
   linux-headers-4.4.0-83 linux-headers-4.4.0-83-generic linux-image-4.4.0-83-generic linux-image-extra-4.4.0-83-generic
 Use 'sudo apt autoremove' to remove them.
 The following additional packages will be installed:
   libcogl-common libcogl-pango20 linux-image-4.4.0-83-generic
 Suggested packages:
   fdutils linux-doc-4.4.0 | linux-source-4.4.0 linux-tools
 The following packages will be REMOVED
   linux-image-extra-4.8.0-53-generic
 The following NEW packages will be installed
   libcogl-common libcogl-pango20 linux-image-4.4.0-83-generic
 0 to upgrade, 3 to newly install, 1 to remove and 78 not to upgrade.
 9 not fully installed or removed.
 Need to get 0 B/58.0 MB of archives.
 After this operation, 94.3 MB disk space will be freed.
 Do you want to continue? [Y/n] y
 (Reading database ... 389562 files and directories currently installed.)
 Removing linux-image-extra-4.8.0-53-generic (4.8.0-53.56~16.04.1) ...
 run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.8.0-53-generic /boot/vmlinuz-4.8.0-53-generic
 run-parts: executing /etc/kernel/postinst.d/dkms 4.8.0-53-generic /boot/vmlinuz-4.8.0-53-generic
 Error! Your kernel headers for kernel 4.8.0-53-generic cannot be found.
 Please install the linux-headers-4.8.0-53-generic package,
 or use the --kernelsourcedir option to tell DKMS where it's located
 run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.8.0-53-generic /boot/vmlinuz-4.8.0-53-generic
 update-initramfs: Generating /boot/initrd.img-4.8.0-53-generic
 cp: cannot stat '/etc/fonts/conf.d/60-latin.conf': No such file or directory
 E: /usr/share/initramfs-tools/hooks/plymouth failed with return 1.
 update-initramfs: failed for /boot/initrd.img-4.8.0-53-generic with 1.
 run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
 dpkg: error processing package linux-image-extra-4.8.0-53-generic (--remove):
  subprocess installed post-removal script returned error exit status 1
 Errors were encountered while processing:
  linux-image-extra-4.8.0-53-generic
 E: Sub-process /usr/bin/dpkg returned an error code (1)

Наконец, apt-get upgrade дает:

 Reading package lists... Done
 Building dependency tree       
 Reading state information... Done
 You might want to run ‘apt-get -f install’ to correct these.
 The following packages have unmet dependencies.
  libclutter-1.0-0 : Depends: libcogl-pango20 (>= 1.17.4) but it is not installed
                     Recommends: libclutter-1.0-common but it is not installed
  linux-image-extra-4.4.0-83-generic : Depends: linux-image-4.4.0-83-generic but it is not installed
 E: Unmet dependencies. Try using -f.

И вот где я. Там, похоже, не так много - только несколько пакетов ядра прикручиваются, но у меня плохое время, пытаясь его решить. Я бы предпочел не переустанавливать, поскольку на этой машине есть базы данных, которые будут потеряны, и у меня нет места для резервного копирования на данный момент. Они не критичны, но потребуется один-два дня, и в настоящий момент машина работает хорошо, за исключением того, что она не может быть обновлена.

Что мне делать дальше?

    
задан BobLong 10.07.2017 в 09:03
источник

1 ответ

0

Я действительно столкнулся с проблемой, что с тобой. И я думаю, я просто это исправлю. Смотрите скриншот здесь

Сначала загрузите и установите linux-headers-4.8.0-53_4.8.0- 53,56 ~ 16.04.1_all.deb .

Затем загрузите и установите linux-headers-4.8.0-53-generic_4.8.0-53.56 ~ 16.04.1_amd64.deb.

Попробуйте apt update , а затем apt upgrade .

UPDATE

Если вы нашли ошибку, например E: Sub-process /usr/bin/dpkg returned an error code (1) , просто выполните следующие действия.

  1. Запустить dpkg --remove --force-remove-reinstreq linux-image-extra-4.8.0-58-generic
  2. Затем запустите apt install linux-image-extra-4.8.0-58-generic
ответ дан Muslim Aswaja 15.07.2017 в 19:13