UBUNTU - сломанный DPKG и индекс

Выполнял обновление пакета, и он завершил процесс и завис, поэтому я перезагрузил сервер, и теперь он не позволяет мне выполнять какие-либо обновления.

Я попробовал следующее безрезультатно:

sudo apt-get clean
sudo apt-get install -f  (I get a message: E: DPKG was interrupted, you must manually run sudo dpkg --configure -a to correct the problem)
sudo dpkg --configure -a  (I get the following - which is where it got stuck the first time)
'Setting up citadel-server (8.03- 1)'
'sendcommand: started (pid=1692) running in 504'
'Attaching to server...'
'domain Citadel server ready'
'Authentication as an internal program.'
'DOWN'
'231 Shutting down server. Goodbye.'
sendcommand: processing ended.'

Потом все зависает и ничего не делает. Он выглядит как потерянный процесс и блокирует dpkg и сервер цитадели, поэтому моя почта больше не работает. заставляя меня перезагрузить сервер, чтобы вернуть его к работе.

Как мне исправить индекс, чтобы я мог делать будущие обновления? Пакет Snaptic также не будет работать.

Спасибо

1 ответ

Решение

В /var/lib/dpkg/info каждый пакет содержит несколько скриптов:

<pkgname>.preinst
<pkgname>.postinst
<pkgname>.prerm
<pkgname>.postrm

Чтобы завершить процесс установки пакета, сценарии.preinst и.postinst должны быть запущены для каждого распакованного пакета. Если эти сценарии заканчиваются ошибками, dpkg перебивает. Найдите эти сценарии для пакета citadel-server и выясните, почему они не работают. Или просто замените их пустыми сценариями с успешным завершением, запустите dpkg --configure -a и удали цитадель-сервер.

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