सवाल पीपीए का उपयोग करते समय या मेरी पैकेज सूचियों को अपडेट करते समय मैं 404 त्रुटि कैसे ठीक कर सकता हूं?


पीपीए लगातार ऑफलाइन प्रतीत होता है। जब भी मैं उपयोग करता हूं sudo apt-get update, यह त्रुटि दिखाया गया है:

W: Failed to fetch http://ppa.launchpad.net/ 404  Not Found

मैं इन त्रुटियों को कैसे ठीक करूं?


240
2017-10-14 01:16


मूल


चूंकि यह मुख्य "उत्तर लाने में विफल" उत्तरों में से एक प्रतीत होता है, इसलिए मैं यहां इंगित करना चाहता हूं कि यह स्रोतों में उबंटू "पार्टनर" यूआरएल के साथ भी हो सकता है; यह देखने के लिए अपनी त्रुटियों की जांच करें कि क्या वे हैं और उन्हें टिप्पणी करने का प्रयास करें। मैं Quetzal से उन्नयन उस मुद्दे (और समाधान) में भाग गया। - joseph_morris


जवाब:


स्वचालित हटाने

उबंटू 15.04 से पहले सभी यूबंटू संस्करणों के लिए अपमानजनक सॉफ़्टवेयर-स्रोतों को निकालने के लिए एक स्क्रिप्ट किए गए तरीके के लिए इस उत्तर के निचले भाग पर जाएं

404 त्रुटियां क्या हैं

404 या नहीं मिला त्रुटि संदेश एक HTTP मानक प्रतिक्रिया कोड है   यह दर्शाता है कि ग्राहक सर्वर के साथ संवाद करने में सक्षम था,   लेकिन सर्वर को जो अनुरोध किया गया वह नहीं मिला।

वेब साइट होस्टिंग सर्वर आम तौर पर "404 - पृष्ठ नहीं उत्पन्न करेगा   "वेब पेज" मिला, जब उपयोगकर्ता टूटे या मृत लिंक का पालन करने का प्रयास करते हैं।

अद्यतन-प्रबंधक में इन त्रुटियों के कारण क्या हैं

आम तौर पर, तीन मुख्य क्षेत्रों में इन त्रुटियों का कारण बनता है update-manager

  1. एक उपयोगकर्ता ने अभी अपग्रेड किया है और एक पीपीए सॉफ़्टवेयर-स्रोत को फिर से सक्षम किया है जो अब मौजूद नहीं है enter image description here
  2. उपयोगकर्ता ने मैन्युअल रूप से किसी नए सॉफ़्टवेयर स्रोत में टाइप किया है enter image description here
  3. एक पीपीए जोड़ा गया था, लेकिन रखरखाव ने बाद में कुछ / सभी पीपीए हटा दिया है

ये सॉफ्टवेयर-स्रोत कहां हैं

पीपीए आमतौर पर दो स्थानों में से एक में सहेजे जाते हैं

  1. /etc/apt/sources.list 
  2. एक उचित नाम वाली फ़ाइल में एक .list फ़ाइल-एक्सटेंशन के साथ /etc/apt/sources.list.d/ उदाहरण के लिए 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 टर्मिनल से या रीफ्रेश बटन पर क्लिक करने के बाद अद्यतन प्रबंधक में विवरण बटन पर क्लिक करें, आपको त्रुटियां दिखाई देगी जैसे कि:

enter image description here 

अगर त्रुटि पीपीए के कारण होती है - आमतौर पर त्रुटि संदेश में दिखाए गए यूआरएल के साथ समान नामित पीपीए को अनचाहे करने से यह हल हो जाएगा।

enter image description here 

यदि 404 त्रुटि एक अतिरिक्त भंडार के कारण हुई थी जिसे जोड़ा गया है /etc/apt/sources.list तो इसे जोड़ना आसान है # अपमानजनक भंडार को टिप्पणी करने के लिए लाइन की शुरुआत के लिए चरित्र यानी।

gksu gedit /etc/apt/sources.list

enter image description here

15.04 से पहले सभी यूबंटू संस्करणों के लिए स्क्रिप्ट हटाया गया

मैंने एक त्वरित लिपि लिखी है जो पीपीए और सॉफ्टवेयर-स्रोतों की जांच करता है जो 404 त्रुटियों को प्रदर्शित करते हैं। यह 15.04 से पहले सभी उबंटू संस्करणों के लिए काम करता है। 15.04 के लिए और बाद में वर्णित मैन्युअल विधियों का पालन करें।

यह मेरे पीपीए में है:

sudo add-apt-repository ppa:fossfreedom/packagefixes
sudo apt-get update
sudo apt-get install banish404

आप सिर्फ डेब पैकेज डाउनलोड कर सकते हैं और इसे सीधे इंस्टॉल कर सकते हैं:

wget https://launchpad.net/~fossfreedom/+archive/packagefixes/+files/banish404_0.1-4_all.deb
sudo dpkg -i banish404_0.1-4_all.deb

N.B. यह सभी वितरण के लिए एक ही डेब पैकेज है।

प्रश्न / टिप्पणियां / सुधार कृपया के माध्यम से लॉन्चपैड मुझसे संपर्क करें लिंक

कैसे इस्तेमाल करे:

sudo banish404

संशोधन से पहले स्क्रिप्ट स्वचालित रूप से आपके स्रोतों का बैकअप लेगा - इसमें पाया जा सकता है /etc/apt

और जानकारी

इस समस्या को हल करने के लिए अद्यतन प्रबंधक पर एक बग रिपोर्ट यहां दी गई है:

यदि आप पीपीए के बिना इन समस्याओं को प्राप्त कर रहे हैं, तो इस प्रश्न को देखें:


285
2018-01-05 00:15



उम्मीद है कि मेरी समस्या को ठीक से ठीक करने के लिए - दिमाग की शांति के लिए यह बहुत अच्छा होगा यदि आप आवश्यकतानुसार बैकअप से 'पुनर्स्थापित' कैसे करें पर एक लिंक [या लघु अनुभाग] जोड़ सकते हैं - Louis Maddox
यदि आप इन पीपीएएस को हटाते हैं तो क्या आपको संकेत मिलता है कि आपको कहीं और से प्रासंगिक अपडेट प्राप्त करने की आवश्यकता है? - Addem
@fossfreedom यह काम 15.04 से ऊपर क्यों नहीं है? - Mark Yisri
मैंने ubutu 14.04 के लिए लिखित हटाने का उपयोग किया। यह बहुत अच्छा काम किया। बहुत बहुत धन्यवाद। - Mohit Mittal
नोट - स्क्रिप्टेड समाधान एक डिस्प्ले सेट किए बिना उबंटू सर्वर पर काम नहीं करता है (14.04 एलटीएस पर परीक्षण किया गया)। - cerd


404 का स्वचालित निष्कासन स्क्रिप्ट के माध्यम से पीपीए नहीं मिला

यह स्वचालित रूप से सभी 404 नहीं पाए गए पीपीए को हटाने के लिए एक स्क्रिप्ट है। नीचे दिए गए कोड को कॉपी करें और इसे एक फ़ाइल में पेस्ट करें और इसे नाम दें 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
  1. sudo apt-get update >> /tmp/update.txt 2>&1;

    आदेश के stdout और stderr दोनों sudo apt-get update फ़ाइल में लिखे गए हैं /tmp/update.txt

  2. 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 फ़ाइल.अगर यह पाया गया कि उस पंक्ति में यह कॉलम 5 में 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 वें coloumn - 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;  

डेलीमीटर के साथ कॉलम 1 और कॉलम 2 को बाहर निकालें / जहां कॉलम 1 और कॉलम 2 को संयोजित किया जाता है /वहाँ से /tmp/awk.txt फ़ाइल और फिर stdout को रीडायरेक्ट (लिखित) /tmp/awk1.txt फ़ाइल।

अभी व /tmp/awk1.txt फ़ाइल में शामिल हैं pitti/postgresql लाइन।

uniq /tmp/awk1.txt > /tmp/awk2.txt

यदि दो समान रेखाएं हैं, unique कमांड डिस्प्ले (stdout) केवल एकल पंक्ति। वह सिंगल लाइन लिखी गई थी /tmp/awk2.txt आखिरकार /tmp/awk2.txt अद्वितीय पीपीए नाम होते हैं।

tput sgr0

यह आदेश टर्मिनल टेक्स्ट का रंग सफेद में बदल देता है।

आखिरकार if सशर्त बयान निष्पादित होगा। if [ -s /tmp/awk2.txt ] /tmp/awk2.txt फ़ाइल की सामग्री के लिए जांचें या नहीं। अगर हां, तो यह पहली पंक्ति लेता है /tmp/awk2.txt और निष्पादित करता है sudo add-apt-repository -r ppa:$line कमांड। यह आखिरी पंक्ति तक जारी है।

यदि नहीं, तो इसका मतलब है कि कोई सामग्री नहीं है। इसलिए यह कहता है "कोई पीपीए हटाया नहीं जाना चाहिए"।

स्क्रीनशॉट

enter image description here

enter image description here


49
2018-03-10 18:08



/ usr / bin / ppa-remove: लाइन 32: वाक्यविन्यास त्रुटि: फ़ाइल का अप्रत्याशित अंत - Shravan40


आपको ये त्रुटियां मिल रही हैं क्योंकि आपके पीपीए रिपॉजिटरीज उबंटू के वितरण के लिए पैकेज नहीं प्रदान करते हैं (यानी; quantal)।

निम्नलिखित स्क्रीनशॉट देखें:

पीपीए: petrakis / WDT-मुख्य Launchpad logo

wdt-main

पीपीए: screenlets / ppa Launchpad logo

screenlets

आप उस निर्देशिका के लिए देख सकते हैं quantal गायब है और इसलिए आप मिल रहे हैं 404 Not Found Error Messages

इन संदेशों से छुटकारा पाने के लिए आपको अपने सिस्टम से इन पीपीए रिपॉजिटरीज को हटाना होगा। पीपीए को हटाने के तरीके पर इस सवाल का पालन करें:


इसकी जांच कैसे करें और इस निष्कर्ष पर आएं?

ये त्रुटि संदेश हैं जिन्हें आप प्राप्त करते हैं wdt-main पीपीए:

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 नहीं मिली त्रुटियां देता है। इस मामले में http://ppa.launchpad.net/petrakis/ और लिंक के अनुसार गहराई से जाना जो त्रुटियों देता है। आप यह देखने में सक्षम होंगे कि वास्तविक समस्या क्या है।


20
2018-02-16 18:59





सबसे संभव यह है कि यह हो रहा है कि पीपीए अब बनाए रखा नहीं है और इसे हटाने की जरूरत है। आप इसे सिर्फ उपयोग कर सकते हैं:

sudo rm /etc/apt/sources.list.d/ppaname-ppa-$(lsb_release -sc).list*

17
2017-12-23 18:08



इसने सिर्फ एक डुप्लिकेट प्रश्न पोस्ट करने से बचाया .. मेरे पास मेरे क्यू के शरीर का तैयार था और जैसे ही मैंने अपना शीर्षक टाइप करना शुरू किया था लिंक .. वे सभी जगहों को एक जगह पर क्यों नहीं रखते हैं! कुछ सूचीबद्ध हैं /etc/apt/sources.list जहां मैंने जांच की लेकिन मुझे नहीं पता था कि मुझे देखना है /etc/apt/sources.list.d/ भी .. धन्यवाद .. - precise
यह और उसके बाद उचित नया पीपीए जोड़ना मेरे लिए सबसे अच्छा (केवल काम कर रहा) समाधान बन गया। - markus-tharkun


पुरानी रिपोजिटरी चुनें

यदि आपको वास्तव में पैकेज की आवश्यकता है उस भंडार, आप पुराने रिलीज से दर्पण का उपयोग कर सकते हैं।

हालांकि, कृपया ध्यान दें कि सभी पुरानी रिलीज नहीं हैं पिछड़ा संगत; उनमें से कुछ आपके मुख्य पैकेज भंडार के साथ संघर्ष का कारण बनता है।

जब आप संघर्ष करते हैं तो आप केवल एक ही चीज कर सकते हैं या तो स्रोत से बना रहे हैं या जब तक प्रदाता आपके उबंटू संस्करण के लिए रिपोजिटरी जारी नहीं करता है तब तक प्रतीक्षा करें। हमें पता नहीं ठीक ठीक जब पैकेज प्रदाता हमारे संस्करण के लिए अपना पैकेज जारी करेंगे, तो आप अपनी रिलीज के लिए अपने भंडार की जांच करने के लिए प्रभारी हैं।

इसका उपयोग किसी भी डेबियन-आधारित भंडार के साथ किया जा सकता है। हालांकि, इस बात की कोई गारंटी नहीं है कि यह सफल होगा।

कदम

  1. सामान्य करो sudo apt update पीपीए / भंडार जोड़ने के बाद। आप देख सकते हैं कि अद्यतन करते समय 404 त्रुटियां हैं; बस इसे अनदेखा करें। 404 Error
  2. रिपॉजिटरी निर्देशिका खोलें जो आपके ब्राउज़र के साथ 404 त्रुटि का कारण बनती है; इस मामले में यह है https://dl.winehq.org/wine-builds/ubuntu। आमतौर पर, उपलब्ध रिलीज में स्थित हैं dists/Mirrors
  3. इसे स्थापित करने के बाद, सॉफ्टवेयर और अपडेट खोलें, और उपलब्ध रिलीज के साथ अपने रिलीज नाम को प्रतिस्थापित करें; अधिमानतः नवीनतम या एलटीएस एक। द्विआधारी और स्रोत कोड दर्पण में 'वितरण' अनुभाग बदलें। इस मामले में, मैं बदल रहा हूँ bionic साथ में artfulenter image description here
  4. कर sudo apt update फिर।
  5. हो गया! अब आपके पैकेज सूचियों को अपडेट करते समय आपके पास 404 त्रुटियां नहीं हैं। enter image description here
  6. जब आपके उबंटू संस्करण के लिए पैकेज जारी किए जाते हैं, तो अपने वितरण नाम के साथ 'वितरण' अनुभाग को बदलकर चरण 3 और 4 दोहराएं।

4
2018-05-23 06:07





ध्यान दें कि यह मेरे साथ पहले से ही हुआ है और मैं इन परिस्थितियों में से बाहर था। और यह मेरे एक दोस्त के लिए भी काम किया। यहां तक ​​कि व्याख्या करने में सक्षम नहीं होने के बावजूद, ऐसा कुछ है जो उस समस्या को हल करता है:

  1. अपने सभी पीपीए अक्षम करें;
  2. रन sudo apt-get update टर्मिनल से;
  3. अपने पीपीए को दोबारा सक्षम करें;
  4. रन sudo apt-get update;

और अचानक यह काम किया। मुझसे कारण मत पूछो।


2
2017-11-19 20:22



मेरे लिए कोई फर्क नहीं पड़ता। अभी भी 404 एस। - kwoxer
मैंने कुछ अवांछित पीपीए अक्षम कर दिए और कोशिश की sudo apt-get update और यह पूरी तरह से काम किया। - Shashanth


यदि आपको किसी आधिकारिक भंडार (पीपीए नहीं) से सुरक्षा या सिस्टम फ़ाइलों को प्राप्त करने का प्रयास करने में 404 त्रुटि प्राप्त हो रही है, तो आप इस समस्या को हल करने के लिए एक अलग दर्पण चुन सकते हैं।

आप या तो यह कर सकते हैं:

ए) समीक्षा करके एक मैन्युअल रूप से निर्धारित करें यह सूची और सबसे वर्तमान दर्पण का चयन। (आप दूरी और बैंडविड्थ जैसे अन्य कारकों पर विचार करना चाह सकते हैं) या

बी) स्वचालित रूप से एक चुनें।

नीचे दिखाए गए सॉफ़्टवेयर और अपडेट एप्लिकेशन के साथ आप किसी भी तरह से शुरू कर सकते हैं: फिर अन्य के बाद से डाउनलोड का चयन करें। फिर आप सूची से अपनी पसंद के दर्पण को मैन्युअल रूप से चुन सकते हैं या सर्वोत्तम सर्वर बटन का चयन कर सकते हैं जो कुछ परीक्षण चलाएगा और वर्तमान स्थितियों पर निर्भर आपके लिए सबसे अच्छा सर्वर चुन देगा।

SnU


1
2018-01-15 14:57





मैंने हर संभव उत्तर की कोशिश की है, लेकिन एकमात्र समाधान कॉपी करना था उबंटू 16.04 ज़ेनियल डिफ़ॉल्ट /etc/apt/sources.list  मेरे लिए फाइल करें /etc/apt/sources.list

सूत्रों का कहना है: https://gist.github.com/rohitrawat/60a04e6ebe4a9ec1203eac3a11d4afc1

उसने मेरे लिनक्स को बचाया।


0
2018-05-03 11:06