Debian Stretch - アップデートを中止 - dpkgにバグがあるようです。

Debian Stretch - アップデートを中止 - dpkgにバグがあるようです。

私は見たDebian Jessie - dpkg/apt のインストール、アップデート、アンインストールが壊れました。対照的に、Pythonはここで非常にうまく機能します。

[$] ls -l /usr/bin/python

lrwxrwxrwx 1 root root 9 Jun  3 20:09 /usr/bin/python -> python2.7

システムアップデート/アップグレードをほとんど不可能にするソフトウェアパッケージが3〜4個あります。

[$] sudo dpkg --audit cme libconfig-model-perl libconfig-model-dpkg-perl fonts-arphic-uming
The following packages are in a mess due to serious problems during
installation.  They must be reinstalled for them (and any packages
that depend on them) to function properly:
 cme                  Check or edit configuration data with Config::Model
 fonts-arphic-uming   (no description available)
 libconfig-model-dpkg-perl editor for Dpkg source files with validation
 libconfig-model-perl module for describing and editing configuration data

The following packages are missing the list control file in the
database, they need to be reinstalled:
 fonts-arphic-uming   (no description available)

The following packages are missing the md5sums control file in the
database, they need to be reinstalled:
 fonts-arphic-uming   (no description available)

適性でパッケージを再インストールしようとしましたが、次のような結果が得られました。

[$] sudo aptitude reinstall cme libconfig-model-perl libconfig-model-dpkg-perl fonts-arphic-uming
                              
The following packages will be REINSTALLED:
  cme fonts-arphic-uming libconfig-model-dpkg-perl libconfig-model-perl 
0 packages upgraded, 0 newly installed, 4 reinstalled, 0 to remove and 29 not upgraded.
E: Can't find a source to download version '2.092-1' of 'libconfig-model-perl:amd64'
After unpacking 0 B will be used.
E: Can't find a source to download version '2.092-1' of 'libconfig-model-perl:amd64'
E: Internal error: couldn't generate list of packages to download

libconfig-model-perl共有するのを忘れました。バイナリパッケージをダウンロードしてインストールしようとしましたが、snapshots.debian.org次のメッセージが表示されます。

[$] sudo dpkg -i libconfig-model-perl_2.092-1_all.deb

[sudo] password for shirish: 
D000001: ensure_diversions: new, (re)loading
D000001: ensure_statoverrides: new, (re)loading
(Reading database ... 1205324 files and directories currently installed.)
Preparing to unpack libconfig-model-perl_2.092-1_all.deb ...
D000001: process_archive oldversionstatus=broken due to postinst failure
dpkg-maintscript-helper: error: version '2.075-2~' is not valid
dpkg: warning: subprocess old pre-removal script returned error exit status 1
dpkg: trying script from the new package instead ...
dpkg-maintscript-helper: error: version '2.075-2~' is not valid
dpkg: error processing archive libconfig-model-perl_2.092-1_all.deb (--install):
 subprocess new pre-removal script returned error exit status 1
D000001: ensure_diversions: same, skipping
dpkg-maintscript-helper: error: version '2.070-1~' is not valid
dpkg: error while cleaning up:
 subprocess installed post-installation script returned error exit status 1
D000001: ensure_diversions: same, skipping
D000001: cmpversions a='0:2016.03.30' b='0:2016.05.24' r=-2
D000001: cmpversions a='0:1.18.14' b='0:1.16' r=2
D000001: cmpversions a='0:1.18.14' b='0:1.16' r=2
D000001: cmpversions a='0:1.18.14' b='0:1.16' r=2
Errors were encountered while processing:
 libconfig-model-perl_2.092-1_all.deb

混乱しています。誰が助けることができますか?

mysources.list -

[$] cat /etc/apt/sources.list

 #### testing #########
deb http://httpredir.debian.org/debian/ testing main contrib non-free
deb-src http://httpredir.debian.org/debian testing main contrib non-free

 #### unstable #########
deb http://httpredir.debian.org/debian unstable main contrib non-free
deb-src http://httpredir.debian.org/debian unstable main contrib 

 #### experimental #########
deb http://httpredir.debian.org/debian experimental main contrib 
deb-src http://httpredir.debian.org/debian experimental main contrib

 ##### Debug packages #######
deb http://debug.mirrors.debian.org/debian-debug/ testing-debug main
deb http://debug.mirrors.debian.org/debian-debug/ unstable-debug main
deb http://debug.mirrors.debian.org/debian-debug/ experimental-debug main

DPkGバージョン -

[$] apt-cache policy dpkg
                 
dpkg:
  Installed: 1.18.14
  Candidate: 1.18.14
  Version table:
     1.18.15 1
          1 http://httpredir.debian.org/debian unstable/main amd64 Packages
 *** 1.18.14 600
        600 http://httpredir.debian.org/debian testing/main amd64 Packages
        100 /var/lib/dpkg/status

スティーブンの提案に基づき、以下の作業が行われた。

[$] sudo rm /var/lib/dpkg/info/libconfig-model-perl.prerm

以前のパッケージをインストールしてみてください -

┌─[shirish@debian] - [~] - [5108]
└─[$] sudo dpkg -i libconfig-model-perl_2.092-1_all.deb

D000001: ensure_diversions: new, (re)loading
D000001: ensure_statoverrides: new, (re)loading
(Reading database ... 1205324 files and directories currently installed.)
Preparing to unpack libconfig-model-perl_2.092-1_all.deb ...
D000001: process_archive oldversionstatus=broken due to postinst failure
dpkg-maintscript-helper: error: version '2.070-1~' is not valid
dpkg: error processing archive libconfig-model-perl_2.092-1_all.deb (--install):
 subprocess new pre-installation script returned error exit status 1
D000001: ensure_diversions: same, skipping
dpkg-maintscript-helper: error: version '2.075-2~' is not valid
dpkg: error while cleaning up:
 subprocess new post-removal script returned error exit status 1
D000001: ensure_diversions: same, skipping
D000001: cmpversions a='0:2016.03.30' b='0:2016.05.24' r=-2
D000001: cmpversions a='0:1.18.14' b='0:1.16' r=2
D000001: cmpversions a='0:1.18.14' b='0:1.16' r=2
D000001: cmpversions a='0:1.18.14' b='0:1.16' r=2
Errors were encountered while processing:
 libconfig-model-perl_2.092-1_all.deb

もうアイデアがある人はいますか?

破損したパッケージを検索しても結果はありません。

[$] alias aptb 

aptb='aptitude search '\''~b'\'

そして検索してみてください——

┌─[shirish@debian] - [~] - [5109]
└─[$] aptb
              
┌─[shirish@debian] - [~] - [5110]

こんなことは起きてはいけない、そうですか?

ご覧のとおり、dpkg-debugをオンにしました。

┌─[shirish@debian] - [~] - [4998]
└─[$] cat /etc/dpkg/dpkg.cfg

# dpkg configuration file
#
# This file can contain default options for dpkg.  All command-line
# options are allowed.  Values can be specified by putting them after
# the option, separated by whitespace and/or an `=' sign.
#
debug=1

# Do not enable debsig-verify by default; since the distribution is not using
# embedded signatures, debsig-verify would reject all packages.
no-debsig

# Log status changes and actions to a file.
log /var/log/dpkg.log

しかし、まだスティーブンが要求したようにしました。

┌─[shirish@debian] - [~] - [5126]
└─[$] su -
                                 
Password: 

root@debian:~# DPKG_DEBUG=1 dpkg -i libconfig-model-perl_2.092-1_all.deb
dpkg: error: cannot access archive 'libconfig-model-perl_2.092-1_all.deb': No such file or directory

root@debian:~# pwd
/root

root@debian:~# cd /home/shirish

root@debian:/home/shirish# DPKG_DEBUG=1 dpkg -i libconfig-model-perl_2.092-1_all.deb

D000001: ensure_diversions: new, (re)loading
D000001: ensure_statoverrides: new, (re)loading
(Reading database ... 1205324 files and directories currently installed.)
Preparing to unpack libconfig-model-perl_2.092-1_all.deb ...
D000001: process_archive oldversionstatus=broken due to failed removal or installation
dpkg-maintscript-helper: error: version '2.070-1~' is not valid
dpkg: error processing archive libconfig-model-perl_2.092-1_all.deb (--install):
 subprocess new pre-installation script returned error exit status 1
D000001: ensure_diversions: same, skipping
dpkg-maintscript-helper: error: version '2.075-2~' is not valid
dpkg: error while cleaning up:
 subprocess new post-removal script returned error exit status 1
D000001: ensure_diversions: same, skipping
D000001: cmpversions a='0:2016.03.30' b='0:2016.05.24' r=-2
D000001: cmpversions a='0:1.18.14' b='0:1.16' r=2
D000001: cmpversions a='0:1.18.14' b='0:1.16' r=2
D000001: cmpversions a='0:1.18.14' b='0:1.16' r=2
Errors were encountered while processing:
 libconfig-model-perl_2.092-1_all.deb

以前のバージョンのdpkgでは、パッケージをインストールでき、問題は表示されませんでした。

┌─[shirish@debian] - [~] - [5168]
└─[$] sudo dpkg --audit cme libconfig-model-perl libconfig-model-dpkg-perl fonts-arphic-uming
                                        
┌─[shirish@debian] - [~] - [5169]

もしかしたら予期せぬことが起こるかと思って一日開いておきます。これまですべてをアップグレードする予定dpkgですが、最後にこれを行います。

答え1

以下から再インストールしてみることができます。スナップ写真;適切なバージョンを見つけることができますlibconfig-model-perlそこ:

wget http://snapshot.debian.org/archive/debian/20160924T233848Z/pool/main/libc/libconfig-model-perl/libconfig-model-perl_2.092-1_all.deb
sudo dpkg -i libconfig-model-perl_2.092-1_all.deb

dpkg-maintscript-helper現在のバージョンで遭遇しているバグを考えると、dpkg真剣に混乱している別の問題がある可能性があります。再インストールするには、スクリプトをlibconfig-model-perl削除してパッケージを再インストールしてください。prerm

sudo rm /var/lib/dpkg/info/libconfig-model-perl.prerm
sudo dpkg -i libconfig-model-perl_2.092-1_all.deb

それでも機能しない場合は、dpkg次にダウングレードしてみてください。バージョン 1.18.10、これは失敗したバージョンチェックが導入される前にリリースされた最後のバージョンでした。これを完了したら、再インストールしてみlibconfig-model-perlてください。バージョンチェックは失敗せず、メンテナンススクリプトは問題なく完了します。

完了したらaptitude reinstall ...再試行し、必要に応じてスナップショットから見つからない他のパッケージを再インストールしてください。

関連情報