Исправить наполовину установленный пакет

Я получаю ошибку при использовании sudo apt-get upgrade заявив:

dpkg: error processing libgfortran3:amd64 (--configure):
  package libgfortran3:amd64 is not ready for configuration
  cannot configure (current status `half-installed')
Errors were encountered while processing:
  libgfortran3:amd64
E: Sub-process /usr/bin/dpkg returned an error code (1)

Кажется, он не блокирует установку / обновление других приложений. Я полагаю, что эта проблема возникла из-за прямого выключения моего ПК во время обновления приложения.

Как я могу это исправить?

6 ответов

Решение
sudo dpkg --remove --force-remove-reinstreq --dry-run libgfortran3:amd64

Это просто прогон. Я не уверен, что удаление libgfortran3 возьму с собой, но запусти и посмотри. Предполагая, что это не поглотит всю систему, запустите ее снова без --dry-run и тогда ты сможешь sudo apt-get install ... пакеты, которые вам нужны обратно.

Для половины установленной ошибки пакета, --reinstall работал для меня:

sudo apt-get install --reinstall packagename 
sudo apt install --reinstall packagename

Это работает как шарм. Это решило проблему, с которой я столкнулся в течение нескольких месяцев. Мой случай был с посылкой libmysqlcppconn7v5

Все, что я сделал, было бежать sudo apt install --reinstall libmysqlcppconn7v5

У меня та же проблема с "половиной установленного пакета" с пакетом kibana. Я получил следующую ошибку:

dpkg: error processing kibana (--configure):
package kibana is not ready for configuration
cannot configure (current status 'half-installed')
Errors were encountered while processing:
  kibana
E: Sub-process /usr/bin/dpkg returned an error code (1)

Если кто-то все еще сталкивается с такой проблемой, то вы можете попробовать это:

sudo rm /var/lib/dpkg/info/kibana*
cd /var/cache/apt/archives
sudo rm kibana*
apt-get --reinstall install kibana

Это работает для меня. Вам просто нужно заменить слово "kibana" на ваше наполовину установленное имя пакета.

Это должно исправить вашу проблему без переустановки пакета.

sudo dpkg --force-remove-reinstreq --remove <package_name here>

С последующим: sudo apt-get update

Если вы хотите исправить это через графический интерфейс, вы можете использовать synaptic. Synaptic - это превосходный инструмент управления пакетами, который использовался в старых версиях ubuntu. Чтобы установить это:

sudo apt-get install synaptic

нажмите на исправить сломанные пакеты.

Другие вопросы по тегам