Всякий раз, когда я пытаюсь apt-get установить что-то или использовать Synaptic Package Manager для установки / удаления чего-либо, мне приходится ждать> 10 минут, и генерируется следующий отчет:
(Reading database ... 146959 files and directories currently installed.)
Removing multitail ...
Processing triggers for man-db ...
Setting up linux-image-2.6.32-41-generic (2.6.32-41.94) ...
Running depmod.
update-initramfs: Generating /boot/initrd.img-2.6.32-41-generic
Running postinst hook script /usr/sbin/update-grub.
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-45-generic
Found initrd image: /boot/initrd.img-2.6.32-45-generic
Found linux image: /boot/vmlinuz-2.6.32-43-generic
Found initrd image: /boot/initrd.img-2.6.32-43-generic
Found linux image: /boot/vmlinuz-2.6.32-42-generic
Found initrd image: /boot/initrd.img-2.6.32-42-generic
Found linux image: /boot/vmlinuz-2.6.32-41-generic
Found initrd image: /boot/initrd.img-2.6.32-41-generic
Found linux image: /boot/vmlinuz-2.6.32-21-generic
Found initrd image: /boot/initrd.img-2.6.32-21-generic
Found memtest86+ image: /boot/memtest86+.bin
done
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/dkms 2.6.32-41-generic /boot/vmlinuz-2.6.32-41-generic
run-parts: failed to exec /etc/kernel/postinst.d/dkms: Exec format error
run-parts: /etc/kernel/postinst.d/dkms exited with return code 1
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-2.6.32-41-generic.postinst line 1003.
dpkg: error processing linux-image-2.6.32-41-generic (--configure):
subprocess installed post-installation script returned error exit status 2
Setting up linux-image-2.6.32-42-generic (2.6.32-42.96) ...
Running depmod.
update-initramfs: Generating /boot/initrd.img-2.6.32-42-generic
Running postinst hook script /usr/sbin/update-grub.
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-45-generic
Found initrd image: /boot/initrd.img-2.6.32-45-generic
Found linux image: /boot/vmlinuz-2.6.32-43-generic
Found initrd image: /boot/initrd.img-2.6.32-43-generic
Found linux image: /boot/vmlinuz-2.6.32-42-generic
Found initrd image: /boot/initrd.img-2.6.32-42-generic
Found linux image: /boot/vmlinuz-2.6.32-41-generic
Found initrd image: /boot/initrd.img-2.6.32-41-generic
Found linux image: /boot/vmlinuz-2.6.32-21-generic
Found initrd image: /boot/initrd.img-2.6.32-21-generic
Found memtest86+ image: /boot/memtest86+.bin
done
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/dkms 2.6.32-42-generic /boot/vmlinuz-2.6.32-42-generic
run-parts: failed to exec /etc/kernel/postinst.d/dkms: Exec format error
run-parts: /etc/kernel/postinst.d/dkms exited with return code 1
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-2.6.32-42-generic.postinst line 1003.
dpkg: error processing linux-image-2.6.32-42-generic (--configure):
subprocess installed post-installation script returned error exit status 2
Setting up linux-image-2.6.32-43-generic (2.6.32-43.97) ...
Running depmod.
update-initramfs: Generating /boot/initrd.img-2.6.32-43-generic
Running postinst hook script /usr/sbin/update-grub.
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-45-generic
Found initrd image: /boot/initrd.img-2.6.32-45-generic
Found linux image: /boot/vmlinuz-2.6.32-43-generic
Found initrd image: /boot/initrd.img-2.6.32-43-generic
Found linux image: /boot/vmlinuz-2.6.32-42-generic
Found initrd image: /boot/initrd.img-2.6.32-42-generic
Found linux image: /boot/vmlinuz-2.6.32-41-generic
Found initrd image: /boot/initrd.img-2.6.32-41-generic
Found linux image: /boot/vmlinuz-2.6.32-21-generic
Found initrd image: /boot/initrd.img-2.6.32-21-generic
Found memtest86+ image: /boot/memtest86+.bin
done
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/dkms 2.6.32-43-generic /boot/vmlinuz-2.6.32-43-generic
run-parts: failed to exec /etc/kernel/postinst.d/dkms: Exec format error
run-parts: /etc/kernel/postinst.d/dkms exited with return code 1
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-2.6.32-43-generic.postinst line 1003.
dpkg: error processing linux-image-2.6.32-43-generic (--configure):
subprocess installed post-installation script returned error exit status 2
Setting up linux-image-2.6.32-45-generic (2.6.32-45.102) ...
Running depmod.
update-initramfs: Generating /boot/initrd.img-2.6.32-45-generic
Running postinst hook script /usr/sbin/update-grub.
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.32-45-generic
Found initrd image: /boot/initrd.img-2.6.32-45-generic
Found linux image: /boot/vmlinuz-2.6.32-43-generic
Found initrd image: /boot/initrd.img-2.6.32-43-generic
Found linux image: /boot/vmlinuz-2.6.32-42-generic
Found initrd image: /boot/initrd.img-2.6.32-42-generic
Found linux image: /boot/vmlinuz-2.6.32-41-generic
Found initrd image: /boot/initrd.img-2.6.32-41-generic
Found linux image: /boot/vmlinuz-2.6.32-21-generic
Found initrd image: /boot/initrd.img-2.6.32-21-generic
Found memtest86+ image: /boot/memtest86+.bin
done
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/dkms 2.6.32-45-generic /boot/vmlinuz-2.6.32-45-generic
run-parts: failed to exec /etc/kernel/postinst.d/dkms: Exec format error
run-parts: /etc/kernel/postinst.d/dkms exited with return code 1
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-2.6.32-45-generic.postinst line 1003.
dpkg: error processing linux-image-2.6.32-45-generic (--configure):
subprocess installed post-installation script returned error exit status 2
dpkg: dependency problems prevent configuration of linux-image-generic:
linux-image-generic depends on linux-image-2.6.32-45-generic; however:
Package linux-image-2.6.32-45-generic is not configured yet.
dpkg: error processing linux-image-generic (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of linux-generic:
linux-generic depends on linux-image-generic (= 2.6.32.45.52); however:
Package linux-image-generic is not configured yet.
dpkg: error processing linux-generic (--configure):
dependency problems - leaving unconfigured
Setting up linux-headers-2.6.32-45-generic (2.6.32-45.102) ...
No apport report written because MaxReports has already been reached
No apport report written because MaxReports has already been reached
No apport report written because MaxReports has already been reached
Examining /etc/kernel/header_postinst.d.
run-parts: executing /etc/kernel/header_postinst.d/dkms 2.6.32-45-generic /boot/vmlinuz-2.6.32-45-generic
run-parts: failed to exec /etc/kernel/header_postinst.d/dkms: Exec format error
run-parts: /etc/kernel/header_postinst.d/dkms exited with return code 1
Failed to process /etc/kernel/header_postinst.d at /var/lib/dpkg/info/linux-headers-2.6.32-45-generic.postinst line 110.
dpkg: error processing linux-headers-2.6.32-45-generic (--configure):
subprocess installed post-installation script returned error exit status 2
dpkg: dependency problems prevent configuration of linux-headers-generic:
linux-headers-generic depends on linux-headers-2.6.32-45-generic; however:
Package linux-headers-2.6.32-45-generic is not configured yet.
dpkg: error processing linux-headers-generic (--configure):
dependency problems - leaving unconfigured
No apport report written because MaxReports has already been reached
No apport report written because MaxReports has already been reached
Errors were encountered while processing:
linux-image-2.6.32-41-generic
linux-image-2.6.32-42-generic
linux-image-2.6.32-43-generic
linux-image-2.6.32-45-generic
linux-image-generic
linux-generic
linux-headers-2.6.32-45-generic
linux-headers-generic
E: Sub-process /usr/bin/dpkg returned an error code (1)
большая задержка при отображении этой строки:
update-initramfs: Generating /boot/initrd.img-2.6.32-XXX-generic
... где XXX в моем случае принимает значения от 41 до 45.
My uname -srv
сообщает:
Linux 2.6.32-45-generic #102-Ubuntu SMP Wed Jan 2 21:53:06 UTC 2013
Я пытался sudo apt-get install -f
, но это не решило мою проблему.
Я не знаю, помогает ли это, но последнее диалоговое окно, которое менеджер пакетов Synaptic показывает при удалении или добавлении пакета:
E: linux-image-2.6.32-41-generic: subprocess installed post-installation script returned error exit status 2
E: linux-image-2.6.32-42-generic: subprocess installed post-installation script returned error exit status 2
E: linux-image-2.6.32-43-generic: subprocess installed post-installation script returned error exit status 2
E: linux-image-2.6.32-45-generic: subprocess installed post-installation script returned error exit status 2
E: linux-image-generic: dependency problems - leaving unconfigured
E: linux-generic: dependency problems - leaving unconfigured
E: linux-headers-2.6.32-45-generic: subprocess installed post-installation script returned error exit status 2
E: linux-headers-generic: dependency problems - leaving unconfigured
О, и я нахожусь на Ubuntu 10.04LTS.
@Wolfer: команда выводит следующее:
> dpkg -l | grep linux-header
ii linux-headers-2.6.32-45 2.6.32-45.102 Header files related to Linux kernel version
iF linux-headers-2.6.32-45-generic 2.6.32-45.102 Linux kernel headers for version 2.6.32 on x
iU linux-headers-generic 2.6.32.45.52 Generic Linux kernel headers
Я не опытный пользователь (пока? :)) Эта виртуальная машина была предоставлена мне с работы, и я просто пытался «привести в порядок» вверх "/ персонализировать. Понятия не имею, когда это было создано (год назад? Может быть, больше?).
dpkg -l | grep linux-image
сообщает следующее:
> dpkg -l | grep linux-image
pi linux-image-2.6.32-21-generic 2.6.32-21.32 Linux kernel image for version 2.6.32 on x86
iF linux-image-2.6.32-41-generic 2.6.32-41.94 Linux kernel image for version 2.6.32 on x86
iF linux-image-2.6.32-42-generic 2.6.32-42.96 Linux kernel image for version 2.6.32 on x86
iF linux-image-2.6.32-43-generic 2.6.32-43.97 Linux kernel image for version 2.6.32 on x86
iF linux-image-2.6.32-45-generic 2.6.32-45.102 Linux kernel image for version 2.6.32 on x86
iU linux-image-generic 2.6.32.45.52 Generic Linux kernel image
@Wolfer: apt-get install linux-generic
дает мне:
[sudo] password for ubuntu:
Reading package lists... Done
Building dependency tree
Reading state information... Done
linux-generic is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 18 not upgraded.
8 not fully installed or removed.
After this operation, 0B of additional disk space will be used.
... и затем то же самое снова и снова, это начинается с:
Setting up linux-image-2.6.32-41-generic (2.6.32-41.94) ...
Running depmod.
update-initramfs: Generating /boot/initrd.img-2.6.32-41-generic
... and on and on ...
linux-image-generic
неправильно настроен в вашей системе. Это означает, что apt не сможет также установить / обновить / настроить другие ядра. Это приводит к ошибке, которую вы получаете. Есть несколько способов справиться с этим; проще всего было бы запустить apt-get install linux-image-generic
и посмотреть, что произойдет. Если это работает (я думаю, что должно), то выполните это, выполнив apt-get install -f
.
Если вы обнаружите больше ошибок в процессе, опубликуйте их здесь.
Хорошо, кажется, самый простой путь не сработает. Попробуйте запустить dpkg --unpack linux-image-generic
. Если вы получаете сообщение об ошибке, что такого пакета нет (что вероятно), запустите
wget http://ubuntu.secsup.org//pool/main/l/linux-meta/linux-image-generic_2.6.32.45.52_i386.deb
, а затем dpkg -i <path to the package you downloaded>
. Если есть какая-либо ошибка, опубликуйте ее здесь.
Вы столкнулись с проблемой цепочки зависимостей. Вы можете решить эту проблему, загрузив вручную и попытавшись установить каждый пакет, который упоминается в ошибках, которые вы получаете. В конце концов вы должны найти корень проблемы, и это должно привести к исправлению всех остальных пакетов.
Сообщение об ошибке
Failed to process /etc/kernel/postinst.d at
/var/lib/dpkg/info/linux-image-2.6.32-41-generic.postinst line 1003.
, похоже, указывает на то, что проблема в одном из сценариев в каталоге /etc/kernel/postinst.d
. Код, который пытается запустить сценарии в этом каталоге, читает что-то вроде строк (в файле /var/lib/dpkg/info/linux-image-2.6.32-41-generic.postinst
):
if (-d "/etc/kernel/postinst.d") {
print STDERR "Examining /etc/kernel/postinst.d.\n";
system ("run-parts --verbose --exit-on-error --arg=$version " .
"--arg=$realimageloc$kimage-$version " .
"/etc/kernel/postinst.d") &&
die "Failed to process /etc/kernel/postinst.d";
}
Просматривая некоторые строки перед сообщением об ошибке выше, вы можете выяснить, что виновником является пакет dkms
:
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/dkms 2.6.32-41-generic /boot/vmlinuz-2.6.32-41-generic
run-parts: failed to exec /etc/kernel/postinst.d/dkms: Exec format error
run-parts: /etc/kernel/postinst.d/dkms exited with return code 1
Exec format error
предполагает, что файл /etc/kernel/postinst.d/dkms
пытается запустить двоичный файл, скомпилированный для неправильной арки процессора (например, у вас 32-битный хост пытаясь запустить 64-битный двоичный файл). Ошибка Exec format error
означает, что ядро не может понять, как должен выполняться исполняемый файл (любой файл с установленным битом выполнения).
По моему опыту, если dkms
доставляет вам неприятности, правильное решение - это сделать sudo apt-get purge dkms && sudo apt-get install dkms
. То есть полностью удалите dkms из системы и заново установите его.