을 실행하면 상태가 포함된 apt-show-versions
수십 개의 No available version in archive
패키지가 표시됩니다. 예를 들어:
# apt-show-versions -a -p ffmpeg
ffmpeg:i386 6:0.8.17-1 install ok installed
No stable version
ffmpeg:i386 6:0.8.17-1 installed: No available version in archive
#
이러한 모든 패키지의 공통점은 모두 /var/lib/dpkg/status
고유한 저장소를 사용할 수 있다는 것입니다. 예를 들어:
# apt-cache policy ffmpeg
ffmpeg:
Installed: 6:0.8.17-1
Candidate: 6:0.8.17-1
Version table:
*** 6:0.8.17-1 0
100 /var/lib/dpkg/status
#
패키지 버전이 리포지토리 목록에서 사용 가능하더라도 /var/lib/dpkg/status
우선 순위가 낮은 리포지토리로 사용됩니다.
# apt-cache policy tcpdump
tcpdump:
Installed: 4.6.2-5+deb8u1
Candidate: 4.6.2-5+deb8u1
Version table:
*** 4.6.2-5+deb8u1 0
500 http://http.debian.net/debian/ jessie/main i386 Packages
100 /var/lib/dpkg/status
#
/var/lib/dpkg/status 파일이 패키지 저장소로 나열되는 이유는 무엇입니까?
답변1
잘 이해했으면 좋겠습니다. 이는 시스템에 특정 버전이 존재한다는 정보입니다.
예를 들어
$ LANG=C apt-cache policy k3b
k3b:
Installed: (none)
Candidate: 2.0.2-8
Version table:
2.0.2-8 0
500 http://http.us.debian.org/debian/ jessie/main amd64 Packages
내 시스템에는 k3b가 없으므로 상태 파일에는 아무것도 없습니다. 소스에 ffmpeg 패키지를 사용할 수 없습니다. 백포트와 deb-multimedia가 있습니다.
LANG=C apt-cache policy ffmpeg
ffmpeg:
Installed: 10:2.6.9-dmo1
Candidate: 10:2.6.9-dmo1
Version table:
*** 10:2.6.9-dmo1 0
300 http://www.deb-multimedia.org/ jessie/main amd64 Packages
100 /var/lib/dpkg/status
7:3.2-2~bpo8+2 0
100 http://http.us.debian.org/debian/ jessie-backports/main amd64 Packages
LANG=C cat /var/lib/dpkg/status | egrep "Package: ffmpeg"-A9
Package: ffmpeg
Status: install ok installed
Priority: optional
Section: graphics
Installed-Size: 1951
Maintainer: Christian Marillat <[email protected]>
Bugs: mailto:[email protected]
Architecture: amd64
Source: ffmpeg-dmo
Version: 10:2.6.9-dmo1
상태 파일에도 귀하의 버전이 있습니다.
apt-show-versions는 dpkg 상태 파일과 /var/apt/lists의 파일을 구문 분석합니다. Wheeze에서 Jesse로 업그레이드하신 것 같습니다. 그리고 시스템에 wheezy의 패키지 중 일부가 있습니다.
저는 영어로 설명을 잘 못해요. 이해할 수 있기를 바랍니다.