DebuggingInstallationIssues

Debugging Central

This page is part of the debugging series — pages with debugging details for a variety of Ubuntu packages.

Introduction

This page lists some general issues that users might encounter while performing updates of their system. Apport will usually detect these failures and file a bug in Launchpad. These bugs can be identified by the bug tag 'apport-package' and can occur on nearly any package.

There are usually log file attached to the report which differs depending on the kind of install/upgrade:

  • Package install/upgrade: DpkgTerminalLog

  • Distribution upgrade: VarLogDistupgradeMain and VarLogDistupgradeApttermlog

Detailed informations about debugging updatemanager can be found at DebuggingUpdateManager.

Documented below are the most commonly reported issues. For each case there is a description and a sample report and when applicable there is a workaround or fix and the master report it should be marked a duplicate of.

Known issues

Corrupted package archive

These errors indicates a corrupted archive (.deb or files on disk) The root cause of the corruption may be a bad network connection, faulty hardware, hardware shutdown,...

For those report the common workaround and stock response is:

Thank you for taking the time to report this bug and helping to make Ubuntu better. It seems that there was an error caused by a corrupted archive. Please execute the following commands, as it will clear your package cache, in a terminal ( Applications -> Accessories -> Terminal ) :

sudo apt-get clean
sudo apt-get update

Then try performing the update again. This will likely resolve your issue. If so please set the bug's status to Invalid. Thanks in advance!

Not a Debian format archive

  • Bug : provide a master report

This error indicated that the header of the .deb archive is not recognized as a valid debian format.

dpkg-deb: `/var/cache/apt/archives/libswscale0_4%3a0.5+svn20090706-2ubuntu2_i386.deb' is not a debian format archive 
dpkg: error processing /var/cache/apt/archives/libswscale0_4%3a0.5+svn20090706-2ubuntu2_i386.deb (--unpack): 
 subprocess dpkg-deb --control returned error exit status 2

Corrupted filesystem tarfile

Unpacking libaccess-bridge-java (from .../libaccess-bridge-java_1.24.0-0ubuntu2_all.deb) ...
dpkg: error processing /var/cache/apt/archives/libaccess-bridge-java_1.24.0-0ubuntu2_all.deb (--unpack):
 corrupted filesystem tarfile - corrupted package archive
dpkg-deb: subprocess paste killed by signal (Broken pipe)

--fsys-tarfile

  • Bug : provide a master report

Unpacking replacement audacity-data ...
dpkg-deb: subprocess paste killed by signal (Broken pipe)
dpkg: error processing /var/cache/apt/archives/audacity-data_1.3.7-2ubuntu1_all.deb (--unpack):
 subprocess dpkg-deb --fsys-tarfile returned error exit status 2
Processing triggers for man-db ...
Errors were encountered while processing:
 /var/cache/apt/archives/audacity-data_1.3.7-2ubuntu1_all.deb

short read - Input/output error

  • Bug : provide a master report

The 'short read' error happens when trying to install a partially downloaded package. The front-end verify the integrity of the archive, but it is not the case if dpkg is invoked directly.

An input/output error is likely to mean filesystem corruption, hardware problems or no space left on hard disk. The typical errors are:

Unpacking linux-image-2.6.27-11-generic (from .../linux-image-2.6.27-11-generic_2.6.27-11.24_i386.deb) ...
Done.
dpkg-deb: subprocess paste killed by signal (Broken pipe)
dpkg: error processing /var/cache/apt/archives/linux-image-2.6.27-11-generic_2.6.27-11.24_i386.deb (--unpack):
 short read in buffer_copy (backend dpkg-deb during `./lib/modules/2.6.27-11-generic/kernel/drivers/infiniband/core/ib_uverbs.ko')

or

Unpacking replacement libfreetype6 ...
dpkg-deb (subprocess): error in buffer_read(stream): failed to write to pipe in copy: Input/output error
dpkg-deb: subprocess paste returned error exit status 2
dpkg: error processing /var/cache/apt/archives/libfreetype6_2.3.9-4ubuntu0.1_i386.deb (--unpack):
 short read in buffer_copy (backend dpkg-deb during `./usr/lib/libfreetype.so.6.3.20')

The suggestion is to run a manual fsck and look whether the hard drive or storage device is operating correctly (dmesg may contain helpful information too)

TODO: Write a standard response

Exec format error

This error indicates that the installation or removal script is corrupted. It is caused by a sudden system failure during dpkg operation (power failure, hardware failure, ...) on filesystems supporting delayed allocation (like ext4, xfs, btrfs, ...)

Empty files or files filed with garbage are left on the hard drive. The file causing the dpkg error is one of /var/lib/dpkg/info/PACKAGE_NAME.p*

This error can occur either during installation or removal of the package.

During installation of a package

Setting up flashplugin-installer (10.0.32.18ubuntu1) ...
dpkg (subprocess): unable to execute installed post-installation script: Exec format error
dpkg: error processing flashplugin-installer (--configure):
 subprocess installed post-installation script returned error exit status 2

During removal of a package

Removing gnome-do ...
dpkg (subprocess): unable to execute installed pre-removal script: Exec format error
dpkg: error processing gnome-do (--purge):
 subprocess installed pre-removal script returned error exit status 2

Workaround A: Finish the install

sudo apt-get clean
sudo aptitude download python-libvirt
sudo dpkg --unpack ./python-libvirt*.deb
sudo dpkg --configure python-libvirt

Workaround B: Remove the package and reinstall

sudo rm /var/lib/dpkg/info/flashplugin-installer.{postinst,prerm,postrm}
sudo apt-get remove --purge flashplugin-installer
sudo apt-get clean
sudo apt-get update

Then reinstall the package

Note: Change the package by the one which failed (check the log file)

Note about localized error message:
Finding this error in the log is not always easy because the error string has been localized.

  • Erreur de format pour exec()
  • Error de formato ejecutable
  • Errore di formato di exec
  • Exec format error
  • Formatfel på körbar fil
  • Érvénytelen végrehajtható fájlformátum
  • Exec formátum hiba
  • Verkeerd uitvoerbaar bestand
  • Exec 格式错误

triggers ci file contains unknown directive syntax

This is the same kind of issue than the one above. It means that the trigger file is empty or corrupted. The file is /var/lib/dpkg/info/PACKAGE.triggers This error can occur during installation or removal of a package.

During installation of a package

Setting up ureadahead (0.90.3-2) ...
dpkg: error processing ureadahead (--configure):
 triggers ci file contains unknown directive syntax

Workaround

remove the file /var/lib/dpkg/info/PACKAGE.triggers
sudo rm /var/lib/dpkg/info/PACKAGE.triggers
and run
sudo dpkg --purge ureadahead
then clean your cache
sudo apt-get clean
and try performing the install of ureadahead again.

lzma : decoder error

  • Bug : provide a master report

Unpacking openjdk-6-jre-lib (from .../openjdk-6-jre-lib_6b12-0ubuntu6_all.deb) ...
lzma: Decoder error
dpkg-deb: subprocess <decompress> returned error exit status 1
dpkg: error processing /var/cache/apt/archives/openjdk-6-jre-lib_6b12-0ubuntu6_all.deb (--unpack):
 short read in buffer_copy (backend dpkg-deb during `./usr/lib/jvm/java-6-openjdk/jre/lib/ext/localedata.jar')

files list file missing final newline / contains empty filename

This error indicates that the file /var/lib/dpkg/info/PACKAGE_NAME.list is corrupted ( empty or full of garbage ) The reason may be a disk error, a memory error, a process being interrupted during unpack, ...

Typically these errors take the form :
files list file for package packagename contains empty filename
or
files list file for package packagename is missing final newline

Selecting previously deselected package linux-source-2.6.27.
(Reading database ... dpkg: error processing /var/cache/apt/archives/linux-source-2.6.27_2.6.27-9.19_all.deb (--unpack):
 files list file for package `libpoppler-glib3' is missing final newline

Workaround: Recreate the file list from .deb
This can be fixed, with a little work. If you have the .deb file for the offending package currently available on your system, then check its integrity by running:
dpkg --contents /var/cache/apt/archive/libgnome2-0_2.24.1-0ubuntu3_i386.deb
or get a .deb file by running :
sudo apt-get install --reinstall --download-only libgnome2-0

Once you have a valid .deb file, then you can reconstitute the file. First become root by using sudo -s (enter your administrative user password if necessary), and then use the following command (copy/paste and change the package name accordingly):

dpkg -c /var/cache/apt/archive/libgnome2-0_2.24.1-0ubuntu3_i386.deb | awk \
{if ($6 == "./") { print "/."; } \
else if (substr($6, length($6), 1) == "/") \
{print substr($6, 2, length($6) - 2); } \
else { print substr($6, 2, length($6) - 1);}}' \
> /var/lib/dpkg/info/libgnome2-0.list

Inconsistent state

Package in bad inconsistent state

  • Bug : provide a master report

Removing flashplugin-nonfree ...
dpkg: error processing flashplugin-installer (--purge):
 Package is in a very bad inconsistent state - you should
 reinstall it before attempting a removal.

Workaround A:

Please open a Terminal from the menu Applications->Accessories->Terminal and type or copy and paste the row below:

sudo apt-get --reinstall install cupsys
sudo dpkg --configure -a
sudo apt-get -f install

give your user password when requested, you don't see nothing when you type it, then press enter.

Workaround B:

Try the command below to purge the offending packages :
sudo dpkg --purge --force-remove-reinstreq flashplugin-installer flashplugin-nonfree

Then to reinstall :
sudo apt-get install flashplugin-installer

package is already installed and configured

Conditions of this failure are unknown. Please provide any additional informations in the master report.

Note to triagers: Before marking a report as duplicate, be sure that there is no other error in the log file term.log . In other words, don't blindly duplicate because the title says 'already installed and configured'.

dpkg: error processing language-pack-ar (--configure):
 package language-pack-ar is already installed and configured

Workaround A:

sudo dpkg --configure -a

Workaround B:

sudo apt-get install --reinstall language-pack-ar

Other issues

Can't access archive

The source of this error is not clearly identified and needs further investigation (see comment #3 of the master report)

dpkg: error processing /media/cdrom0//pool/main/g/gcc-4.4/libstdc++6-4.4-dev_4.4.1-4ubuntu8_i386.deb (--unpack):
 cannot access archive: No such file or directory
dpkg: error processing /media/cdrom0//pool/main/g/gcc-4.4/g++-4.4_4.4.1-4ubuntu8_i386.deb (--unpack):
 cannot access archive: No such file or directory

No space left on device

  • Bug 105113 was a request to detect this prior to performing any updates.

  • Bug 312491 was a request to report to the user when running out of disk space.

This error is self-explanatory.

Unpacking replacement perl-base ...
dpkg: error processing /var/cache/apt/archives/perl-base_5.10.0-11.1ubuntu2.2_i386.deb (--unpack):
 failed in buffer_write(fd) (10, ret=-1): backend dpkg-deb during `./usr/lib/perl/5.10.0/IO.pm': No space left on device

Note about localized error message:
Despite the fact that there is no ambiguity regarding the cause of the failure, finding this error in the log is not always easy because the error string has been localized. Checking for the strings --unpack and buffer_write in the error log is a good indication too.

DbDriver "config" is locked

debconf: DbDriver "config": /var/cache/debconf/config.dat is locked by another process: Resource temporarily unavailable

fuser -v will return the locking process if any. Kill it and try performing the upgrade again. Most often, this is only a transient situation and fuser will return nothing. Simply performing the update again should solve this issue.

/var/lib/defoma/locked exists

Under certain circumstances font packages failed to install with the following error:

Setting up ttf-dejavu-extra (2.28-1) ...
E: /var/lib/defoma/locked exists.
E: Another defoma process seems running, or you aren't root.
E: If you are root and defoma process isn't running undoubtedly,
E: it is possible that defoma might have aborted.
E: Please run defoma-reconfigure -f to fix its broken status.
dpkg: error processing ttf-dejavu-extra (--configure):
 subprocess post-installation script returned error exit status 1

Workaround

Open a terminal (Applications -> Accessories -> Terminal ) and run the following command:

$ sudo defoma-reconfigure -f

/etc/defoma/hints/FONTNAME.hints: Unable to open, or empty

Under certain circumstances font packages failed to install with the following error:

Setting up ttf-konatu (24-3) ...
/etc/defoma/hints/ttf-konatu.hints: Unable to open, or empty.
dpkg: error processing ttf-konatu (--configure):
 subprocess installed post-installation script returned error exit status 1

This is due to a corrupted hint file.

Workaround

To workaround it, open a terminal and run the following commands:

$ sudo rm /var/lib/dpkg/info/FONTNAME.prerm
$ sudo apt-get remove --purge FONTNAME
$ sudo apt-get clean

Then try performing the install again. Replace the font file name (FONTNAME) by the font name failing on your system (e.g ttf-dejavu-extra, ttf-konatu, ...)

Non-bugs

Common issues arising from hardware failures, common invalid bugs for this category.

Segmentation Fault - Exit status 139

If the installation failed with no reason with an exit status 139, that the configuration script is trivial and there is no other report of this kind for that package, then this is very likely a memory corruption error.

The error from the term.log will show something like this:

Setting up python-dateutil (1.4.1-2) ...
Segmentation fault
dpkg: error processing python-dateutil (--configure):
 subprocess post-installation script returned error exit status 139

There is not much we can do except the advice below:

Thanks for your report.

This looks like a hardware issue. Could you run memtest on your system? (boot a live CD / USB key and select test memory)

The reporter will most of the time says that the test reports error. If so, then close the report.

Note : an exit status 139 can also appear on other scenarios that aren't related to faulty memory modules. For example, if you install a Hardy guest on a Lenny host using Xen, and then try an apt-get upgrade on the Hardy guest, that will fail with a segfault and an exit status 139 if you forget to disable /lib/tls as advised in the Xen Faq

Other resources

TODO

  • Add note about localized messages in log file and method to process those reports
  • Search for master reports, complete missing references in wiki and cross-reference report/wiki content
  • Add section 'How to triage' and merge the one from DebuggingUpdateManager

  • Add missing descriptions & workaround

  • Add section with common install/upgrade issues for specific packages ? only provide list of report + description ?


CategoryBugSquad CategoryDebugging

DebuggingInstallationIssues (last edited 2010-06-24 00:23:31 by alemartini)