데비안 패키지를 리포지토리와 릴리스에 고정하는 올바른 구문은 무엇입니까?

데비안 패키지를 리포지토리와 릴리스에 고정하는 올바른 구문은 무엇입니까?

다음에 설명된 대로 snapshot.debian.org에서 이전 버전의 Subversion을 설치하려고 합니다..deb 패키지의 이전 버전을 설치하고 고정하려면 어떻게 해야 하나요?. 정확하다고 생각되는 저장소를 설정하고 고정했지만 apt-cache-policy출력에 표시된 대로 예상대로 작동하지 않습니다. 오류는 어디에 있습니까?

/etc/apt/sources.list.d/snapshots.list

# snapshots.debian.org                                          
# added for subversion 1.9.2 subversion bug #803725             
deb http://snapshot.debian.org/archive/debian unstable main 

/etc/apt/preferences.d/subversion

Package: subversion
Pin: origin snapshot.debian.org
Pin: version 1.9.2-1
Pin-Priority: 700

apt-cache policy subversion

subversion:
  Installed: (none)
  Candidate: 1.9.2-3
  Package pin: (not found)
  Version table:
     1.9.2-3 700
        500 http://http.debian.net/debian/ unstable/main amd64 Packages

답변1

문제는 snapshot.debian.org를 패키지 소스로 직접 사용할 수 없다는 것입니다. 이 콘텐츠를 보려면 이 사이트의 URL을 source.list의 소스로 선택하세요. 예:

deb http://snapshot.debian.org/archive/debian/20151018T155352Z/ testing main
deb-src http://snapshot.debian.org/archive/debian/20151018T155352Z/ testing main

(다른 설정을 주석 처리) 그런 다음

apt-get update

강제로 사용하게 하라오직출처(예:Debian의 일부 패키지를 이전 버전으로 다운그레이드하고 강제 실행). 내가 이것을 할 때 나는 얻는다.

$ apt-get update
Hit http://snapshot.debian.org testing InRelease
E: Release file for http://snapshot.debian.org/archive/debian/20151018T155352Z/dists/testing/InRelease is expired (invalid since 16d 9h 47min 8s). Updates for this repository will not be applied.

1.9.2-2 출시 전 마지막 스냅샷입니다. 대신 메일링 리스트에서 답글을 찾을 수 있습니다.Re: Stretch에서 업데이트한 후 Plasma 5가 시작되지 않습니다.Matthias Bodenbinder는 다음과 같이 제안했습니다.

  • 필요한 특정 버전을 다운로드하세요.
  • 패키지를 설치하십시오. 즉, 다음을 사용하십시오.dpkg
  • (현재 설치됨) 패키지(이 예제에서는 사용하지 않음)기원).

이 지침을 테스트하기 위해 Subversion_1.9.1-1의 초기 릴리스에서 다음 링크를 사용했습니다.

그리고 설치하세요:

$ dpkg -i libsvn1_1.9.1-1_amd64.deb subversion-tools_1.9.1-1_amd64.deb subversion_1.9.1-1_amd64.deb
dpkg: warning: downgrading libsvn1:amd64 from 1.9.2-2 to 1.9.1-1
(Reading database ... 371500 files and directories currently installed.)
Preparing to unpack libsvn1_1.9.1-1_amd64.deb ...
Unpacking libsvn1:amd64 (1.9.1-1) over (1.9.2-2) ...
Preparing to unpack subversion-tools_1.9.1-1_amd64.deb ...
Unpacking subversion-tools (1.9.1-1) over (1.9.1-1) ...
Preparing to unpack subversion_1.9.1-1_amd64.deb ...
Unpacking subversion (1.9.1-1) over (1.9.1-1) ...
Setting up libsvn1:amd64 (1.9.1-1) ...
Setting up subversion (1.9.1-1) ...
Setting up subversion-tools (1.9.1-1) ...
Processing triggers for libc-bin (2.19-22) ...
Processing triggers for man-db (2.7.4-1) ...

그런 다음 (에서 /etc/apt/preferences.d/subversion):

Package: libsvn1
Pin: version 1.9.1-1
Pin-Priority: 1000

Package: subversion-tools
Pin: version 1.9.1-1
Pin-Priority: 1000

Package: subversion
Pin: version 1.9.1-1
Pin-Priority: 1000

마침내

$ apt-cache policy
Package files:
 100 /var/lib/dpkg/status
     release a=now
 500 http://ftp.us.debian.org/debian/ testing-updates/main Translation-en
 500 http://ftp.us.debian.org/debian/ testing-updates/main amd64 Packages
     release o=Debian,a=testing-updates,n=stretch-updates,l=Debian,c=main
     origin ftp.us.debian.org
 500 http://security.debian.org/ testing/updates/main Translation-en
 500 http://security.debian.org/ testing/updates/main amd64 Packages
     release o=Debian,a=testing,n=stretch,l=Debian-Security,c=main
     origin security.debian.org
 500 http://ftp.us.debian.org/debian/ testing/main Translation-en
 500 http://ftp.us.debian.org/debian/ testing/main amd64 Packages
     release o=Debian,a=testing,n=stretch,l=Debian,c=main
     origin ftp.us.debian.org
Pinned packages:
     subversion -> 1.9.1-1
     libsvn1 -> 1.9.1-1
     subversion-tools -> 1.9.1-1

관련 정보