14.04 Dpkg 发现内核:/memtest86+.bin 问题(更新 grub 期间冻结)

14.04 Dpkg 发现内核:/memtest86+.bin 问题(更新 grub 期间冻结)

希望我没有违反任何规则,因为我为遇到的问题开设了新主题。相信我,我尝试浏览 askubuntu 和许多其他网站,但到目前为止,提供的解决方案都对我不起作用 - 希望你们能帮助我解决这个问题。

今天早些时候,我将我的 Ubuntu 服务器升级到 14.04:

$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 14.04 LTS
Release:        14.04
Codename:       trusty

我遇到了以下问题:

E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem. 

如果我运行该命令,它会卡在:找到内核:/memtest86+.bin

请告知如何进行(我尝试了多种解决方案,包括update-grub,以及许多其他解决方案,但都没有起作用)。

$ sudo dpkg --configure -a
Processing triggers for initramfs-tools (0.103ubuntu4) ...
update-initramfs: Generating /boot/initrd.img-3.13.0-24-generic
Setting up mdadm (3.2.5-5ubuntu4) ...
debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable
dpkg: error processing package mdadm (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 mdadm

重新启动电脑并运行后sudo dpkg --configure -a,我又回到了原来的问题:

Setting up mdadm (3.2.5-5ubuntu4) ...
 Removing any system startup links for /etc/init.d/mdadm-raid ...
update-initramfs: deferring update (trigger activated)
update-grub is /usr/sbin/update-grub
Searching for GRUB installation directory ... found: /boot/grub
Searching for default file ... found: /boot/grub/default
Testing for an existing GRUB menu.lst file ... found: /boot/grub/menu.lst
Searching for splash image ... none found, skipping ...
Found kernel: /vmlinuz-3.13.0-24-generic
Found kernel: /vmlinuz-3.2.0-61-generic
Found kernel: /vmlinuz-3.2.0-48-generic
Found kernel: /vmlinuz-3.2.0-24-generic
Found kernel: /vmlinuz-3.0.0-12-server
Found kernel: /vmlinuz-2.6.28-11-server
Found kernel: /vmlinuz-2.6.27-14-server
Found kernel: /vmlinuz-2.6.24-24-server
Found kernel: /vmlinuz-2.6.22-16-server
Found kernel: /vmlinuz-2.6.22-14-server
Found kernel: /memtest86+.bin

Uname -r返回

3.13.0-24-generic

经过一番麻烦,解决了 dpkg --audit,然后dpkg --configure <packagename>针对列出的软件包

答案1

在 Hyper-V 虚拟化的情况下可能会发生此问题(今天发生在我身上)。

在这种情况下,答案是通过打开配置文件来禁用 grub 中的 OS-probbing:

sudo nano /etc/default/grub

并添加以下行:

GRUB_DISABLE_OS_PROBER=true

将更改保存到 /etc/default/grub 后,重建 grub(在带有 Ubuntu 15.04 VM 的 Windows 10 Hyper-V 上运行):

sudo update-grub

然后 apt-get update 或者其他的:

sudo apt-get update

答案2

经过一番周折,终于解决了

dpkg——审计
# 进而
dpkg——配置
# 列出的软件包

答案3

我的问题是,我在 Hyper-V VM 上安装了 Ubuntu,并且选中了启用动态内存(这是默认设置)。一旦我将其关闭,问题就不再存在了。

答案4

我在 Ubuntu 14.04 中遇到了同样的问题,它是从更早的版本(如 Ubuntu 10.04)升级而来的。

注意:这不是一个通用的解决方案,这只是对我有用的方法。

解决这个问题的方法是将 grub 从 0.97 更新到 2。

细节:

dpkg --audit

显示 mdadm 存在问题,无法使用 grub 0.97 进行更新。

以下是错误报告: https://bugs.launchpad.net/ubuntu/+source/mdadm/+bug/1285312

相关内容