difficult to recover a system when a conffile of a M-A: same package has a corrupted checksum

Bug #994533 reported by Ulli Horlacher on 2012-05-04
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
dpkg (Ubuntu)
Low
Unassigned

Bug Description

On a Ubuntu 12.04 x86_64 I try to install ia32-libs:

root# apt-get install ia32-libs
(...)
Errors were encountered while processing:
 /var/cache/apt/archives/libldap-2.4-2_2.4.28-1.1ubuntu4_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

root# apt-get install ia32-libs
Reading package lists... Done
Building dependency tree
Reading state information... Done
ia32-libs is already the newest version.
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 libcurl3:i386 : Depends: libldap-2.4-2:i386 (>= 2.4.7) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

root# apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  libldap-2.4-2:i386
The following NEW packages will be installed:
  libldap-2.4-2:i386
0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.
297 not fully installed or removed.
Need to get 0 B/186 kB of archives.
After this operation, 515 kB of additional disk space will be used.
Do you want to continue [Y/n]?
(Reading database ... 25353 files and directories currently installed.)
Unpacking libldap-2.4-2:i386 (from .../libldap-2.4-2_2.4.28-1.1ubuntu4_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/libldap-2.4-2_2.4.28-1.1ubuntu4_i386.deb (--unpack):
 conffile './etc/ldap/ldap.conf' is not in sync with other instances of the same package
No apport report written because MaxReports is reached already
                                                              Processing triggers for man-db ...
Errors were encountered while processing:
 /var/cache/apt/archives/libldap-2.4-2_2.4.28-1.1ubuntu4_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

root# lsb_release -rd
Description: Ubuntu 12.04 LTS
Release: 12.04

root@# uname -a
Linux eduroam1 3.2.0-24-virtual #37-Ubuntu SMP Wed Apr 25 10:17:19 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Steve Langasek (vorlon) wrote :

I can't reproduce this problem here.
Please show the output of the following command on your system:

dpkg-query -f='${PackageSpec}\t${Version}\n${Conffiles}\n' -W 'libldap-2.4-2:*'

affects: ia32-libs (Ubuntu) → openldap (Ubuntu)
Changed in openldap (Ubuntu):
status: New → Incomplete
tags: added: multiarch

On Fri 2012-05-04 (19:22), Steve Langasek wrote:
> I can't reproduce this problem here.

I can reproduce it on 3 Ubuntu 12.04 systems.

> Please show the output of the following command on your system:
>
> dpkg-query -f='${PackageSpec}\t${Version}\n${Conffiles}\n' -W
> 'libldap-2.4-2:*'

root@eduroam1:~# dpkg-query -f='${PackageSpec}\t${Version}\n${Conffiles}\n' -W 'libldap-2.4-2:*'
libldap-2.4-2 2.4.28-1.1ubuntu4
 /etc/ldap/ldap.conf 7fac807f65d84394410881bc16f1198a
libldap-2.4-2:i386

Note:

To correct the problem I have deleted /etc/ldap/ldap.conf
and afterwards I have rerun "apt-get install -f", but without success

root@eduroam1:~# ll /etc/ldap/
-rw-r--r-- root root 332 2012-04-05 19:26:33 /etc/ldap/ldap.conf
-rw-r--r-- root root 332 2012-04-05 19:25:49 /etc/ldap/ldap.conf.dpkg-new

--
Ullrich Horlacher Server- und Arbeitsplatzsysteme
Rechenzentrum E-Mail: <email address hidden>
Universitaet Stuttgart Tel: ++49-711-685-65868
Allmandring 30 Fax: ++49-711-682357
70550 Stuttgart (Germany) WWW: http://www.rus.uni-stuttgart.de/
REF: <email address hidden>

Steve Langasek (vorlon) wrote :

On Fri, May 04, 2012 at 07:49:55PM -0000, Ulli Horlacher wrote:
> On Fri 2012-05-04 (19:22), Steve Langasek wrote:
> > I can't reproduce this problem here.

> I can reproduce it on 3 Ubuntu 12.04 systems.

> > Please show the output of the following command on your system:

> > dpkg-query -f='${PackageSpec}\t${Version}\n${Conffiles}\n' -W
> > 'libldap-2.4-2:*'

> root@eduroam1:~# dpkg-query -f='${PackageSpec}\t${Version}\n${Conffiles}\n' -W 'libldap-2.4-2:*'
> libldap-2.4-2 2.4.28-1.1ubuntu4
> /etc/ldap/ldap.conf 7fac807f65d84394410881bc16f1198a
> libldap-2.4-2:i386
>
The correct output is:

libldap-2.4-2 2.4.28-1.1ubuntu4
 /etc/ldap/ldap.conf 0b3f4d19d88498314478273ce10b0a70
libldap-2.4-2:i386

Somehow, you have a corrupted entry in your dpkg database for this conffile.

Can you try running 'sudo apt-get install --reinstall libldap-2.4-2' to see
if that fixes the issue?

On Fri 2012-05-04 (20:11), Steve Langasek wrote:

> > root@eduroam1:~# dpkg-query -f='${PackageSpec}\t${Version}\n${Conffiles}\n' -W 'libldap-2.4-2:*'
> > libldap-2.4-2 2.4.28-1.1ubuntu4
> > /etc/ldap/ldap.conf 7fac807f65d84394410881bc16f1198a
> > libldap-2.4-2:i386
> >
>
> The correct output is:
>
> libldap-2.4-2 2.4.28-1.1ubuntu4
> /etc/ldap/ldap.conf 0b3f4d19d88498314478273ce10b0a70
> libldap-2.4-2:i386
>
> Somehow, you have a corrupted entry in your dpkg database for this
> conffile.

This sounds bad (for me).

> Can you try running 'sudo apt-get install --reinstall libldap-2.4-2' to see
> if that fixes the issue?

root@eduroam1:~# apt-get install --reinstall libldap-2.4-2
Reading package lists... Done
Building dependency tree
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 libcurl3:i386 : Depends: libldap-2.4-2:i386 (>= 2.4.7) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

root@eduroam1:~# apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  libldap-2.4-2:i386
The following NEW packages will be installed:
  libldap-2.4-2:i386
0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.
297 not fully installed or removed.
Need to get 0 B/186 kB of archives.
After this operation, 515 kB of additional disk space will be used.
Do you want to continue [Y/n]?
(Reading database ... 25353 files and directories currently installed.)
Unpacking libldap-2.4-2:i386 (from .../libldap-2.4-2_2.4.28-1.1ubuntu4_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/libldap-2.4-2_2.4.28-1.1ubuntu4_i386.deb (--unpack):
 conffile './etc/ldap/ldap.conf' is not in sync with other instances of the same package
No apport report written because MaxReports is reached already
                                                              Processing triggers for man-db ...
Errors were encountered while processing:
 /var/cache/apt/archives/libldap-2.4-2_2.4.28-1.1ubuntu4_i386.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

--
Ullrich Horlacher Server- und Arbeitsplatzsysteme
Rechenzentrum E-Mail: <email address hidden>
Universitaet Stuttgart Tel: ++49-711-685-65868
Allmandring 30 Fax: ++49-711-682357
70550 Stuttgart (Germany) WWW: http://www.rus.uni-stuttgart.de/
REF: <email address hidden>

Steve Langasek (vorlon) wrote :

On Fri, May 04, 2012 at 09:27:08PM -0000, Ulli Horlacher wrote:
> > Can you try running 'sudo apt-get install --reinstall libldap-2.4-2' to see
> > if that fixes the issue?

> root@eduroam1:~# apt-get install --reinstall libldap-2.4-2
> Reading package lists... Done
> Building dependency tree
> Reading state information... Done
> You might want to run 'apt-get -f install' to correct these:
> The following packages have unmet dependencies:
> libcurl3:i386 : Depends: libldap-2.4-2:i386 (>= 2.4.7) but it is not going to be installed
> E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

Right; we need a slightly different command to get around the fact that
dependencies aren't satisfied.

Try one of these:

  apt-get install --reinstall libldap-2.4-2 libldap-2.4-2:i386

  dpkg -i /var/cache/apt/archives/libldap-2.4-2_2.4.28-1.1ubuntu4_amd64.deb

Either one of those should get things back to a consistent state.

On Fri 2012-05-04 (23:04), Steve Langasek wrote:

> Right; we need a slightly different command to get around the fact that
> dependencies aren't satisfied.
>
> Try one of these:
>
> apt-get install --reinstall libldap-2.4-2 libldap-2.4-2:i386

(...)
Setting up ia32-libs-multiarch:i386 (20090808ubuntu35) ...
Setting up ia32-libs (20090808ubuntu35) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Processing triggers for libgdk-pixbuf2.0-0:i386 ...

root@eduroam1:~# apt-get -f install
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.

GREAT! Thanks!

But how was this inconsistancy possible?
Any idea, what I did wrong?
Could I found this solution by myself?

--
Ullrich Horlacher Server- und Arbeitsplatzsysteme
Rechenzentrum E-Mail: <email address hidden>
Universitaet Stuttgart Tel: ++49-711-685-65868
Allmandring 30 Fax: ++49-711-682357
70550 Stuttgart (Germany) WWW: http://www.rus.uni-stuttgart.de/
REF: <email address hidden>

> But how was this inconsistancy possible?
> Any idea, what I did wrong?

I don't think this is due to anything you did wrong; most likely, there was simply a single-bit memory or disk error that broke the checksum of your conffile.

> Could I found this solution by myself?

Not easily, and for that I reassign the bug to dpkg rather than just closing it outright. However, this is a low priority issue since it's unlikely to affect many people who don't have failing hardware.

affects: openldap (Ubuntu) → dpkg (Ubuntu)
Changed in dpkg (Ubuntu):
importance: Undecided → Low
status: Incomplete → Triaged
summary: - cannot install ia32-libs on Ubuntu 12.04 x86_64
+ difficult to recover a system when a conffile of a M-A: same package has
+ a corrupted checksum
Danny Sauer (ubuntu-dannysauer) wrote :

Is it a huge coincidence that my system has encountered the exact same behavior (including the same "bad" checksum) this morning when I attempted to update?

...
(Reading database ... 518114 files and directories currently installed.)
Unpacking libldap-2.4-2:i386 (from .../libldap-2.4-2_2.4.28-1.1ubuntu4.2_i386.deb) ...
dpkg: error processing /var/cache/apt/archives/libldap-2.4-2_2.4.28-1.1ubuntu4.2_i386.deb (--unpack):
 conffile './etc/ldap/ldap.conf' is not in sync with other instances of the same package
No apport report written because MaxReports is reached already
                                                              dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/libldap-2.4-2_2.4.28-1.1ubuntu4.2_i386.deb
...

sauer@hotrod:~$ dpkg-query -f='${PackageSpec}\t${Version}\n${Conffiles}\n' -W 'libldap-2.4-2:*'
libldap-2.4-2 2.4.28-1.1ubuntu4.2
 /etc/ldap/ldap.conf 7fac807f65d84394410881bc16f1198a
libldap-2.4-2:i386
sauer@hotrod:~$ uname -a
Linux hotrod 3.2.0-39-generic #62-Ubuntu SMP Thu Feb 28 00:28:53 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
sauer@hotrod:~$ lsb_release -d
Description: Ubuntu 12.04.1 LTS

Danny Sauer (ubuntu-dannysauer) wrote :

BTW, my actual installed /etc/ldap/ldap.conf is a symlink to /etc/ldap.conf, which is locally modified. I wonder if the underlying issue is related to that.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers