데비안의 개별 패키지를 다운그레이드할 수 있는 방법이 있나요?

데비안의 개별 패키지를 다운그레이드할 수 있는 방법이 있나요?

저는 현재 데비안 "테스트"를 실행 중이고 방금 Gimp를 버전에서 2.10.8-2버전으로 업그레이드했습니다 2.10.8-2+b1. 안타깝게도 그것은 나에게 효과가 없습니다. 매번 충돌이 발생하기 때문에 이미지를 열 수 없으며 새로운 빈 이미지를 만들 수도 없습니다.

저장소에 최소한 몇 가지 버전의 패키지가 있기를 바라면서 다음을 사용하여 다운그레이드를 시도했습니다.

apt install gimp=2.10.8-2

그리고

apt-get install gimp=2.10.8-2

그러나 둘 다 실패했습니다 Version '2.10.8-2' for 'gimp' was not found.

데비안의 패키지를 다운그레이드할 수 있는 안정적인 방법이 있나요? 만족스럽지 못한 업그레이드 후에 일종의 "롤백"이 발생할까요?

stable저장소를 추가하고 때로는 다운그레이드를 강제하여 문제가 되는 패키지를 차단하는 것을 고려했습니다 . 하지만 먼저 너무 많은 종속성을 다운그레이드해야 한다는 점을 고려하여 덜 과감한 솔루션을 원했습니다. 해결하는 것보다 더 많은 문제를 일으킬 수 있습니다.

답변1

이러한 apt도구는 롤백을 지원하지 않으므로 업그레이드를 취소할 수 있는 직접적인 방법은 없습니다. 다운그레이드하려는 패키지를 식별하고 apt또는 에 제공할 해당 바이너리를 찾아야 합니다 dpkg. 사용할 수 있는 방법에는 여러 가지가 있습니다.

가장 일반적으로 사용하는 것은snapshot.debian.org. 여기에는 데비안 아카이브에 업로드된 모든 패키지의 복사본이 포함되어 있으며, 주어진 타임스탬프에 대한 일관된 패키지 세트가 포함된 스냅샷 저장소도 제공합니다. 귀하의 경우에는 다음을 찾을 것입니다.gimp소스 코드 패키지 의 적절한 버전을 클릭한 다음 해당 저장소를 소스에 추가하세요(지침은 홈페이지 참조).

gimp(이미 고려한) 이 특정 인스턴스에서 작동하는 또 다른 접근 방식은 데비안 10을 저장소에 추가하는 것입니다. 다운그레이드하려는 패키지 버전이 저장소에서 사용 가능하기 때문입니다. 현재로서는 패키지 이외의 다운그레이드는 발생 하지 gimp않습니다 .libopenexr23libopenexr24

apt마지막으로 아카이브( )에 이전 패키지가 아직 남아 있으므로 /var/cache/apt/archives캐시를 사용하거나 저장소로 변환하여 해당 패키지를 설치할 수 있습니다.dpkg -i

  • 모든 패키지를 안전한 장소에 복사하세요.

  • Packages파일을 생성합니다 :

    dpkg-scanpackages . > Packages
    

    (모든 패키지를 복사한 디렉토리에 dpkg-dev필요합니다 dpkg-scanpackages.)

  • 압축 Packages파일:

    gzip < Packages > Packages.gz
    

    (이렇게 하면 두 파일이 모두 유지됩니다)

  • Release파일을 생성합니다 :

    apt-ftparchive -o "APT::FTPArchive::Release::Origin=cache-repository" release . > Release
    

    (당신은 apt-utils해야합니다 apt-ftparchive)

  • 서명:

     gpg --yes --sign --armor --clearsign --output InRelease Release
    

deb file:/path/to/...그런 다음 저장소에 항목을 추가하고 거기에서 패키지를 설치할 수 있습니다 . ( aptAssumption 저장소를 신뢰할 수 있다고 말하면 서명 단계를 건너뛸 수 있습니다.)

관련 정보