如何以不良状态删除软件包,软件中心死机,无突触


47

当“更新管理器”开始运行时,它告诉我需要进行“部分升级”,当我开始进行升级时,它告诉我

Remove package in bad state 

The package 'linux-headers-3.0.0-19' is in an inconsistent state 
and needs to be reinstalled, but no archive can be found for it. 
Do you want to remove this package now to continue?"

当我单击“是”时,程序将关闭。我试图进入软件中心并重新安装linux-headers-3.0.0-19刚冻结的ubuntu软件中心。

目前,我无法运行“ Synaptic”或删除任何软件。


2
您是否尝试过“ sudo apt-get --purge remove <package>”的sudo命令,然后尝试从CLI重新安装?
daslinkard '04

我尝试了一下,该命令返回了以下响应:“ E:需要重新安装软件包linux-headers-3.0.0-19,但是我找不到它的存档。”
GothicMonster'4

你尝试了sudo apt-get install -f <package>吗?
Jeff Welling 2012年

我收到相同的消息:“ E:需要重新安装软件包linux-headers-3.0.0-19,但是找不到它的存档。”
GothicMonster 2012年

试试这个家伙的解决方案... askubuntu.com/questions/122699/…–
Lie

Answers:


56

试试这个,我希望它能起作用:

  1. 备份以下内容/var/lib/dpkg/status

    sudo cp /var/lib/dpkg/status /var/lib/dpkg/status.bkup
    
  2. 开放时间/var/lib/dpkg/status

    sudo nano /var/lib/dpkg/status
    
  3. 在文件中搜索对该包名称的任何引用(即linux-headers-3.0.0-19),然后小心删除该条目。请勿删除其他任何内容。保存文件并退出。

  4. sudo apt-get update

这应该可以解决问题。


有用!安装openfire时我无法打开软件中心,并且您的解决方案有效!
emeraldhieu 2012年

gedit/var/lib/dpkg/status由于某些特殊字符而没有打开。相反,对其进行nano良好的编辑。它已经有两次libreoffice-base为我解决了包装方面的困扰。
Serge Stroobandt 2014年

1
它仍然适用于16.04
MertÖksüz16年

43
  • 如果您在其他任何产品上一无所获,那么我过去曾经使用过

    dpkg --remove --force-remove-reinstreq
    

    从dpkg手册

    remove-reinstreq:即使包装破损,也要取出包装

  • 因此运行:

    sudo dpkg --remove --force-remove-reinstreq  linux-headers-3.0.0-19
    
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.