Debian 8 apt-get 업데이트에 404 Not Found가 표시됨

Debian 8 apt-get 업데이트에 404 Not Found가 표시됨

apt-get updateDebian 8에서 실행할 때마다 다음과 같은 결과가 나타납니다.

이 문제를 해결할 방법이 있나요?

Err http://ppa.launchpad.net jessie/main amd64 Packages                      
  404  Not Found
Ign http://ppa.launchpad.net jessie/main Translation-en                
Err http://ppa.launchpad.net jessie/main amd64 Packages                
  404  Not Found
Ign http://ppa.launchpad.net jessie/main Translation-en                
Fetched 164 kB in 3s (47.0 kB/s)                                       
W: Failed to fetch http://ppa.launchpad.net/certbot/certbot/ubuntu/dists/jessie/main/binary-amd64/Packages  404  Not Found

W: Failed to fetch http://ppa.launchpad.net/ondrej/php/ubuntu/dists/jessie/main/binary-amd64/Packages  404  Not Found

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

이게 내가 가진 거야 /etc/apt/sources.list

deb http://ftp.debian.org/debian/ jessie main
deb-src http://ftp.debian.org/debian/ jessie main

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

# jessie-updates, previously known as 'volatile'
deb http://ftp.debian.org/debian/ jessie-updates main
deb-src http://ftp.debian.org/debian/ jessie-updates main

deb http://ftp.debian.org/debian jessie-backports main

이것은의 출력입니다 cat /etc/apt/sources.list.d/*

deb http://ppa.launchpad.net/certbot/certbot/ubuntu jessie main
# deb-src http://ppa.launchpad.net/certbot/certbot/ubuntu jessie main
deb http://ppa.launchpad.net/ondrej/php/ubuntu jessie main
# deb-src http://ppa.launchpad.net/ondrej/php/ubuntu jessie main
deb http://ppa.launchpad.net/ondrej/php/ubuntu jessie main
# deb-src http://ppa.launchpad.net/ondrej/php/ubuntu jessie main
deb https://packages.sury.org/php/ jessie main
deb https://packages.sury.org/php/ jessie main

답변1

따라서 이는 Debian Jessie[*]에서 저장소 업데이트를 성공적으로 다운로드했지만 두 개의 타사 저장소는 성공적으로 다운로드하지 않았음을 나타냅니다.

다른 의견 작성자가 지적한 정보에 따르면 이러한 특정 저장소는 더 이상 운영 체제를 지원하지 않는 것으로 보입니다.

[*] Debian 8은 현재 "Old Stable" 상태이며 거의 1년이 지났습니다. 2018년 6월 이후에는 다음 조직에서 지원됩니다.데비안 LTS 프로젝트원래 데비안 보안 팀이 아닌. Debian LTS를 계속 사용할 계획이라면 이것이 무엇을 의미하는지 잘 알고 있어야 합니다. 특히 "이 LTS 릴리스에서는 일부 패키지가 지원되지 않습니다. 주로 추가 기간 동안 지원되지 않는 일부 웹 기반 애플리케이션입니다. check-support-status패키지의 도구는 debian-security-support이러한 지원되지 않는 패키지를 감지하는 데 도움이 됩니다."

(업데이트도 중단된다는 점을 고려하면 backports관련성이 있을 수 있습니다 . 하지만 backports아직 보안 팀에서 공식적으로 지원하지 않습니다. 즉, 애초에 동일한 약속이 없습니다.)


한 가지 가능성은 PPA에서만 설치된 패키지 버전을 제거하고 운영 체제를 지원하는 다른 소스로 전환하려는 것입니다.

새 소스로 완전히 전환했는지, 교체하려는 PPA에서 어떤 패키지도 설치하지 않았는지 확인해야 합니다. (이상한 경우에는 실제로 동일한 저장소이므로 중요하지 않지만 저장소가 호스팅되는 위치가 변경되었습니다.)

제거된 PPA에서 설치된 패키지를 식별하는 방법에 대한 다음 블로그 게시물을 찾았습니다.

Feijun에서 PPA 제거 및 변경 사항 롤백 |

"debian uninstall PPA"를 검색한 다음 "debian "ppa-purge""를 검색합니다(Ubuntu에 대한 결과를 얻으면 알려주세요 ppa-purge).


Ubuntu 사용자라면 ppa-purge에 익숙할 것입니다. 이는 PPA를 제거하고 해당 PPA에서 설치된 모든 애플리케이션의 버전을 롤백하기 위한 편리한 작은 자동화 스크립트입니다. 데비안에는 기본적으로 이러한 이점이 없지만 이에 근접할 수 있는 비교적 쉬운 방법이 있습니다.

먼저 /etc/apt/sources.list 또는 /etc/apt/sources.list.d/ 디렉터리에서 PPA를 삭제합니다.

업데이트하려면:

sudo apt-get update

이제 더 이상 사용되지 않는 패키지를 찾으세요.

aptitude search '?obsolete'

나에게 이것은 다음을 반환합니다.

# aptitude search '?obsolete'
i A libmysqlclient18      - MySQL database client library                                                                           
i A mysql-client-5.5      - MySQL database client binaries                                                                          
i A mysql-server-5.5      - MySQL database server binaries and system database setup                                                
i A mysql-server-core-5.5 - MySQL database server binaries                                                                          
i A ruby-passenger        - Rails and Rack support for Apache2 and Nginx

이제 apt-get 제거를 사용하여 나열된 패키지를 제거하고 필요한 경우 다시 설치하십시오. ppa-purge와 같은 완전히 자동화된 도구는 아니지만 좋은 시작입니다.

답변2

다음 내용을 포함하는 파일을 보관하세요.

deb https://packages.sury.org/php/ jessie main

업데이트 내용에 따르면 /etc/apt/sources.list.d/:

apt update

파일이 있는 경우 다른 URL에 댓글을 달거나 제거할 수 있습니다.

# deb http://ppa.launchpad.net/certbot/certbot/ubuntu jessie main
# deb-src http://ppa.launchpad.net/certbot/certbot/ubuntu jessie main
# deb http://ppa.launchpad.net/ondrej/php/ubuntu jessie main
# deb-src http://ppa.launchpad.net/ondrej/php/ubuntu jessie main
# deb http://ppa.launchpad.net/ondrej/php/ubuntu jessie main
# deb-src http://ppa.launchpad.net/ondrej/php/ubuntu jessie main
# deb https://packages.sury.org/php/ jessie main

deb https://packages.sury.org/php/ jessie main

답변3

소스 목록에서 수정한 후에도 동일한 문제가 발생했습니다. 내 문제를 해결한 방법:

  1. /etc/apt/sources.list.d/제외된 모든 파일 삭제

    • nginx.list포함하다deb http://nginx.org/packages/debian jessie nginx
    • vesta.list포함하다deb http://apt.vestacp.com/stretch/ stretch vesta
  2. 다음으로 수정됨 /etc/apt/sources.list:

     deb http://httpredir.debian.org/debian stretch main contrib non-free
     deb http://httpredir.debian.org/debian stretch-updates main contrib non-free
     deb http://security.debian.org stretch/updates main contrib non-free
    
  3. 그 이후에는 apt update && apt upgrade잘 작동했어요

관련 정보