패키지 버전의 코드명("wheezy" 또는 "sid")을 얻는 방법은 무엇입니까?

패키지 버전의 코드명("wheezy" 또는 "sid")을 얻는 방법은 무엇입니까?

apt-cache show다양한 버전의 패키지를 보여줍니다.

# apt-cache show libc6:i386
Package: libc6
Version: 2.17-97
Architecture: i386
...

Package: libc6
Status: install ok installed
Version: 2.17-7
Architecture: i386
Multi-Arch: same
...

Package: libc6
Version: 2.13-38
Architecture: i386
...

# apt-get show libc6:amd64
Package: libc6
Version: 2.17-97
Architecture: amd64
...

Package: libc6
Version: 2.13-38
Architecture: amd64
...

하지만 stable/testing/unstable과 같은 릴리스 코드명에 패키지 버전을 매핑하는 방법은 무엇입니까?

[XY 문제 노트] - 내가 시도한 것과 무슨 일이 일어나는지:

amd64 바이너리도 실행하기 위해 i386 데비안을 부트스트랩하려고 합니다(i386을 기본 아치로 유지).

  • 새로운 amd64 세계를 시도하는 첫걸음으로 프로그램을 실행해보았는데,
  • libssl.so.1.0.0을 찾지 못했습니다.
  • libssl1.0.0:amd64를 설치하려고 했는데,
  • libgcc1 비호환으로 인해 중지되었습니다.
  • libgcc1:amd64 설치를 시도했는데 비호환성 오류가 발생했습니다.
  • 시스템을 최신 패키지(예: apt-get upgrade0 표시)로 업그레이드했습니다.
  • 지정된 명시적 버전으로 설치하여 i386 libgcc 관련 패키지를 강제로 업그레이드함( apt-get install libstdc++6=4.8.2-1 gcc-4.8-base=4.8.2-1 libgcc1=1:4.8.2-1 libgfortran3=4.8.2-1 libquadmath0=4.8.2-1 libgcc-4.8-dev=4.8.2-1 libgomp1=4.8.2-1 libitm1=4.8.2-1 libatomic1=4.8.2-1 libasan0=4.8.2-1 libstdc++-4.8-dev=4.8.2-1)
  • libgcc1:amd64 설치를 시도했는데 이전에 비해 오류가 줄어들었지만 여전히 libc6:amd64가 없어 중지되었습니다.
  • libc6:amd64 설치를 시도했지만 엄청난 비호환성으로 인해 중단되었습니다.
  • (에 따르면 apt-cache info) libc6의 "내" i386 버전에는 현재 해당하는 amd64 버전이 없다는 것을 발견했습니다.
  • 다양한 버전으로 인해 혼동됩니다. 여전히 "squeeze"(너무 오래됨)에서 발생하고 "sid"에서 발생합니다(업그레이드용이 아닌 수동 설치에만 사용 가능). 방금 완전히 업그레이드했는데도 "내" 버전의 라이브러리가 없는 이유는 무엇입니까?..

[/XY 문제 참고]

업데이트시험을 마친 apt-cache policy:

# apt-cache policy libc6:i386
libc6:
  Installed: 2.17-7
  Candidate: 2.17-7
  Version table:
     2.17-97 0
         10 http://ftp.de.debian.org/debian/ sid/main i386 Packages
         10 http://ftp.mgts.by/debian/ testing/main i386 Packages
 *** 2.17-7 0
        100 /var/lib/dpkg/status
     2.13-38 0
        900 http://ftp.mgts.by/debian/ wheezy/main i386 Packages

내 libc6이 그 사이에 있는 것 같습니다.

답변1

패키지 버전의 코드명("wheezy" 또는 "sid")을 어떻게 얻나요?

데비안은 롤링 릴리스이기 때문에 패키지는 어디에도 없거나 첨부되지 않습니다 sid. wheezy패키지를 어디에 설치했는지 알 수 있는 유일한 방법은 apt-cache policy package.

libc6 문제 정보:

32비트에서 64비트로 "업그레이드"하려는 경우에는 불가능하거나 시스템이 손상될 가능성이 높습니다.

패키지 libc6는 모든 종속성의 어머니 군주입니다. 시스템이 64비트인지 32비트인지 궁극적으로 알려주는 시스템이며 이를 변경하는 것은 쉽지 않습니다. 오래된마이그레이션 가이드Multiarch라는 아름다움이 있기 때문에 더 이상 작동하지 않습니다.또 다른 안내가 있어요하지만너무 위험해프로덕션(가정용 PC라고도 함)에서 시도하면 재설치라는 유일한 솔루션으로 부팅할 수 없는 시스템(유일한 경우 울음 시작)으로 끝날 것입니다. 그렇다면 코어에 64비트 시스템을 원하고 32비트가 이미 설치되어 있습니까? 솔루션:

  1. VM 사용
  2. LXC를 사용하세요
  3. 재설치
  4. 건너가려고 해봐
  5. 울었다가 다시 설치하세요

이것이 유일한 해결책입니다.

답변2

apt-cache madison을 사용해 보셨나요?

eclipxe@localhost:~# apt-cache madison iceweasel
 iceweasel |     25.0-1 | http://ftp.debian.org/debian/ experimental/main amd64 Packages
 iceweasel | 24.1.0esr-1 | http://ftp.debian.org/debian/ unstable/main amd64 Packages
 iceweasel | 17.0.9esr-1~deb7u1 | http://ftp.debian.org/debian/ testing/main amd64 Packages

eclipxe@localhost:~# apt-cache madison iceweasel | awk '{print $1,$6}'
iceweasel experimental/main
iceweasel unstable/main
iceweasel testing/main

(저는 불안정한 [핀: 200]과 실험적인 [핀: 1]로 데비안 테스트를 실행하고 있습니다.)

또한 상위 버전에서 패키지를 설치할 때 --target-release를 사용해 보세요.

apt-get install -t unstable iceweasel

관련 정보