use*_*216 9 updates boot grub2 kernel
每当我更新 Linux 时,例如从 4.4.0.65 到 4.4.0.66 :
initrd.img-4.4.0.XX-generic在尝试最新版本之前,软件更新工具会下载大约 40 个以前的版本/boot 填上从版本 29 开始,我已经处理了很长时间。
我发现的唯一解决方法每次更新需要我一个小时。我在更新期间打开命令行,并在下载版本时删除它们。最终,更新工具满意它已下载所有以前的版本、下载最新版本并配置系统。
这是来自的输出 dpkg -l | grep linux-image
rc linux-image-3.19.0-15-generic 3.19.0-15.15 amd64 Linux kernel image for version 3.19.0 on 64 bit x86 SMP
rc linux-image-4.2.0-34-generic 4.2.0-34.39 amd64 Linux kernel image for version 4.2.0 on 64 bit x86 SMP
ii linux-image-4.2.0-35-generic 4.2.0-35.40 amd64 Linux kernel image for version 4.2.0 on 64 bit x86 SMP
ii linux-image-4.4.0-21-generic 4.4.0-21.37 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-22-generic 4.4.0-22.40 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-28-generic 4.4.0-28.47 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-31-generic 4.4.0-31.50 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-34-generic 4.4.0-34.53 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-36-generic 4.4.0-36.55 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-38-generic 4.4.0-38.57 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-42-generic 4.4.0-42.62 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-43-generic 4.4.0-43.63 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-45-generic 4.4.0-45.66 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-47-generic 4.4.0-47.68 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-51-generic 4.4.0-51.72 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-53-generic 4.4.0-53.74 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
iF linux-image-4.4.0-57-generic 4.4.0-57.78 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-59-generic 4.4.0-59.80 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-62-generic 4.4.0-62.83 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-63-generic 4.4.0-63.84 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-64-generic 4.4.0-64.85 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
ii linux-image-4.4.0-65-generic 4.4.0-65.86 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
iF linux-image-4.4.0-66-generic 4.4.0-66.87 amd64 Linux kernel image for version 4.4.0 on 64 bit x86 SMP
rc linux-image-extra-3.19.0-15-generic 3.19.0-15.15 amd64 Linux kernel extra modules for version 3.19.0 on 64 bit x86 SMP
rc linux-image-extra-4.2.0-34-generic 4.2.0-34.39 amd64 Linux kernel extra modules for version 4.2.0 on 64 bit x86 SMP
ii linux-image-extra-4.2.0-35-generic 4.2.0-35.40 amd64 Linux kernel extra modules for version 4.2.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-21-generic 4.4.0-21.37 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-22-generic 4.4.0-22.40 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-28-generic 4.4.0-28.47 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-31-generic 4.4.0-31.50 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-34-generic 4.4.0-34.53 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-36-generic 4.4.0-36.55 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-38-generic 4.4.0-38.57 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-42-generic 4.4.0-42.62 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-43-generic 4.4.0-43.63 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-45-generic 4.4.0-45.66 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-47-generic 4.4.0-47.68 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-51-generic 4.4.0-51.72 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-53-generic 4.4.0-53.74 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
iU linux-image-extra-4.4.0-57-generic 4.4.0-57.78 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-59-generic 4.4.0-59.80 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-62-generic 4.4.0-62.83 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-63-generic 4.4.0-63.84 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
ii linux-image-extra-4.4.0-64-generic 4.4.0-64.85 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
iF linux-image-extra-4.4.0-65-generic 4.4.0-65.86 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
iU linux-image-extra-4.4.0-66-generic 4.4.0-66.87 amd64 Linux kernel extra modules for version 4.4.0 on 64 bit x86 SMP
iU linux-image-generic 4.4.0.66.70 amd64 Generic Linux kernel image
Run Code Online (Sandbox Code Playgroud)
以下是“sudo apt-get autoremove”中的错误
Setting up linux-firmware (1.157.8) ...
update-initramfs: Generating /boot/initrd.img-4.4.0-65-generic
update-initramfs: Generating /boot/initrd.img-4.4.0-42-generic
Setting up linux-image-4.4.0-66-generic (4.4.0-66.87) ...
Internal Error: Could not find image (/boot/vmlinuz-4.4.0-66-generic)
dpkg: error processing package linux-image-4.4.0-66-generic (--configure):
subprocess installed post-installation script returned error exit status 2
dpkg: dependency problems prevent configuration of linux-image-extra-4.4.0-66-generic:
linux-image-extra-4.4.0-66-generic depends on linux-image-4.4.0-66-generic; however:
Package linux-image-4.4.0-66-generic is not configured yet.
dpkg: error processing package linux-image-extra-4.4.0-66-generic (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of linux-image-generic:
linux-image-generic depends on linux-image-4.4.0-66-generic; however:
Package linux-image-4.4.0-66-generic is not configured yet.
linux-image-generic depends on linux-image-extra-4.4.0-66-generic; however:
Package linux-image-extra-4.4.0-66-generic is not configured yet.
dpkg: error processing package linux-image-generic (--configure):
dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of linux-generic:
linux-generic depends on linux-image-generic (= 4.4.0.66.70); however:
Package linux-image-generic is not configured No apport report written because the error message indicates its a followup error from a previous failure.
No apport report written because the error message indicates its a followup error from a previous failure. No apport report written because MaxReports is reached already yet.
dpkg: error processing package linux-generic (--configure):
dependency problems - leaving unconfigured
Setting up linux-image-extra-4.4.0-65-generic (4.4.0-65.86) ...
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.4.0-65-generic /boot/vmlinuz-4.4.0-65-generic
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.4.0-65-generic /boot/vmlinuz-4.4.0-65-generic
update-initramfs: Generating /boot/initrd.img-4.4.0-65-generic
run-parts: executing /etc/kernel/postinst.d/pm-utils 4.4.0-65-generic /boot/vmlinuz-4.4.0-65-generic
run-parts: executing /etc/kernel/postinst.d/unattended-upgrades 4.4.0-65-generic /boot/vmlinuz-4.4.0-65-generic
run-parts: executing /etc/kernel/postinst.d/update-notifier 4.4.0-65-generic /boot/vmlinuz-4.4.0-65-generic
run-parts: executing /etc/kernel/postinst.d/zz-update-grub 4.4.0-65-generic /boot/vmlinuz-4.4.0-65-generic
Generating grub configuration file ...
Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
Found linux image: /boot/vmlinuz-4.4.0-65-generic
Found initrd image: /boot/initrd.img-4.4.0-65-generic
Found memtest86+ image: /memtest86+.elf
Found memtest86+ image: /memtest86+.bin
done
Errors were encountered while processing:
linux-image-4.4.0-66-generic
linux-image-extra-4.4.0-66-generic
linux-image-generic
linux-generic
E: Sub-process /usr/bin/dpkg returned an error code (1)
Run Code Online (Sandbox Code Playgroud)
小智 15
对我来说,这是 update-initramfs 和旧的、陈旧的文件在之前的内核升级期间没有从 /var/lib/initramfs-tools 中删除的问题(可能是由于 apt 之前由于某种原因或其他原因出错)。
cd /var/lib/initramfs-tools
Run Code Online (Sandbox Code Playgroud)
删除旧内核版本的文件(显然,不要删除当前内核版本的文件)。
cd /boot
Run Code Online (Sandbox Code Playgroud)
删除 /boot 中旧版本的 initrd。
然后运行:
/usr/sbin/update-initramfs -u -k all
Run Code Online (Sandbox Code Playgroud)
这应该会成功,并且只会在 /boot 中为您当前的内核版本创建(或更新)一个 initrd 文件。
我的问题是由于使用“sudo rm”错误地从启动中删除文件引起的。
第一个问题是旧包被自动加载并填充/boot。要自动删除旧软件包,我可以使用“sudo apt-get autoremove”。
但是,我仍然无法升级,并出现以下错误:
处理时遇到错误: linux-image-4.4.0-66-generic linux-image-extra-4.4.0-66-generic linux-image-generic linux-generic E:子进程 /usr/bin/dpkg 返回错误代码 (1)
我在这里读到类似的问题:Cannot apt Upgrade due to kernel package issues并按照答案部分中的步骤进行操作,如下所示...
我尝试“wajig删除linux-headers-4.4.0-66.generic”和“sudo apt-get升级”但它仍然返回:处理时遇到错误:linux-image-4.4.0-66-generic linux-image -extra-4.4.0-66-generic linux-image-generic
因此,我制作了 /var/lib/dpkg/status 的备份副本,然后在 gedit 中打开 /var/lib/dpkg/status 。
我在 /var/lib/dpkg/status 中搜索了“4.4.0-66”,并删除了以“Package: linux-image-4.4.0-66-generic”开头的整个部分,因为该部分的第二行说“状态:安装正常,半配置”。
之后,“sudo apt-get Upgrade”就能够正确安装最新的内核。