Debconf сломался после сбоя системы

У меня есть серьезные проблемы с одним из моих веб-серверов, на которых запущен Debian Wheezy. Похоже, что на прошлой неделе в серверном центре произошла ошибка, которая привела к внезапному отключению машины.

С тех пор некоторые файлы повреждены.

sudo apt-get install -f
Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 26 nicht aktualisiert.
2 nicht vollständig installiert oder entfernt.
Es müssen noch 0 B von 1.518 kB an Archiven heruntergeladen werden.
Nach dieser Operation werden 0 B Plattenplatz zusätzlich benutzt.
debconf: Perl may be unconfigured (Can't locate Debconf/Log.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at (eval 1) line 4.
BEGIN failed--compilation aborted at (eval 1) line 4.
) -- aborting
dpkg: Fehler beim Bearbeiten von perl-base (--configure):
 Paket perl-base ist nicht bereit zur Konfiguration
 kann nicht konfiguriert werden (momentaner Status »half-installed«)
man-db (2.6.2-1) wird eingerichtet ...
/var/lib/dpkg/info/man-db.postinst: 3: .: Can't open /usr/share/debconf/confmodule
dpkg: Fehler beim Bearbeiten von man-db (--configure):
 Unterprozess installiertes post-installation-Skript gab den Fehlerwert 2 zurück
Fehler traten auf beim Bearbeiten von:
 perl-base
 man-db
E: Sub-process /usr/bin/dpkg returned an error code (1)

Здесь кажется, что Perl ненастроен и у man-db есть некоторые проблемы. Я не могу установить обновление системы или программного обеспечения.

Сначала у меня были проблемы с glibc6, и я переустановил его из архивной папки dpkg.

Но главная причина, кажется, в том, что /usr/share/debconfкаталог полностью ушел!

Кто-нибудь есть какие-либо предложения о том, как я могу "сохранить" этот сервер и восстановить систему без полной новой установки? Любая помощь будет оценена!

Системная информация

uname -a
Linux wn-main-debian 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux

2 ответа

Решение

Хорошо, я нашел работающее "решение", которое означает, что ошибка выше исчезла. Я не знаю, появятся ли другие ошибки. Но пока это работает и помогает мне сделать резервную копию всего.

В основном я устанавливаю perl-base а также debconf из папки архивов.

/var/cache/apt/archives$ ls -als | grep perl
1484 -rw-r--r-- 1 root root 1517844 Sep 30 06:11 perl-base_5.14.2-21+deb7u1_amd64.deb

/var/cache/apt/archives$ sudo dpkg -i perl-base_5.14.2-21+deb7u1_amd64.deb 
(Lese Datenbank ... 44661 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Ersetzen von perl-base 5.14.2-21+deb7u1 (durch perl-base_5.14.2-21+deb7u1_amd64.deb) ...
Ersatz für perl-base wird entpackt ...
perl-base (5.14.2-21+deb7u1) wird eingerichtet ...

/var/cache/apt/archives$ ls -als | grep debconf
 168 -rw-r--r-- 1 root root  171018 Dez 26  2012 debconf_1.5.49_all.deb

/var/cache/apt/archives$ sudo dpkg -i debconf_1.5.49_all.deb 
(Lese Datenbank ... 44661 Dateien und Verzeichnisse sind derzeit installiert.)
Vorbereitung zum Ersetzen von debconf 1.5.49 (durch debconf_1.5.49_all.deb) ...
Ersatz für debconf wird entpackt ...
debconf (1.5.49) wird eingerichtet ...

Я обновлял свой linuxmint 19.2 до 19.3 и столкнулся с той же проблемой. Я просто извлек каталог Debconf/ из пакета debconf (той же версии, что и уже установлен) и скопировал в места, указанные в ошибке. У меня это сработало.

Вы можете установить ту же версию ОС на другую (виртуальную) систему. Затем вы должны быть в состоянии rsync /usr/share/debconf или любой другой отсутствующий файл в сломанной системе. Если только статические файлы отсутствуют, это должно работать. Однако, если, например, dpkg/debconf db не работает, это не сильно поможет. Не уверен, что это быстрее, чем резервное копирование ваших данных и переустановка.

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