[elbe-devel] [BUG] elbe-updated: Failure during Package-installation leads to endless loop

Türk, Jan Jan.Tuerk at emtrion.de
Wed Dec 6 15:06:30 CET 2017


Hi, 

after some more investigation it seems to be an Bug in python-apt, inside apt_pkg.
To prepare a Test-Environment, create a dummy-package (fail-pkg here) which fails in the postinst script (exit 1) and install it on any system.

Minimal working example:
<code>
#!/usr/bin/python

import os
import apt
import apt_pkg

apt_pkg.init()
cache = apt_pkg.Cache()
depcache = apt_pkg.DepCache(cache)
depcache.init()

try:
    depcache.commit(apt.progress.base.AcquireProgress(), apt.progress.base.InstallProgress())
except:
    print("An ERROR\n")	

</code>

custom fork found
got pid: 15562
got pid: 0
got fd: 4
Setting up fail-pkg (1.0-1) ...
Dump package fail `configure'
dpkg: error processing package fail-pkg (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 fail-pkg
custom fork found
got pid: 15751
got pid: 0
got fd: 4
Setting up fail-pkg (1.0-1) ...
Dump package fail `configure'
dpkg: error processing package fail-pkg (--configure):
 subprocess installed post-installation script returned error exit status 1

etc etc etc

> -----Ursprüngliche Nachricht-----
> Von: elbe-devel [mailto:elbe-devel-bounces at linutronix.de] Im Auftrag von
> Türk, Jan
> Gesendet: Mittwoch, 6. Dezember 2017 11:57
> An: Manuel Traut (manut at linutronix.de); 'torben.hohn at linutronix.de'
> Cc: ElbeDevel_at_Linuxtronix
> Betreff: [elbe-devel] [BUG] elbe-updated: Failure during Package-installation
> leads to endless loop
> 
> Hi,
> 
> if an Package fails during the installation within elbe-updated it leads to an
> endless installation loop inside the rootfilesystem.
> For testing purposes we've created a package which fails during postinst step,
> which might happen in the field under certain conditions.
> Afterwards elbe-updated got stuck in an endless loop of applying the update.
> 
> Dec 06 11:54:05 somehost elbe[249]: Setting up fail-pkg (1.0-1) ...
> Dec 06 11:54:05 somehost elbe[597]: (3/3) 79.5455% rsyslog - Installed rsyslog
> (armhf) 81.8182% Dec 06 11:54:05 somehost elbe[597]: (3/3) 81.8182% fail-pkg
> - Configuring fail-pkg (armhf) 81.8182% Dec 06 11:54:05 somehost elbe[597]:
> (3/3) 81.8182% fail-pkg - Configuring fail-pkg (armhf) 84.0909% Dec 06
> 11:54:05 somehost elbe[249]: Dump package fail `configure'
> Dec 06 11:54:05 somehost elbe[249]: dpkg: error processing package fail-pkg (-
> -configure):
> Dec 06 11:54:05 somehost elbe[249]:  subprocess installed post-installation
> script returned error exit status 1 Dec 06 11:54:05 somehost elbe[249]: Setting
> up vim-tiny (2:8.0.0197-4+deb9u1) ...
> Dec 06 11:54:05 somehost elbe[597]: (3/3) 84.0909% vim-tiny - Configuring
> vim-tiny (armhf) 84.0909% Dec 06 11:54:05 somehost elbe[597]: (3/3)
> 84.0909% vim-tiny - Configuring vim-tiny (armhf) 86.3636% Dec 06 11:54:06
> somehost elbe[597]: (3/3) 86.3636% vim-tiny - Installed vim-tiny (armhf)
> 88.6364% Dec 06 11:54:06 somehost elbe[249]: Errors were encountered while
> processing:
> Dec 06 11:54:06 somehost elbe[249]:  fail-pkg Dec 06 11:54:08 somehost
> elbe[597]: (3/3) Get:73 file:/var/cache/elbe/repos/base stretch/main armhf
> cron armhf 3.0pl1-128+b1 [92.4 kB] Dec 06 11:54:08 somehost elbe[597]: (3/3)
> Get:74 file:/var/cache/elbe/repos/base stretch/main armhf dmidecode armhf
> 3.0-4 [56.1 kB] Dec 06 11:54:08 somehost elbe[597]: (3/3) Get:75
> file:/var/cache/elbe/repos/base stretch/main armhf logrotate armhf 3.11.0-0.1
> [56.1 kB] Dec 06 11:54:08 somehost elbe[597]: (3/3) Get:76
> file:/var/cache/elbe/repos/base stretch/main armhf nano armhf 2.7.4-1 [475
> kB] Dec 06 11:54:08 somehost elbe[597]: (3/3) Get:77
> file:/var/cache/elbe/repos/base stretch/main armhf rsyslog armhf 8.24.0-1
> [522 kB] Dec 06 11:54:08 somehost elbe[597]: (3/3) Get:78
> file:/var/cache/elbe/repos/base stretch/main armhf vim-common all
> 2:8.0.0197-4+deb9u1 [159 kB] Dec 06 11:54:08 somehost elbe[597]: (3/3)
> Get:79 file:/var/cache/elbe/repos/base stretch/main armhf vim-tiny armhf
> 2:8.0.0197-4+deb9u1 [389 kB] Dec 06 11:54:08 somehost elbe[597]: (3/3)
> Get:80 file:/var/cache/elbe/repos/somehost-bsp_1.2.2_ssh_updated_fail/repo
> stretch/main armhf fail-pkg all 1.0-1 [1282 B] Dec 06 11:54:08 somehost
> elbe[249]: custom fork found Dec 06 11:54:08 somehost elbe[249]: got pid:
> 4994 Dec 06 11:54:08 somehost elbe[249]: got pid: 0 Dec 06 11:54:08 somehost
> elbe[249]: got fd: 16 Dec 06 11:54:12 somehost elbe[249]: debconf: unable to
> initialize frontend: Dialog Dec 06 11:54:12 somehost elbe[249]: debconf: (TERM
> is not set, so the dialog frontend is not usable.) Dec 06 11:54:12 somehost
> elbe[249]: debconf: falling back to frontend: Readline Dec 06 11:54:12
> somehost elbe[249]: debconf: unable to initialize frontend: Readline Dec 06
> 11:54:12 somehost elbe[249]: debconf: (Can't locate Term/ReadLine.pm in
> @INC (you may need to install the Term::ReadLine module) (@INC contains:
> /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.24.1
> /usr/local/share/perl/5.24.1 /usr/lib/arm-linux-gnueabihf/perl5/5.24
> /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.24 /usr/share/perl/5.24
> /usr/local/lib/site_perl /usr/lib/arm-linux-gnueabihf/perl-base .) at
> /usr/share/perl5/Debconf/FrontEnd/Readline.pm line 7, <> line 8.) Dec 06
> 11:54:12 somehost elbe[249]: debconf: falling back to frontend: Teletype Dec
> 06 11:54:12 somehost elbe[249]: dpkg-preconfigure: unable to re-open stdin:
> Dec 06 11:54:15 somehost ntpd[370]: error resolving pool
> 3.debian.pool.ntp.org: Temporary failure in name resolution (-3) Dec 06
> 11:54:16 somehost elbe[249]: debconf: unable to initialize frontend: Dialog Dec
> 06 11:54:16 somehost elbe[249]: debconf: (TERM is not set, so the dialog
> frontend is not usable.) Dec 06 11:54:16 somehost elbe[249]: debconf: falling
> back to frontend: Readline Dec 06 11:54:16 somehost elbe[249]: debconf:
> unable to initialize frontend: Readline Dec 06 11:54:16 somehost elbe[249]:
> debconf: (Can't locate Term/ReadLine.pm in @INC (
> 
> Best Regards
> 
> Jan Türk
> Software Engineer
> 
> Phone +49 721 62725-0
> Fax +49 721 62725-19
> E-mail jan.tuerk at emtrion.de
> 
> 
> 
> _______________________________________________
> elbe-devel mailing list
> elbe-devel at linutronix.de
> https://lists.linutronix.de/mailman/listinfo/elbe-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: winmail.dat
Type: application/ms-tnef
Size: 6914 bytes
Desc: not available
URL: <http://lists.linutronix.de/pipermail/elbe-devel/attachments/20171206/30c5c8d6/attachment.bin>


More information about the elbe-devel mailing list