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

Stephen의 제안에 따라 다음과 같은 작업이 수행되었습니다.

[$] 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 ...다시 시도하고 필요한 경우 스냅샷에서 누락된 다른 패키지를 다시 설치하세요.

관련 정보