Я пошел, чтобы установить bsnes на днях, и по любой причине установка не удалась. Теперь я не могу обновить, установить новые пакеты или выполнить какие-либо команды apt-get, так как все они пытаются обработать этот поврежденный пакет и дают сбой. Попытка установить новый пакет также обрекает его на такую же участь. Я получаю ошибку:
Setting up google-chrome-stable (33.0.1750.152-1) ...
/var/lib/dpkg/info/google-chrome-stable.postinst: 124: /var/lib/dpkg/info/google-chrome-stable.postinst: update-alternatives: not found
dpkg: error processing google-chrome-stable (--configure):
subprocess installed post-installation script returned error exit status 127
Setting up bsnes (0.088-7) ...
/var/lib/dpkg/info/bsnes.postinst: 5: /var/lib/dpkg/info/bsnes.postinst: update-alternatives: not found
dpkg: error processing bsnes (--configure):
subprocess installed post-installation script returned error exit status 127
Errors were encountered while processing:
google-chrome-stable
bsnes
E: Sub-process /usr/bin/dpkg returned an error code (1)
Я искал в Google и здесь, в Ask Ubuntu, но не нашел работающего решения. Обычно предлагаем исправить это запустить следующее:
sudo apt-get clean && sudo apt-get autoremove
sudo apt-get -f install
sudo dpkg --configure -a
Это, однако, не работает. Все команды apt-get терпят неудачу с той же ошибкой, что и выше, и команда dpkg просто не помогает. Другое дело, что они часто предлагают очистить его через Synaptic или командную строку, что также не помогает.
Спасибо за помощь
dpkg
не всегда помогает./var/lib/dpkg/info/[package_name].prerm
но ваш пост дал мне правильное направление. Определенно для опытных пользователей, хотя это рискованно !.prerm
и.postrm
файлы решают проблему.Кроме тех, которые вы уже опубликовали, есть несколько других команд, которые могут быть полезны.
Autoclean очищает локальный репозиторий извлеченных файлов пакетов.
Принудительная установка / удаление пакетов. With Используйте с осторожностью
а также
Также, как всегда, вы можете использовать
dpkg
для установки, удаления и очистки пакетов.устанавливать
Удалить
чистка
источник
bsnes
Вы?dpkg -l |grep bsnes
Таким образом, после еще большего количества поисков в Google и очень внимательного прочтения сообщений об ошибках снова возникает
dpkg
необходимость переустановки.То, что это была проблема (если кто-то ищет и видит это), это то, что
update-alternatives: not found
было в сообщении об ошибке. Как только dpkg был переустановлен, остальные пакеты установились как обычно автоматически.источник
Вы можете удалить файл пакета по этому
/var/lib/dpkg/info/
пути и обновить источник.Затем переустановите пакет
sudo apt-get install [package_name]
доктор
источник
sudo rm /var/lib/dpkg/info/[pakege_name].*
. В противном случае вы также удалите пакеты, начинающиеся с того же имени. В любом случае, спасибо за это, это было единственное решение, которое сработало для меняЕсли все остальное терпит неудачу. Я сначала изменил каталог на:
затем я удалил все с
.postinst
:затем обновите репозиторий
тогда все вернулось к норме, когда я сделал:
источник
Если ничего не помогает, вы можете вручную удалить пакет
dpkg
. Бегsudo dpkg -P bsnes
должен продуватьbsnes
.источник
dpkg: error processing package libcuda1-340 (--purge): package is in a very bad inconsistent state; you should reinstall it before attempting a removal
В моем случае
apt-get install -f
сработало. Я устанавливал mysql-workbench-communityРанее пробовал
apt autoclean
Я видел эту ошибку dpkg из-за некоторых отсутствующих зависимостей, которые можно исправить, установив в принудительном режиме (установка зависимостей)
источник
После запуска выше, вы можете установить / обновить / удалить / очистить как обычно для любых пакетов.
источник