APT는 손상된 설치를 보존합니다.

APT는 손상된 설치를 보존합니다.

저는 Debian 9.5를 사용하고 있으며 최근에 패키지( mariadb)를 제거했는데 새 패키지를 설치하려고 하면 다음 메시지가 계속 나타납니다.

E: Unable to correct problems, you have held broken packages.

결과가 없는 다음 명령을 시도했습니다.

sudo dpkg --configure -a
sudo apt-get install -f
apt-get install --fix-broken

또한 깨진 패키지를 표시하기 위해 이 명령을 실행했지만 아무 것도 표시되지 않았습니다.

apt-mark showhold

sudo를 실행하려고 해도 apt-get upgrade다음과 같은 결과가 나타납니다.

0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

그런 다음 적성 패키지 관리자를 설치할 수 있었고(방법은 확실하지 않음) 새 패키지를 설치하려고 시도했는데 sudo aptitude install mysql-server다음과 같은 내용이 표시되었습니다.

The following packages have unmet dependencies:
 libdbi-perl : Depends: perlapi-5.24.1 which is a virtual package, provided by:
                        - perl-base (5.24.1-3+deb9u4), but 5.26.2-7 is installed

 libfcgi-perl : Depends: perlapi-5.24.1 which is a virtual package, provided by:
                         - perl-base (5.24.1-3+deb9u4), but 5.26.2-7 is installed

 libterm-readkey-perl : Depends: perlapi-5.24.1 which is a virtual package, provided by:
                                 - perl-base (5.24.1-3+deb9u4), but 5.26.2-7 is installed

 libdbd-mysql-perl : Depends: perlapi-5.24.1 which is a virtual package, provided by:
                              - perl-base (5.24.1-3+deb9u4), but 5.26.2-7 is installed

The following actions will resolve these dependencies:

      Keep the following packages at their current version:         
1)      default-mysql-server [Not Installed]                        
2)      libcgi-fast-perl [Not Installed]                            
3)      libdbd-mysql-perl [Not Installed]                           
4)      libdbi-perl [Not Installed]                                 
5)      libfcgi-perl [Not Installed]                                
6)      libterm-readkey-perl [Not Installed]                        
7)      mariadb-server-10.1 [Not Installed]                         
8)      mysql-server [Not Installed]                                

      Leave the following dependencies unresolved:                  
9)      libcgi-pm-perl recommends libcgi-fast-perl (>= 1:2.01)      
10)     mariadb-client-10.1 recommends libdbd-mysql-perl (>= 1.2202)
11)     mariadb-client-10.1 recommends libdbi-perl                  
12)     mariadb-client-10.1 recommends libterm-readkey-perl     

출력은 다음과 같습니다 apt policy pearl-base.

 perl-base:    
    Installed: 5.26.2-7    
    Candidate: 5.26.2-7    
    Version table:    
 *** 5.26.2-7 500   
    500 http://ftp.us.debian.org/debian testing/main amd64 Packages    
    100 /var/lib/dpkg/status    
 5.24.1-3+deb9u4 500    
    500 http://httpredir.debian.org/debian stretch/main amd64 Packages    
    500 http://ftp.de.debian.org/debian stretch/main amd64 Packages     
    500 http://deb.debian.org/debian stretch/main amd64 Packages        

답변1

안정적인 저장소와 마찬가지로 우선 순위가 500인 테스트가 저장소에 있습니다. 이는 기본적으로 Debian 9.5가 아닌 Debian 테스트를 실행하고 있음을 의미합니다. (데비안의 다음 버전을 테스트하는 데 도움을 주셔서 감사합니다!)

mysql-server현재 테스트에서는 사용할 수 없으므로 apt install mysql-server이 버전(또는 그 변형)을 Debian stable에 설치하려고 시도했지만 Debian 베타 버전이 아닌 Debian stable 버전의 Perl이 필요하므로 설치를 진행할 수 없습니다.

이 문제를 해결하기 위해 제안합니다Debian 안정 버전으로 되돌리기. 테스트를 계속하려면 MySQL이 그곳으로 마이그레이션될 때까지 기다리거나 하이브리드 테스트로 전환해야 합니다/불안정한설정.

관련 정보