"W: डुप्लिकेट source.list प्रविष्टि" कैसे ठीक करें?


190

जब भी मैं दौड़ने की कोशिश करता हूं मुझे यह चेतावनी मिलती रहती है sudo apt-get update

W: Duplicate sources.list entry http://archive.ubuntu.com/ubuntu/ precise-updates/main i386 Packages (/var/lib/apt/lists/archive.ubuntu.com_ubuntu_dists_precise-updates_main_binary-i386_Packages)
W: You may want to run apt-get update to correct these problems

नीचे /etc/apt/sources.listफ़ाइल से आउटपुट है :

deb http://archive.ubuntu.com/ubuntu precise main restricted
deb-src http://archive.ubuntu.com/ubuntu precise main restricted

deb http://archive.ubuntu.com/ubuntu precise-updates main restricted
deb-src http://archive.ubuntu.com/ubuntu precise-updates main restricted

deb http://archive.ubuntu.com/ubuntu precise universe
deb-src http://archive.ubuntu.com/ubuntu precise universe
deb http://archive.ubuntu.com/ubuntu precise-updates universe
deb-src http://archive.ubuntu.com/ubuntu precise-updates universe

deb http://archive.ubuntu.com/ubuntu precise multiverse
deb-src http://archive.ubuntu.com/ubuntu precise multiverse
deb http://archive.ubuntu.com/ubuntu precise-updates multiverse
deb-src http://archive.ubuntu.com/ubuntu precise-updates multiverse

deb http://archive.ubuntu.com/ubuntu precise-security main restricted
deb-src http://archive.ubuntu.com/ubuntu precise-security main restricted
deb http://archive.ubuntu.com/ubuntu precise-security universe
deb-src http://archive.ubuntu.com/ubuntu precise-security universe
deb http://archive.ubuntu.com/ubuntu precise-security multiverse
deb-src http://archive.ubuntu.com/ubuntu precise-security multiverse

मैं इसे कैसे ठीक करूं?

जवाबों:


229

आपके स्रोतों.सूची में वास्तव में डुप्लिकेट प्रविष्टियाँ हैं।

पहले एक रिपॉजिटरी लाइन या सोर्स लाइन का सही रूप देखते हैं:

रिपॉजिटरी सोर्स लाइन का सही प्रारूप है

<type of repository>  <location>  <dist-name> <components> 

उदाहरण के लिए, रेपो लाइन इस तरह हो सकती है

  deb http://archive.ubuntu.com/ubuntu precise main

यहाँ, इसका मतलब है, रिपॉजिटरी बाइनरी पैकेज के लिए है, जिसे http://archive.ubuntu.com/ubuntu में होस्ट किया गया है और यह रिपॉजिटरी उबंटू सटीक (12.04) के लिए है और इस रिपॉजिटरी में मुख्य (सॉफ्टवेयर है जो आधिकारिक रूप से समर्थित हैं) विहित) घटक।

  • प्रकार: प्रकार debऔर हो सकता है deb-srcdebबाइनरी रिपॉजिटरी का deb-srcअर्थ है जहां स्रोत रिपॉजिटरी का मतलब है

  • स्थान: http://archive.ubuntu.com/ubuntu रिपॉजिटरी का स्थान।

  • Dist-name: Ubuntu रिलीज का वितरण नाम। उबंटू 12.04 के लिए यह precise11.10 के लिए है oneiric
    आप उबंटू रिलीज़ की अद्यतन सूची और उनके कोड नामों को देखने के लिए उबंटू विकी पर जा सकते हैं ।

  • घटक: यह हो सकता है main, universe, multiverseऔर restricted। ये शब्द पैकेज और लाइसेंस की स्थिति के लिए समर्थन के स्तर को इंगित करते हैं।

देखें इस पेज में अधिक जानकारी के लिए।

कृपया ध्यान दें कि, आप एक पंक्ति में एक या अधिक घटक जोड़ सकते हैं, इसलिए "मुख्य", "ब्रह्मांड", "प्रतिबंधित" और "मल्टीवर्स" एक ही पंक्ति में हो सकते हैं। यह भी ध्यान दें, यद्यपि आप एक पंक्ति में एक से अधिक घटक जोड़ते हैं, APT सिस्टम उन्हें केवल एक घटक युक्त अलग पंक्ति मानता है।

तो, अगर आपकी sources.listलाइन इस तरह है

deb http://archive.ubuntu.com/ubuntu precise universe

फिर इसमें नीचे की तरह दूसरी पंक्ति नहीं हो सकती है (जो आपकी फ़ाइलें हैं)

deb http://archive.ubuntu.com/ubuntu precise main universe

जो इन दो लाइनों के बराबर है

deb http://archive.ubuntu.com/ubuntu precise main
deb http://archive.ubuntu.com/ubuntu precise universe

क्योंकि, आप दो बार ब्रह्मांड की नकल कर रहे हैं , इसलिए उस डुप्लिकेट के लिए एक त्रुटि होगी। पाया गया प्रत्येक डुप्लिकेट के लिए एक त्रुटि दी जाएगी।

उपाय:

आपकी sources.listफ़ाइल का विश्लेषण करने के बाद , मैंने पाया कि, यह एक बुनियादी एक है जो उबंटू द्वारा डिफ़ॉल्ट रूप से आपूर्ति की जाती है। आप प्रक्रिया के बाद एक डिफ़ॉल्ट फ़ाइल बना सकते हैं:

  1. एक टर्मिनल खोलें और पहले sources.listफ़ाइल में मौजूदा फ़ाइल का नाम बदलें sources.list.bak। (हम सुरक्षित रूप से इसे हटा सकते हैं, लेकिन सावधानी अच्छी है)।

     sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
    
  2. फिर software-properties-gtkएक नया निर्माण करने के लिए खोलें । एक टर्मिनल में या डैश कमांड प्रॉम्प्ट में नीचे कमांड टाइप करें Alt+ दबाने के साथF2

    software-properties-gtk
    

    ध्यान दें, Ubuntu संस्करण 11.10 के लिए या पहले आपको कमांड gksuसे पहले उपयोग करना होगाsoftware-properties-gtk

  3. खिड़की खुली होने के बाद,

    • Ubuntu सॉफ्टवेयर टैब में सभी चार श्रेणियों का चयन करें
    • अपडेट टैब में सटीक-सुरक्षा , सटीक-अपडेट और सटीक-बैकस्पोर्ट श्रेणी का चयन करें ।
    • अन्य सॉफ्टवेयर टैब से कैनोनिकल पार्टनर और स्वतंत्र श्रेणी का चयन करें ।

बस। अब आपके पास sources.listत्रुटि के बिना एक डिफ़ॉल्ट फ़ाइल है। यदि आप चाहें तो इस फ़ाइल की तुलना पिछले वाले से करें।


sources.list.dDir की फ़ाइलों से निपटने के लिए अद्यतन करें

कभी-कभी डुप्लिकेट प्रविष्टि /etc/apt/sources.list.dनिर्देशिका में एक फ़ाइल में हो सकती है , जिसका उपयोग एपीटी द्वारा भी किया जाता है। तो, आपको उस निर्देशिका को देखना चाहिए और देखना चाहिए कि क्या उन फ़ाइलों में कोई डुप्लिकेट है। यह डुप्लिकेट उसी फ़ाइल में होने के लिए आवश्यक नहीं है।

उदाहरण का मामला:

एक उपयोगकर्ता के पास यह त्रुटि संदेश दिखा रहा था sudo apt-get update

W: Duplicate sources.list entry http://dl.google.com/linux/chrome/deb/ stable/main amd64 Packages (/var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_main_binary-amd64_Packages)
W: Duplicate sources.list entry http://dl.google.com/linux/chrome/deb/ stable/main i386 Packages (/var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_main_binary-i386_Packages)
W: You may want to run apt-get update to correct these problems

लेकिन http://dl.google.comमुख्य /etc/apt/sources.listफ़ाइल में कोई प्रविष्टि नहीं थी । /etc/apt/sources.list.d/निर्देशिका को देखते हुए हमें ये फाइलें मिलीं:

का आउटपुट ls /etc/apt/sources.list.d/:

aims-sagemath-precise.list
aims-sagemath-precise.list.save
dropbox.list
dropbox.list.save
fossfreedom-packagefixes-precise.list
fossfreedom-packagefixes-precise.list.save
google-chrome.list
google-chrome.list.save
google.list
google.list.save
sagemath-monolithic-precise.list
sagemath-monolithic-precise.list.save

फ़ाइलें google-chrome.listऔर google.listडुप्लिकेट वाले अच्छे उम्मीदवार थे। इसलिए, दोनों फ़ाइलों की सामग्री की जाँच करना आवश्यक था।

का आउटपुट cat /etc/apt/sources.list.d/google-chrome.list:

deb http://dl.google.com/linux/chrome/deb/ stable main  

और का cat /etc/apt/sources.list.d/google.list

deb http://dl.google.com/linux/chrome/deb/ stable main

तो, Apt के स्रोतों में एक डुप्लिकेट प्रविष्टियाँ थीं। चूंकि google-chrome.listकेवल एक एकल पंक्ति होती है और इसे google.listफ़ाइल में सूचीबद्ध किया गया था इसलिए हम इस फ़ाइल को कमांड से सुरक्षित रूप से हटा सकते हैं

sudo rm /etc/apt/sources.list.d/google-chrome.list

तब समस्या हल हुई।


5
मैंने अपने स्रोतों में सूची की डुप्लिकेट प्रविष्टियाँ होने के लिए क्या किया?
सीनि123

@ Seanny123 यह कहना मुश्किल है।
अनवर

1
आपका बहुत बहुत धन्यवाद। मैं घंटों सोच रहा था कि कैसे नकल होती है। अंत में आपने
source.list.d

1
अच्छा और पूरी तरह से जवाब। सूत्रों से निपटने के लिए अपने अद्यतन में। Dir की फ़ाइलों को आप समझाते हैं जो डुप्लिकेट देने वाली फाइलें / लाइनें हैं। क्या आप इसी तरह से समझा सकते हैं कि ओपी में कौन सी 6 जोड़ी रेखाएँ हैं (जब से आप कहते हैं "आपकी फ़ाइल में 6 डुप्लिकेट हैं") डुप्लिकेट हैं?
sancho.s

1
मेरे स्रोतों की जाँच करने के लिए संकेत.सूची। इससे मुझे हल करने में मदद मिली।
lcarsos

80

उबुन्टु 12.04 के लिए

रेखांकन:

Alt+ दबाएं F2और पेस्ट करें software-properties-gtk(या आप "सॉफ़्टवेयर सेंटर" खोल सकते हैं, फिर "संपादित करें"> "सॉफ़्टवेयर स्रोत") पर जाएं। टैब "अन्य सॉफ़्टवेयर" पर जाएं, डुप्लिकेट प्रविष्टि चुनें और "निकालें" बटन दबाएं।

यहां छवि विवरण दर्ज करें


यदि आपको कमांड लाइन विकल्प की आवश्यकता है, तो यह है:

cat /etc/apt/sources.list | perl -ne '$H{$_}++ or print' > /tmp/sources.list && sudo mv /tmp/sources.list /etc/apt/sources.list  

आदेश यह करता है:

catफ़ाइल को पढ़ता है और उस सामग्री को पास करता है perlजिससे डुप्लिकेट लाइनें हटा दी जाती हैं। परिणाम को तब >एक अस्थायी फ़ाइल में सहेजा जाता है जिसे फिर मूल /etc/apt/sources.listफ़ाइल को बदलने के लिए ले जाया जाता है ।


2
बस इसे कैसे ठीक करें, भ्रम के बिना और सभी बहुत गहरे विवरण। धन्यवाद!
पीटर एम।

यह वास्तव में काम किया! किसी कारण से, 12.04 पर गिट स्थापित नहीं कर सका। हटाने के बजाय, मैंने बस स्पष्ट रूप से डुप्लिकेट किए गए "कैननिकल पार्टनर्स" की जांच की।
दाविदकोनराड

3
मैंने वन-लाइनर चलाया, लेकिन फिर sudo apt-get updateभी डुप्लिकेट प्रविष्टियों के बारे में शिकायत करता है जैसे कि कुछ भी नहीं बदला। यदि यह मायने रखता है, तो मैं 12.04 (विशेष रूप से, प्राथमिक ओएस लूना) पर हूं।
वॉरड्रियस

catबेकार है और से का उपयोग कर आप को रोकता हैsudo perl -i
tripleee

24

Source.list में डुप्लिकेट प्रविष्टियाँ कितनी बुरी हैं?

मुझे नहीं पता कि यह कितना बुरा है, लेकिन मुझे sudo apt-get update पसंद नहीं है जो मुझे डुप्लिकेट प्रविष्टियाँ दिखा रहा है।

वैसे यह बुरा नहीं है, यह सिर्फ आपको दिखा रहा है कि आपके पास डुप्लिकेट प्रविष्टियां हैं।

SourcesList

Source.list फ़ाइल आपके Ubuntu इंस्टॉलेशन में एप्लिकेशन जोड़ने या अपग्रेड करने का एक महत्वपूर्ण कारक है। यह आपके सिस्टम द्वारा सिस्टम अपडेट के लिए भी उपयोग किया जाता है। फ़ाइल मूल रूप से आपके सिस्टम के लिए रोडमैप है, यह जानने के लिए कि यह कहाँ स्थापना या उन्नयन के लिए प्रोग्राम डाउनलोड कर सकता है।

यह विंडोज अपडेट की तरह ही है

आप Y PPA प्रबंधक के साथ कुछ आसान चरणों में डुप्लिकेट प्रविष्टियों को हटा सकते हैं

 sudo add-apt-repository ppa:webupd8team/y-ppa-manager -y
 sudo apt-get update
 sudo apt-get install y-ppa-manager -y

ओपन वाई-पीपीए-मैनेजर फॉर्म डैश

आप पासवर्ड दर्ज करें

यहां छवि विवरण दर्ज करें

उन्नत पर डबल क्लिक करें

यहां छवि विवरण दर्ज करें

स्कैन करें और डुप्लिकेट पीपीए को निकालें और ओके पर क्लिक करें

यहां छवि विवरण दर्ज करें

डुप्लिकेट पीपीए को स्कैन और हटाने में कुछ समय (1 या 2 मिनट) लगेगा


2
मेरे मामले में, वाई पीपीए ने कहा कि कोई डुप्लिकेट नहीं मिला। मैंने source.list का बैकअप बना लिया और स्रोत सूची (ubuntu 12.04) को फिर से बनाने के लिए sudo apt-get अपडेट प्राप्त किया। इसने मेरे लिए काम किया।
michel.iamit

1
मिंट 17 पर मेरे लिए काम किया, धन्यवाद आदमी!
11:10 बजे sp1010

मेरे लिए ubuntu 14.04..Thanks दोस्त .. :) पर काम किया
राहुल सिंह

1
एक आकर्षण की तरह काम किया
वेक्टर

1
14.04 को मेरे मामले में यह कहता है कि नो डुप्लिकेट्स मिला
मुहम्मद ओमर असलम

16

पार्टनर रिपॉजिटरी को अंदर डुप्लिकेट किया गया है /etc/apt/sources.listऔर /etc/apt/sources.list.d/precise-partner.list

बस उन "सटीक-साथी" फ़ाइलों को हटा दें क्योंकि साथी रिपॉजिटरी पहले से मौजूद है sources.list

sudo rm /etc/apt/sources.list.d/precise-partner.*

मैं मिल रहा हूँrm: cannot remove '/etc/apt/sources.list.d/precise-partner.*': No such file or directory
डेनिस

1
कोशिश करो sudo rm /etc/apt/sources.list.d/*partner*। अपने /etc/apt/source.list को भी चेक करें, डुप्लिकेट लाइनों की तलाश करें।
एरिक कारवाल्हो

भाग्य नहीं, मेरे पास उस निर्देशिका में नाम में "साथी" के साथ कोई फाइल नहीं है। और के /etc/apt/sources.listअनुसार किसी भी डुप्लिकेट शामिल नहीं है uniq
डेनिस

10

अपने स्रोतों की एक प्रतिलिपि बनाएँ। सूची:

sudo cp /etc/apt/sources.list{,.backup}

अब मूल निकालें और अपडेट करें:

sudo rm /etc/apt/sources.list && sudo apt-get update

वह बिना sources.listफाइल के कैसे अपडेट हो सकता है?
अनवर

यह फिर से खुल जाएगा। =)


वापस उसी पर लौटें जिसे आपने वापस
लौटाया है

मैं बैक अप सूची में कैसे लौटूं? हटाने ने बहुत सी महत्वपूर्ण चीज़ों को हटा दिया ... यह पूरी तरह से सुरक्षित नहीं है ..
21

8

मुझे एक ही समस्या थी, सॉफ्टवेयर स्रोतों को खोलें। अनियंत्रित "कैनोनिकल पार्टनर्स"। संघर्ष "कैनोनिकल पार्टनर्स" और "सॉफ्टवेयर सेंटर द्वारा जोड़ा गया कैनोनिकल पार्टनर्स" के बीच है


7

यदि आप इसे अपने में नहीं समझ सकते हैं source.list, तो यह करें:

  1. सेटिंग्स आइकन (अपनी स्क्रीन के चरम शीर्ष कोने पर) पर बायाँ-क्लिक करें और सिस्टम सेटिंग्स चुनें।
  2. सॉफ़्टवेयर स्रोतों पर क्लिक करें और अन्य सॉफ़्टवेयर पर जाएं।
  3. अपने पार्टनर की फाइलों के लिए Canonical द्वारा पैक किए गए 'Canonical Partners (स्रोत कोड) -software में से किसी एक को अनचेक करें और Canonical द्वारा पैक किए गए' Canonical Partners -software 'में से एक अपने पार्टनर की फाइलों के लिए भी क्लिक करें और छोड़ने के लिए बंद करें पर क्लिक करें।
  4. इसके साथ ही टर्मिनल और टाइप करने के लिए CTRL+ ALT+ Tकीज़ दबाएँ sudo apt-get update

मैंने आपके सुझावों का पालन किया, लेकिन फिर भी मुझे यह त्रुटि मिल रही है।
hsinxh

कृपया, अपराधी को जानने के लिए अपने 'सॉफ़्टवेयर स्रोत' की छवि यहाँ पोस्ट करें।
all4naija

कृपया, अपने 'अन्य सॉफ्टवेयर' की छवि यहां पोस्ट करें।
all4naija

6

10.10 और पहले

अनुप्रयोग> Ubuntu सॉफ्टवेयर सेंटर> संपादित करें> सॉफ़्टवेयर स्रोत> अन्य सॉफ़्टवेयर

या

सिस्टम> प्रशासन> सिनैप्टिक पैकेट मैनेजर> सेटिंग्स> रिपोजिटरी

सॉफ़्टवेयर स्रोत विंडो कॉन्फ़िगर करते हैं

डुप्लिकेट प्रविष्टियों को चुनें और निकालें।


5

उबंटू के लिए 9.10 - 12.04

Y-PPA-Manager नाम का एक ऐप है जो ऐसा कर सकता है और बहुत कुछ।

आप इसे टर्मिनल से इस तरह स्थापित कर सकते हैं:

sudo add-apt-repository ppa:webupd8team/y-ppa-manager
sudo apt-get upgrade
sudo apt-get install y-ppa-manager

उसके बाद, बस एप्लिकेशन को उन्नत मेनू पर जाएं।

यहां छवि विवरण दर्ज करें

फिर "स्कैन और डुप्लिकेट PPAs निकालें" का चयन करें और ओके हिट करें।

यहां छवि विवरण दर्ज करें


यह अच्छा उपकरण है, लेकिन यह समस्या को ठीक नहीं करता है। मैंने यह पसंद किया और इसके बाद एक ही चेतावनी है।
nazar_art

4

ऐसा लगता है कि आपकी /etc/apt/sources.listफ़ाइल में दो समान रेखाएँ हैं ।

टर्मिनल पर जाएं, और दर्ज करें sudo editor /etc/apt/sources.list, फिर उस फ़ाइल में किसी भी समान लाइनों की तलाश करें, और यदि आप उन्हें ढूंढते हैं, तो उन्हें हटा दें। आपके किए जाने के बाद, सहेजें और बाहर निकलें, और उसके बाद sudo apt-get updateअपनी समस्या को हल करें।

यदि वह आपकी समस्या का समाधान नहीं करता है, तो आपको परीक्षण और त्रुटि दृष्टिकोण का उपयोग करना होगा। सबसे पहले, अपनी sources.listफ़ाइल का बैकअप बनाएं , फिर वास्तविक फ़ाइल पर जाएं और टिप्पणी करें या प्रत्येक पंक्ति को हटाएं, हटाएं और प्रत्येक पंक्ति को हटाने या हटाने के apt-get updateबाद हटा दें। अलग-अलग लाइनों पर टिप्पणी करके इस फ़ाइल लाइन के माध्यम से जाने से अंत में आपको पता चल जाएगा कि कौन सी रेखा सबसे अधिक है। यदि आप apt-get updateअभी भी उसी संकेत को दिखाते हैं, तो आपने जो भी टिप्पणी की है, उसे अनसुना करना न भूलें , अन्यथा आप अपनी sources.listफ़ाइल में कोई स्रोत नहीं छोड़ेंगे ।


4

मैंने इस तरह के एक उपकरण की तलाश की, लेकिन मुझे कोई नहीं मिला ...
इसलिए, मैंने एक के साथ खुद को कोड करना समाप्त कर दिया PHP

गंदे असंगठित स्रोत कोड के लिए क्षमा करें।

chkdup - स्क्रीनशॉट:

यहां छवि विवरण दर्ज करें

लेखक

मुबारक अलारशीदी (DeaDSouL)

आवश्यकताएँ:

  1. पीएचपी।
  2. sudo।

स्थापना:

  1. टर्मिनल खोलें।
  2. PHP स्थापित करने के लिए यदि आपके पास यह नहीं है, तो टाइप करें sudo apt-get install php5 php5-cli:।
  3. Chkdup डाउनलोड करें ।
  4. अपनी पसंद की फ़ाइल कहीं भी निकालें।
  5. टाइप करें: sudo sh install.sh

स्थापना रद्द करें:

  1. टर्मिनल खोलें।
  2. उस पथ पर जाएं, जिसमें आपने उपकरण निकाला था।
  3. टाइप करें: sudo sh uninstall.sh

इसे कैसे उपयोग करे:

बस टर्मिनल खोलें और टाइप करें sudo chkdup

पूछे जाने वाले प्रश्न:

Install.sh क्या करता है?

  • संस्थापक चले जाएँगे chkdup.phpकरने के लिए /opt/तो में एक प्रतीकात्मक कड़ी पैदा करेगा /usr/bin/

Uninstall.sh के बारे में क्या?

  • अनइंस्टालर निम्न फ़ाइलों को हटा देगा:

    1. install.sh
    2. /opt/chkdup.php
    3. /usr/bin/chkdup
    4. अपने आप uninstall.sh

क्या Chkdup का उपयोग करना सुरक्षित है?

  • हाँ, यह है, क्योंकि यह कुछ भी करने की कोशिश करने से पहले मौजूदा स्रोतों का बैकअप लेता है। लेकिन अगर कुछ हुआ तो मैं जिम्मेदार नहीं हूं। पूरी जिम्मेदारी आपकी होगी।

लाइसेंस

GNU जनरल पब्लिक लाइसेंस


बस इसे बाहर की कोशिश की, अच्छा और सरल :-) अच्छा :-)
bmbaker

3

आपने जांच की ls /etc/apt/sources.list.d/? शायद आपके पास वहां कुछ "अतिरिक्त" रिपॉजिटरी हों?


2

Ubuntu-tweak को स्थापित करें और डुप्लिकेट प्रविष्टियों को वहां से हटा दें।

sudo add-apt-repository ppa:tualatrix/ppa
sudo apt-get update
sudo apt-get install ubuntu-tweak

वैकल्पिक शब्द


यह नहीं कहता कि यह कैसे करना है।
RolandiXor

1

नहीं, /etc/apt/sources.listफ़ाइल में डुप्लिकेट प्रविष्टियों को खोजने और हटाने के लिए एक भी कमांड लाइन नहीं है ।

ऐसा इसलिए है क्योंकि सुझाए गए कमांड लाइन, जो केवल बहुत सरल अंतर्निहित uniqकमांड के फ़ंक्शन को डुप्लिकेट करते हैं , केवल एक SORTED फ़ाइल पर काम करेंगे और केवल ADJACENT लाइनों को हटा देंगे। इसके अलावा, वे कमांड केवल एक समान स्ट्रिंग वाले वर्णों वाली पंक्तियों को हटा देंगे ।

रिपोर्ट की गई डुप्लिकेट प्रविष्टियों apt-get updateमें डुप्लिकेट फ़ंक्शन प्रविष्टियाँ शामिल होंगी , जैसे कि इसके i386और amd64वेरिएंट दोनों में एक रिपॉजिटरी को शामिल किया जाना । इनको हटाने का आसान और प्रभावी तरीका यह है कि नोट करें कि रिपॉजिटरी को apt-get अपडेट द्वारा डुप्लिकेट के रूप में रिपोर्ट किया जाता है और सॉफ्टवेयर सेंटर के माध्यम से उन्हें हटा दिया जाता है । इसे खोलें और संपादित करें -> सॉफ़्टवेयर स्रोत -> अन्य सॉफ़्टवेयर टैब चुनें । बस डुप्लिकेट प्रविष्टियों की तलाश करें और उन्हें अनचेक करें। ( source-codeयदि आप संकुल संकलित नहीं कर रहे हैं तो यह किसी भी रिपॉजिटरी को हटाने का एक अवसर है)।

हालांकि, यह ध्यान दिया जाना चाहिए कि apt-get updateन केवल के माध्यम से डुप्लिकेट प्रविष्टियों को ढूंढता है sources.list, बल्कि इसमें स्थित रिपॉजिटरी फाइलें भी शामिल हैं /var/lib/apt/lists/। डुप्लिकेट प्रविष्टियों को वहां से हटाना केवल apt-get updateत्रुटि संदेशों को अस्थायी रूप से हटा देगा यदि उबंटू को लगता है कि उन्हें इसकी आवश्यकता है, क्योंकि फाइलें स्वचालित रूप से फिर से स्थापित हो जाएंगी। यह तथ्य कि apt-get updateकुछ रिपॉजिटरी को डुप्लिकेट के रूप में रिपोर्ट करेगा, और फिर सुझाव देगा कि आप apt-get updateउन्हें सुधारने के लिए खुद को चलाते हैं, एक ऐसा सुराग है जिसे आपको वास्तव में उस त्रुटि संदेश के बारे में चिंता करने की आवश्यकता नहीं है।


1

मेरे मामले में डुप्लिकेट prerequists-sources.listफ़ाइल में थे । मैं टर्मिनल में निम्नलिखित कमांड चलाकर अपग्रेड जारी रखने में सक्षम था:

sudo mv /etc/apt/sources.list.d/prerequists-sources.list /tmp
sudo apt-get update

फिर Update Managerअपडेट पर जाएं और इंस्टॉल करें।


/ Tmp में जाना आवश्यक नहीं है। किसी चीज का नाम जो .listपर्याप्त नहीं है, उसका नामकरण
डैनियल एल्डर

1

खैर, मैंने डुप्लिकेट एंट्री समस्या का हल खुद को /etc/apt/sources.d(रूट के रूप में) किसी और चीज़ में बदलकर और sudo apt-get updateनिर्देशिका को फिर से स्थापित करने के लिए चलाया ।


1

माध्यम से चला गया /etc/apt/sources.listमैन्युअल sudo nano /etc/apt/sources.listऔर डुप्लिकेट हटा दिया। के बाद apt-get update, समस्या हल हो गई थी।


1

में /etc/apt/sources.listआप टिप्पणी चाहिए (जोड़ने #डुप्लिकेट भंडार प्रविष्टि लाइन की शुरुआत में) और परिवर्तन सहेजें। उसके बाद दोहराइए sudo apt-get update


1

उबंटू स्रोत सूची जनरेटर का उपयोग करें ।

  • sudo -H nautilusटर्मिनल में चलाएं
  • खोज /etc/apt/sources.list
  • पाठ संपादक के साथ फ़ाइल को राइट क्लिक करें और खोलें (यदि आप उस पर क्लिक करते हैं, तो यह सॉफ़्टवेयर स्रोत GUI खोल देगा)
  • बस कॉपी और पेस्ट करें sources.listऔर सहेजें।
  • टर्मिनल से बाहर निकलें और आपका काम हो गया।

लगता है कि Google को कोई समस्या है, इसलिए मेरा सुझाव है कि इसे छोड़ दें। मैंने उबंटू 12.10 (उबंटू डेस्कटॉप जोड़ा और एक और डेस्कटॉप साइन इन के लिए एकता के साथ स्टूडियो संस्करण) पर ऐसा किया है।


1

बस फ़ाइल को संपादित करें /etc/apt/sources.list(उदाहरण के लिए उपयोग करें sudo -H gedit /etc/apt/sources.list) और डुप्लिकेट लाइन को हटा दें या लाइन #के शुरू में डाल दें ।


1

मैं टर्मिनल का उपयोग करने वाले अन्य उपयोगकर्ताओं से दी गई संभावनाओं को पूरा करने की कोशिश करता हूं, क्योंकि आपने जो पूछा है, मुख्य रूप से:

यदि आप कोई पाठ आधारित इंस्टॉल या प्रेस Alt+ का उपयोग कर रहे हैं तो लॉग इन करें और यदि आप F2GUI का उपयोग कर रहे हैं तो gnome-टर्मिनल टाइप करें

फिर टाइप करें

sudo nano /etc/apt/sources.list

(बेहतर तरीके से समझने के लिए: निर्देशिका में /etcआप अपने कंप्यूटर की सभी कॉन्फ़िगरेशन फ़ाइल (लगभग) पा सकते हैं और aptनिर्देशिका में आप वह souces.listफ़ाइल ढूंढ सकते हैं, जिसमें एपीपी को अपडेट या इंस्टॉल करने और अपग्रेड करने के लिए उपयोग किए जाने वाले सभी रिपॉजिटरी हैं)

#किसी भी डुप्लिकेट किए गए पंक्तियों की शुरुआत में फ़ाइल को हटाने या टिप्पणी करने के साथ संपादित करें ।

प्रेस Ctrl+ Xसे बाहर निकलें और प्रेस करने के लिए yफ़ाइल को बचाने के लिए (या nबिना सहेजे छोड़ने की)।

फिर देखें कि क्या आपने इसे ठीक किया है:

sudo apt-get update

मज़े करो!


मुझे भी लगता है कि विकसित पाठ संपादक जैसे विम स्वचालित रूप से डुप्लिकेट पा सकते हैं, लेकिन मुझे नहीं पता कि यह कैसे करना है कि किसी भी प्रकार की जानकारी दिलचस्प होगी
पिटो

0
S="/etc/apt/sources.list" ;
S2="$S ${S}.d/*.list" ;
grep -b "^deb\`cat $S2 |
    grep -i "^deb[[:space:]]http" |
    sort |
    uniq -dc |
    sed -e 's;[[:space:]]\\+[[:digit:]]\\+[[:space:]]\\+deb\\(.\\+$\\);\\1;g'\`$" $S2

* पठनीयता के लिए डाला गया लाइन ब्रेक।


2
कृपया इसका उत्तर या जोखिम को हटा दें।
jokerdino

उबंटू पूछने के लिए आपका स्वागत है! जैसा कि जोकरडिनो ने संकेत दिया था, यह उत्तर काफी हद तक लाभान्वित करेगा, यदि आप इसे कुछ स्पष्टीकरण जोड़ने के लिए संपादित करें (या कम से कम उपयोगकर्ता को इन पंक्तियों के साथ क्या करना है, यह बताने के लिए )।
एलियाह कगन

यह उत्तर गलत है क्योंकि यह डुप्लिकेट प्रविष्टियों को हटा सकता है लेकिन यह डुप्लिकेट स्रोत प्रविष्टियों को नहीं हटाता है । स्पष्टीकरण के लिए यहाँ देखें
अनवर

0

डुप्लिकेट को निकालने के लिए निम्न निष्पादित करें

cat /etc/apt/sources.list | perl -ne '$H{$_}++ or print' > /tmp/sources.list && sudo mv /tmp/sources.list /etc/apt/sources.list  

इस पर अधिक जानकारी कृपया

0

के मामले में W: Duplicate sources.list entry http://dl.google.com/linux/chrome/deb/ stable/main amd64 Packages (/var/lib/apt/lists/dl.google.com_linux_chrome_deb_dists_stable_main_binary-amd64_Packages)

खुला: sources.list.d

rm google.list

इतना ही google-chrome.listरहता है


0

यह उचित काम है uniqजिसके लिए डुप्लिकेट लाइनें छोड़ देता है और केवल अनन्य प्रविष्टियाँ प्रिंट करता है, इस प्रकार हम uniqपुरानी फ़ाइल की आउटपुट ले सकते हैं और बदल सकते हैं uniq:

 sort /etc/apt/sources.list | uniq > /tmp/sources && sudo mv /tmp/sources  /etc/apt/sources.list

1
uniqइनपुट की जरूरत है।
मूरू

sort -uवही काम करता है) =)
AB
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.