Как исправить ошибку «Пакет в очень плохом несогласованном состоянии»?

Я не могу обновить мою систему, потому что она зависает при установке стороннего обновления (zramswap-enabler)!

Иногда в диспетчере обновлений появляется следующее сообщение:

Не удалось инициализировать информацию о пакете Неразрешимая проблема возникла при инициализации информации о пакете.

Сообщите об этой ошибке в пакете «update-manager» и включите следующее сообщение об ошибке:

E:The package zramswap-enabler needs to be reinstalled, but I can't find an archive for it.

Я попытался удалить zramswap-enabler, но это невозможно, потому что я получаю следующее сообщение:

 dpkg: error processing zramswap-enabler (--remove): Package is in a very bad inconsistent state - you should reinstall it before attempting a removal. Errors were encountered while processing: zramswap-enabler E: Sub-process /usr/bin/dpkg returned an error code (1) 

На самом деле я бы действительно переустановил этот пакет, но он не может этого сделать! Если я удалю этот сторонний PPA, система предупредит меня о очень серьезной проблеме.

Так почему я не могу установить / переустановить / удалить / обновить этот пакет и почему замерзает обновление, если я пытаюсь обновить?

Отредактировано вне вопроса и добавлено в качестве ответа.

  1. Убедитесь, что ваш PPA настроен.

  2. Удалите сломанный пакет с помощью следующей команды:

     sudo dpkg --remove --force-remove-reinstreq zramswap-enabler 
  3. Установите пакет еще раз:

     sudo apt-get install zramswap-enabler 
  4. После перезагрузки (не обязательно) вы можете установить обновления правильно!

На самом деле вы можете исправить любой вопрос «Пакет в очень плохом несогласованном состоянии» с этим решением!

Это сработало для меня после того, как вы очень хорошо разбирали все форумы AskUbuntu и Ubuntu! ( Источник ). Я запускаю Lubuntu 14.04

 sudo mv /var/lib/dpkg/info/<packagename>.* /tmp/ sudo dpkg --remove --force-remove-reinstreq <packagename> sudo apt-get remove <packagename> sudo apt-get autoremove && sudo apt-get autoclean 

У меня была ситуация хуже, чем эта. Я должен был удалить половину установленных пакетов, заставляя зависимости.

 sudo dpkg --remove --force-remove-reinstreq --force-depends <package-name> 

Затем мне пришлось переустановить их

 sudo apt-get -f install 

Это должно решить любую проблему. Но, пожалуйста, убедитесь, что у вас есть сетевое подключение, когда вы пытаетесь это сделать. В противном случае вам придется пройти еще больше неприятностей.

Другие ответы правильны, чтобы упомянуть удаление пакета, за которым следует apt-get install -f чтобы переустановить сломанный пакет (и полностью установить другие пакеты с половинной установкой). Однако это можно сделать за один шаг:

 sudo apt-get install -f --reinstall zramswap-enabler 

я попробую очистить статус моей установки, прежде чем приступать к деинсталляции созданной проблемы:

 apt-get autoclean apt-get update apt-get upgrade apt-get install -f 

гораздо лучший способ решить эту проблему в большинстве случаев и, по крайней мере, в одном случае помог мне, когда другой способ не сработает (поскольку огромные зависимости от пакета, который нужно удалить)

У меня была аналогичная проблема с quagga, демоном маршрутизации. Для меня работал только переустановка пакета:

 # apt-get install -f <some output ommited> dpkg: warning: overriding problem because --force enabled: Package is in a very bad inconsistent state - you should reinstall it before attempting a removal. wget http://security.debian.org/debian-security/pool/updates/main/q/quagga/quagga_0.99.22.4-1+wheezy3_i386.deb dpkg -i quagga_0.99.22.4-1+wheezy3_i386.deb 

Теперь все в порядке:

 #apt-get install -f Reading package lists... Done Building dependency tree Reading state information... Done 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 

Сначала переустановите пакет:

 apt-get install --reinstall zramswap-enabler