jessie 백포트 저장소를 가져올 수 없습니다.

jessie 백포트 저장소를 가져올 수 없습니다.

저는 docker 이미지를 자체 개발의 기초로 사용하고 Dockerfile에 jessie 백포트 저장소를 추가하고 이를 사용하여 종속성을 설치합니다. 이미지는 다음 명령을 사용하여 저장소를 추가합니다.

echo "deb http://ftp.debian.org/debian jessie-backports main" >> /etc/apt/sources.list

문제는 이제 다음 오류로 인해 백포트 저장소에서 패키지를 가져오는 데 실패한다는 것입니다(이전에는 정상적으로 작동했습니다).

W: Failed to fetch
http://ftp.debian.org/debian/dists/jessie-backports/main/binary-amd64/Packages
404  Not Found

W: Failed to fetch
http://deb.debian.org/debian/dists/jessie-updates/main/binary-amd64/Packages
 404  Not Found

서버를 확인했는데 실제로 이러한 경로가 존재하지 않습니다.

나는 이 특정 저장소가 여전히 사용 가능한지 데비안 백포트 웹사이트에서 알아내려고 노력했지만, 그것이 더 이상 사용되지 않는다는 표시나 그와 유사한 것을 찾지 못했습니다.

이는 저장소의 일시적인 문제입니까, 아니면 jessie-backports 저장소를 더 이상 사용할 수 없습니까? 이것이 일시적인 문제가 아니라면 최신 Debian 안정 버전으로 업그레이드하지 않고 이 저장소나 이에 상응하는 저장소를 사용하려면 어떤 옵션이 있어야 합니까?

답변1

Wheezy와 Jessie는 최근 미러 네트워크에서 제거되었습니다., 따라서 Jessie 백포트를 계속 얻으려면 다음을 사용해야 합니다 archive.debian.org.

deb [check-valid-until=no] http://archive.debian.org/debian jessie-backports main

(저장소가 더 이상 업데이트되지 않으므로 유효성 검사를 비활성화해야 합니다. Jessie는 이 플래그를 apt지원하지 않습니다 .check-valid-until이노스티아의 대답자세한 내용 및 추가 구성 요약은 이 답변에 나와 있습니다. )

저장소가 jessie-updates삭제되었습니다. 모든 업데이트가 기본 저장소와 병합되었으며 더 이상 비보안 업데이트가 없습니다. 따라서 jessie-updatesin sources.list또는 files 에 대한 모든 참조를 sources.list.d제거해야 합니다. 보안 업데이트계속해서 제공될 예정입니다, LTS 지원 아키텍처의 경우 2020년 6월 30일까지 보안 저장소에 있습니다.

컨테이너 이미지를 구축하고 있으므로높은대신 Debian 9(Stretch) 기반을 권장합니다. Debian 8(Jessie)을 유지하려면 저장소는 다음과 같아야 합니다.

deb http://cdn-fastly.deb.debian.org/debian/ jessie main
deb-src http://cdn-fastly.deb.debian.org/debian/ jessie main

deb http://security.debian.org/ jessie/updates main
deb-src http://security.debian.org/ jessie/updates main

deb http://archive.debian.org/debian jessie-backports main
deb-src http://archive.debian.org/debian jessie-backports main

( jessie-updates저장소 없음).

또한 유효성 검사를 비활성화해야 합니다 /etc/apt/apt.conf(이는 모든 저장소에 적용됩니다).

Acquire::Check-Valid-Until "false";

답변2

@inostia와 @Stephen Kitt가 제안한 솔루션을 시도한 후에도 여전히 다음 오류가 발생합니다.

W: Failed to fetch http://deb.debian.org/debian/dists/jessie-updates/main/binary-amd64/Packages  404  Not Found

E: Some index files failed to download. They have been ignored, or old ones used instead.

deb http://deb.debian.org/debian jessie-updates main해당 줄을 삭제하면 문제를 해결할 수 있다는 것을 알았습니다 /etc/apt/sources.list.

내 Dockerfile에 다음 코드 조각이 생겼습니다.

RUN echo "deb [check-valid-until=no] http://cdn-fastly.deb.debian.org/debian jessie main" > /etc/apt/sources.list.d/jessie.list
RUN echo "deb [check-valid-until=no] http://archive.debian.org/debian jessie-backports main" > /etc/apt/sources.list.d/jessie-backports.list
RUN sed -i '/deb http:\/\/deb.debian.org\/debian jessie-updates main/d' /etc/apt/sources.list
RUN apt-get -o Acquire::Check-Valid-Until=false update

답변3

NodeJS 및 이전 도커 이미지 기반을 사용하는 사람들을 위한 것입니다. 추가 라이브러리를 컴파일하기 위한 이전 소스 코드가 포함된 고정된 이미지가 있습니다.

컨텍스트: Docker 빌드 중에 Python을 설치하려는 경우 Docker 빌드 중에 종속성을 얻을 수 없기 때문에 이미지 빌드 중에(지난 24시간 동안) 이 문제가 발생합니다.

이 게시물의 아카이브 경로 제안을 시도했지만 404를 통과할 수 없습니다. (또한 오늘의 archive.debian.org 위치에서 발췌)

해결 방법: 결국 최신 노드 컨테이너 버전(이미 Python 라이브러리가 사전 설치되어 있음)으로 전환하고 json 패키지의 일부 라이브러리(이제 이전에 Python이 필요했던 바이너리 라이브러리도 포함)를 업데이트하여 문제가 더 이상 사용되지 않게 되었습니다.

마지막으로, 컨테이너 스택의 기본 이미지(node:latest)를 업데이트하는 것이 문제를 해결하는 가장 직접적인 방법인 것 같습니다.

핵심 운영 체제 계층을 업데이트하는 데 시간이 걸릴 수 있는 바이너리 종속성을 포함하는 오래된 이미지 스택에 주의하세요.

답변4

아무것도 작동하지 않으면 다음 오류가 있는 패널을 사용하십시오.

Unable to correct missing packages.
WARNING: The following packages cannot be authenticated!
W: GPG error
W: An error occurred during the signature verification.
Updates for this repository will not be applied.
E: Failed to fetch
E: Aborting install 

고려하다포괄적인 릴리스 업그레이드및 소스 목록 정리를 통해 컴퓨터를 저장할 수 있습니다. 이 메모는 몇 분 밖에 걸리지 않지만 최악의 부분입니다.

처음으로 방문하여 /etc/apt/sources.list.d/모든 것을 삭제하십시오. (백업하기).

편집하세요 /etc/apt/sources.list. 다음 줄을 유지하세요.

deb http://ftp.us.debian.org/debian stable main contrib 

그런 다음 루트로 실행하십시오.

aptitude update
aptitude full-upgrade

다양한 메시지를 확인하세요. 그런 다음 다음을 시도하십시오.

sudo apt update

오류가 발생해서는 안 됩니다. 다음을 확인하세요.

Reading package lists... Done

몇 가지 다른 패키지로 인해 일부가 발생할 수 있습니다.갈등, 이러한 경우에 한 번 사용하면 다양한 충돌이 해결됩니다.

sudo aptitude -y install packagename otherpackagename

가능한 기타 오류:

W: There is no public key available for the following key IDs:
*648ACFXXXXX2FAB138*

이 문제를 해결하려면 지정된 대로 공개 키를 가져옵니다.

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 648ACFXXXXX2FAB138

매우 드문 메시지를 받을 수도 있습니다!

A reboot is required to replace the running dbus-daemon.
Please reboot the system when convenient.

이전 커널과 libc에 문제가 있을 수 있습니다.

Kernel must be upgraded

This version of the GNU libc requires kernel version 3.2 or later.  Please upgrade your kernel 

공용 서버에는 이러한 주석을 적용하지 마십시오. 항상 마지막 LTS를 추구하세요.


https://www.debian.org/doc/manuals/debian-faq/ch-uptodate.en.html

https://askubuntu.com/questions/364404/e-unable-to-fetch-some-archives-maybe-run-apt-get-update-or-try-with-fix-mis

https://askubuntu.com/questions/766883/there-is-no-public-key-available-for-the-following-key-ids-1397bc53640db551

관련 정보