PPA는 지속적으로 오프라인 상태 인 것 같습니다. 을 사용할 때마다이 sudo apt-get update
오류가 표시됩니다.
W: Failed to fetch http://ppa.launchpad.net/ 404 Not Found
이 오류를 어떻게 해결합니까?
PPA는 지속적으로 오프라인 상태 인 것 같습니다. 을 사용할 때마다이 sudo apt-get update
오류가 표시됩니다.
W: Failed to fetch http://ppa.launchpad.net/ 404 Not Found
이 오류를 어떻게 해결합니까?
답변:
Ubuntu 15.04 이전의 모든 우분투 버전에 대해 문제가있는 소프트웨어 소스를 제거하는 스크립트 방식은이 답변의 맨 아래로 건너 뛰십시오.
404 또는 Not Found 오류 메시지는 클라이언트가 서버와 통신 할 수 있지만 서버가 요청한 내용을 찾을 수 없음을 나타내는 HTTP 표준 응답 코드입니다.
웹 사이트 호스팅 서버는 일반적으로 사용자가 끊어 지거나 연결이 끊어진 링크를 따라 가려고하면 "404-페이지를 찾을 수 없음"웹 페이지를 생성합니다.
일반적으로 세 가지 주요 영역에서 이러한 오류가 발생합니다. update-manager
PPA는 일반적으로 두 위치 중 하나에 저장됩니다.
/etc/apt/sources.list
/etc/apt/sources.list.d/
예를 들어 .list 파일 확장자를 가진 적절한 이름의 파일에서webupd8team-jupiter-natty.list
이 목록 파일에는 일반적으로 다음이 포함됩니다.
deb http://ppa.launchpad.net/webupd8team/jupiter/ubuntu oneiric main
# deb-src http://ppa.launchpad.net/webupd8team/jupiter/ubuntu oneiric main
메모 #
텍스트 행의 앞에 그것을 주석 및 패키지 관리자에 의해 확인되지 않음을 의미합니다.
일반적으로 sudo apt-get update
터미널에서 실행 하거나 새로 고침 버튼을 누른 후 Update Manager에서 세부 정보 버튼을 클릭하면 다음과 같은 오류가 표시됩니다.
오류가 PPA로 인한 경우-일반적으로 오류 메시지에 표시된 URL을 사용하여 유사한 이름의 PPA를 선택 해제하면이 문제가 해결됩니다.
404 오류가 추가 된 추가 리포지토리로 인해 발생한 경우 문제를 일으키는 리포지토리를 주석 처리하기 위해 줄의 시작 부분에 문자를 /etc/apt/sources.list
쉽게 추가#
gksu gedit /etc/apt/sources.list
이 문제를 해결하기 위해 업데이트 관리자에 대한 버그 보고서는 다음과 같습니다.
PPA없이 이러한 문제가 발생하면이 질문을 확인하십시오.
이것은 모든 404 Not found PPA를 자동으로 제거하는 스크립트입니다. 아래 코드를 복사하여 파일에 붙여 넣고 이름을로 지정하십시오 ppa-remove
.
#!/bin/bash
sudo rm /tmp/update.txt; tput setaf 6; echo "Initializing.. Please Wait"
sudo apt-get update >> /tmp/update.txt 2>&1; awk '( /W:/ && /launchpad/ && /404/ ) { print substr($5,26) }' /tmp/update.txt > /tmp/awk.txt; awk -F '/' '{ print $1"/"$2 }' /tmp/awk.txt > /tmp/awk1.txt; sort -u /tmp/awk1.txt > /tmp/awk2.txt
tput sgr0
if [ -s /tmp/awk2.txt ]
then
tput setaf 1
printf "PPA's going to be removed\n%s\n" "$(cat /tmp/awk2.txt)"
tput sgr0
while read -r line; do echo "sudo add-apt-repository -r ppa:$line"; done < /tmp/awk2.txt > out
bash out
else
tput setaf 1
echo "No PPA's to be removed"
tput sgr0
fi
스크립트에 실행 권한 부여
sudo chmod +x ppa-remove
ppa-remove
파일을 /usr/bin
디렉토리에 복사하여 붙여 넣으면 어디서나 액세스 할 수 있습니다.
sudo ppa-remove
[ -f /tmp/update.txt ] && sudo rm /tmp/update.txt; tput setaf 6; echo "Initializing.. Please Wait" || echo "No update file"
tput setaf 6
명령은 터미널 텍스트 색상을 녹색으로 바꾼 다음 "초기화 중입니다. 잠시 기다려주십시오"를 녹색으로 표시합니다.
sudo apt-get update >> /tmp/update.txt 2>&1; awk '( /W:/ && /launchpad/ && /404/ ) { print substr($5,26) }' /tmp/update.txt > /tmp/awk.txt; awk -F '/' '{ print $1"/"$2 }' /tmp/awk.txt > /tmp/awk1.txt; uniq /tmp/awk1.txt > /tmp/awk2.txt
sudo apt-get update >> /tmp/update.txt 2>&1;
명령의 stdout 및 stderr이 모두 sudo apt-get update
파일에 기록됩니다./tmp/update.txt
awk '( /W:/ && /launchpad/ && /404/ ) { print substr($5,26) }' /tmp/update.txt > /tmp/awk.txt; awk -F '/' '{ print $1"/"$2 }' /tmp/awk.txt > /tmp/awk1.txt;
AWK가 구성되어 줄 검색 W:
, launchpad
, 404
에 /tmp/update.txt
file.If는 그 라인에서 표준 출력 리디렉션 된 column5.This에서 26 위치에서 시작 (표준 출력) 모든 문자를 표시 것을 발견에 (기록) /tmp/awk.txt
파일.
예를 들면 다음과 같습니다.
W: Failed to fetch http://ppa.launchpad.net/pitti/postgresql/ubuntu/dists/saucy/main/binary-i386/Packages 404 Not Found
5 번째 열성- http://ppa.launchpad.net/pitti/postgresql/ubuntu/dists/saucy/main/binary-i386/Packages
5 번째 열에서 26 번째 문자부터 pitti/postgresql/ubuntu/dists/saucy/main/binary-i386/Packages
위의 줄은 파일에 저장되었습니다 /tmp/awk.txt
. 다음 명령은
awk -F '/' '{ print $1"/"$2 }' /tmp/awk.txt > /tmp/awk1.txt;
awk /
는 column1과 column2가 파일 /
에서 연결 된 구분 기호 로 column1과 column2를 /tmp/awk.txt
찾은 다음 stdout을 /tmp/awk1.txt
파일 로 리디렉션 (쓰기) 합니다.
이제 /tmp/awk1.txt
파일에 pitti/postgresql
줄이 있습니다.
uniq /tmp/awk1.txt > /tmp/awk2.txt
동일한 행이 두 개이면 unique
명령이 단일 행만 표시합니다.이 단일 행은 /tmp/awk2.txt
마지막으로 작성된 /tmp/awk2.txt
유일한 PPA 이름 으로 구성됩니다.
tput sgr0
이 명령은 터미널 텍스트의 색상을 흰색으로 변경합니다.
마지막으로 if
조건문이 실행됩니다. if [ -s /tmp/awk2.txt ]
/tmp/awk2.txt 파일의 내용이 있는지 확인하십시오. 그렇다면, 첫 번째 줄부터 명령을 /tmp/awk2.txt
실행 sudo add-apt-repository -r ppa:$line
하고 마지막 줄까지 계속하십시오.
그렇지 않은 경우 내용이 없음을 의미하므로 "제거 할 PPA가 없습니다"라고 표시됩니다.
PPA 리포지토리는 Ubuntu 배포를위한 패키지를 제공하지 않기 때문에 이러한 오류가 발생합니다 (예 :) quantal
.
다음 스크린 샷을보십시오.
에 대한 디렉토리 quantal
가 누락되어 있으므로 알 수 있습니다 404 Not Found Error Messages
.
이러한 메시지를 제거하려면 시스템에서 이러한 PPA 리포지토리를 제거해야합니다. PPA를 제거하는 방법에 대해서는이 질문을 따르십시오.
wdt-main
PPA에 대한 오류 메시지는 다음과 같습니다.
W:Failed to fetch http://ppa.launchpad.net/petrakis/wdt-main/ubuntu/dists/quantal/main/source/Sources 404 Not Found
, W:Failed to fetch http://ppa.launchpad.net/petrakis/wdt-main/ubuntu/dists/quantal/main/binary-amd64/Packages 404 Not Found
, W:Failed to fetch http://ppa.launchpad.net/petrakis/wdt-main/ubuntu/dists/quantal/main/binary-i386/Packages 404 Not Found
브라우저 탭을 열고 404 Not Found 오류가 발생하는 링크를여십시오. 이 경우 http://ppa.launchpad.net/petrakis/
오류가 발생하는 링크에 따라 더 깊어집니다. 실제 문제가 무엇인지 확인할 수 있습니다.
PPA가 더 이상 유지 관리되지 않아 제거해야 할 가능성이 가장 높습니다. 다음을 사용 하여이 작업을 수행 할 수 있습니다.
sudo rm /etc/apt/sources.list.d/ppaname-ppa-$(lsb_release -sc).list*
/etc/apt/sources.list
내가 확인한 곳도 나와 있지만, 내가 살펴 봐야 할 줄 몰랐 /etc/apt/sources.list.d/
습니다 .. 감사합니다.
해당 리포지토리 의 패키지가 실제로 필요한 경우 이전 릴리스의 미러를 사용할 수 있습니다.
그러나 모든 이전 릴리스가 이전 버전과 호환되는 것은 아닙니다 . 이들 중 일부는 기본 패키지 저장소와 충돌을 일으 킵니다.
충돌 할 때 할 수있는 유일한 일은 소스에서 빌드하거나 공급자가 Ubuntu 버전의 저장소를 해제 할 때까지 기다리는 것입니다. 패키지 제공 업체가 언제 버전에 대한 패키지를 출시할지 정확히 알지 못 하므로 릴리스의 저장소를 확인하는 담당자는 귀하입니다.
데비안 기반 저장소와 함께 사용할 수 있습니다. 그러나 이것이 성공할 것이라는 보장은 없습니다.
sudo apt update
PPA / 리포지토리를 추가 한 후 평소대로하십시오 . 업데이트하는 동안 404 오류가 있음을 알 수 있습니다. 이것을 무시하십시오.
https://dl.winehq.org/wine-builds/ubuntu
. 일반적으로 사용 가능한 릴리스는에 있습니다 dists/
.
bionic
하고 artful
있습니다.
sudo apt update
다시.그것은 이미 나에게 일어 났고 나는이 상황에서 벗어났습니다. 그리고 그것은 또한 내 친구를 위해 일했습니다. 이유를 설명 할 수 없어도 그 문제를 해결 한 것이 있습니다.
sudo apt-get update
터미널에서 실행하십시오 .sudo apt-get update
;그리고 갑자기 효과가있었습니다. 나에게 왜 냐고 묻지마.
sudo apt-get update
했으며 완벽하게 작동했습니다.
PPA가 아닌 공식 리포지토리에서 보안 또는 시스템 파일을 가져 오려고 404 오류가 발생하면이 문제를 해결하기 위해 다른 미러를 선택할 수 있습니다.
다음 중 하나를 수행 할 수 있습니다.
A) 이 목록 을 검토 하고 최신 미러를 선택하여 수동으로 하나를 결정 하십시오. (거리 및 대역폭과 같은 다른 요소를 고려할 수도 있음) 또는
B) 자동으로 하나를 선택하십시오.
다음과 같이 Software & Updates 응용 프로그램으로 시작할 수 있습니다. 그런 다음 Download from from Other를 선택하십시오. 그런 다음 목록에서 원하는 미러를 수동으로 선택하거나 일부 서버를 테스트 할 최상의 서버 선택 버튼을 클릭하고 현재 상태에 따라 가장 적합한 서버를 선택할 수 있습니다.
가능한 모든 대답을 시도했지만 유일한 해결책은 Ubuntu 16.04 Xenial 기본 /etc/apt/sources.list 파일을 my 에 복사하는 것 /etc/apt/sources.list
입니다.
출처 : https://gist.github.com/rohitrawat/60a04e6ebe4a9ec1203eac3a11d4afc1
그것은 나의 리눅스를 구했다.