MyTetra Share
Делитесь знаниями!
Как в Debian переустановить битые пакеты
Время создания: 23.08.2023 09:32
Текстовые метки: linux, debian, deb, apt, dpkg, битый, пакет, переустановка, reinstall, зависимости, контрольная сумма, checksum
Раздел: Компьютер - Linux - Инсталляция программ - Пакетный менеджер APT: apt-get и прочее
Запись: xintrea/mytetra_syncro/master/base/169277232655eb6f5q7f/text.html на raw.github.com

Иногда в установленный Debian Linux попадают физически битые пакеты. Это могут быть кривые сторонние deb-пакеты, это могут быть пакеты из репозитария, которые испортились в результате некорректной работы памяти или жесткого HDD/SSD диска. В любом случае, установка таких пакетов приводит к тому, что пакетная система при любом действии будет требовать исправить проблему.


Но заковырка в том, что единственное решение проблемы - это полное удаление проблемного пакета. Которое может привести к удалению половины пакетной базы в системе, что сделает всю систему практически неработоспособной. А любые другие попытки исправить проблему простыми известными способами проблему никак не решат, и постоянные предупреждения о неконсистентности пакетной базы, или даже ошибки, будут все время мешать работать с пакетным менеджером:



run-parts: /etc/kernel/postinst.d/z50-raspi-firmware exited with return code 1

dpkg: error processing package linux-image-6.1.0-10-amd64 (--configure):

installed linux-image-6.1.0-10-amd64 package post-installation script subprocess returned error exit status 1

dpkg: dependency problems prevent configuration of linux-image-amd64:

linux-image-amd64 depends on linux-image-6.1.0-10-amd64 (= 6.1.38-1); however:

Package linux-image-6.1.0-10-amd64 is not configured yet.

dpkg: error processing package linux-image-amd64 (--configure):

dependency problems - leaving unconfigured

Processing triggers for initramfs-tools (0.142) ...

update-initramfs: Generating /boot/initrd.img-6.1.0-10-amd64

Errors were encountered while processing:

linux-image-6.1.0-10-amd64

linux-image-amd64

E: Sub-process /usr/bin/dpkg returned an error code (1)


Как выйти из этой ситуации? Решение следующее - надо пересчитать контрольные суммы пакетов через утилиту debsums. И составить список пакетов, у которых эти суммы неправильные. Имея этот список, надо переустановить найденные проблемные пакеты.


Данное действие выполняется следующими командами. Получение списка проблемных пакетов:



apt install debsums

debsums -cs

debsums -l



Переустановка проблемных пакетов:



apt install --reinstall перечень имен пакетов через пробел



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


Так же в этом разделе:
 
MyTetra Share v.0.65
Яндекс индекс цитирования