Vraag Hoe te repareren "W: Duplicate sources.list entry"?


Ik krijg steeds deze waarschuwing wanneer ik probeer te lopen 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

Hieronder is de uitvoer van /etc/apt/sources.list het dossier:

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

Hoe los ik het op?


186
2018-04-10 06:31


oorsprong




antwoorden:


Uw sources.list bevat echt dubbele items.

Laten we eerst de juiste vorm van een repositorylijn of bronregel bekijken:

Het juiste formaat van bron van de repositorybron is

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

Een repo-regel kan bijvoorbeeld deze zijn

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

Hier betekent het dat de repository voor binaire pakketten is, die worden gehost http://archive.ubuntu.com/ubuntu en deze repository is voor Ubuntu precise (12.04) en deze repository bevat de belangrijkste (software die officieel wordt ondersteund door Canonical) component.

  • Type: Het type kan zijn deb en deb-src. deb betekent een binaire repository waar deb-src betekent een bronrepository

  • Plaats:  http://archive.ubuntu.com/ubuntu locatie van de repository.

  • Dist-name: De distributienaam van Ubuntu-release. Voor Ubuntu 12.04 is dat zo precise, voor 11.10 is dat zo oneiric.
    U kunt de Ubuntu-wiki bezoeken om een ​​bijgewerkte versie te bekijken lijst met Ubuntu-releases en hun codenamen.

  • component: Het kan zijn main, universe, multiverse en restricted. Deze woorden geven het ondersteuningsniveau voor de pakketten en de licentiestatus aan.

Zien deze pagina voor meer informatie.

Houd er rekening mee dat u een of meer componenten in een regel kunt toevoegen, dus "hoofd", "universe", "beperkt" en "multiversum" kunnen in één regel staan. Let op: hoewel u meer dan één component op één regel toevoegt, beschouwt het APT-systeem ze als een afzonderlijke regel die slechts één component bevat.

Dus, als jouw sources.list heb een regel als deze

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

Dan kan het geen andere regel hebben zoals de onderstaande (die uw bestanden hebben)

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

wat equivalent is aan deze twee regels

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

Omdat je aan het dupliceren bent universum tweemaal, dus er is een fout opgetreden voor dat duplicaat. Er wordt een foutmelding gegeven voor elk gevonden duplicaat.

Oplossing:

Na het analyseren van uw sources.list bestand, dat heb ik gevonden, het is een standaard die standaard wordt geleverd door Ubuntu. U kunt een standaardbestand maken volgens de procedure:

  1. Open een terminal en hernoem eerst de bestaande sources.list bestand naar sources.list.bak het dossier. (we kunnen dat veilig verwijderen, maar voorzichtigheid is goed).

     sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
    
  2. Open dan software-properties-gtk om een ​​nieuwe te bouwen. Typ de onderstaande opdracht in een terminal of in de opdrachtprompt van het dashboard door op te drukken alt+F2

    software-properties-gtk
    

    Let op, voor Ubuntu versie 11.10 of eerder moet je gebruiken gksu voor de software-properties-gtk opdracht

  3. Nadat het venster open is,

    • Selecteer alle vier categorieën in Ubuntu-software tab
    • kiezen nauwkeurige-beveiliging, nauwkeurige-updates en nauwkeurige-backports categorie in updates tab.
    • kiezen Canonieke partner en Onafhankelijk categorie uit Andere software tab.

Dat is het. Je hebt nu een standaardwaarde sources.listbestand zonder fouten. Vergelijk dit bestand met de vorige, als je wilt.


Update om mee om te gaan sources.list.d dir's bestanden

Soms kan een dubbele invoer in een bestand in de /etc/apt/sources.list.d directory, die ook wordt gebruikt door APT. Dus, je zou naar die map moeten kijken en kijken of er een duplicaat in die bestanden zit. Het is niet nodig dat duplicaten in hetzelfde bestand staan.

Voorbeeldgeval:

Een gebruiker liet dit foutbericht zien terwijl hij bezig was 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

Maar er was geen toegang toe http://dl.google.com in het algemeen /etc/apt/sources.list het dossier. Kijken naar de /etc/apt/sources.list.d/ map we vonden deze bestanden:

output van 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

De bestanden google-chrome.list en google.list waren goede kandidaten voor het bevatten van duplicaten. Dus, het controleren van de inhoud van beide bestanden was noodzakelijk.

Output van cat /etc/apt/sources.list.d/google-chrome.list:

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

en van cat /etc/apt/sources.list.d/google.list

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

Er waren dus dubbele vermeldingen in de bronnen van Apt. Sinds google-chrome.list bevatten slechts een enkele apt-regel en deze werd ook vermeld in google.list bestand kunnen we dit bestand veilig verwijderen met de opdracht

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

Toen was het probleem opgelost.


225
2017-09-05 17:33



+1 Dit is een geweldig antwoord. Probleem opgelost en volledig uitgelegd waarom het was gebeurd. - akmad
Wat heb ik gedaan om ervoor te zorgen dat ik dubbele vermeldingen in mijn bronnen.list.d heb? - Seanny123
Veel dank. Ik vroeg me af hoe duplicaten zich voordeden. Eindelijk liet je sources.list.d zien - Isura Manchanayake
Leuk en grondig antwoord. In uw Update om om te gaan met de bestanden van sources.list.dir u legt uit welke bestanden / regels de duplicaten bevatten. Zou je op dezelfde manier kunnen uitleggen wat de 6 paar lijnen zijn (aangezien je zegt "jouw bestand heeft daar 6 duplicaten") in het OP die duplicaten geven? - sancho.s
De hint om te gaan controleren mijn sources.list.d was wat me hielp dit op te lossen. - lcarsos


Voor Ubuntu 12.04 

grafisch:

druk op alt + F2 en plak software-properties-gtk (of u opent "Software Center" en gaat vervolgens naar "Bewerken"> "Softwarebronnen"). Ga naar tabblad "Andere software", kies de dubbele invoer en druk op de knop "Verwijderen".

enter image description here


Als u een opdrachtregeloptie nodig heeft, dan is dit:

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

De opdracht doet dit:

cat leest het bestand en geeft de inhoud door aan perl die de dubbele regels verwijdert. Het resultaat wordt vervolgens opgeslagen > in een tijdelijk bestand dat vervolgens wordt verplaatst om het origineel te vervangen /etc/apt/sources.list het dossier.


77
2018-05-04 22:27



Je script werkte perfect. - Lucio
Hoe het te repareren, zonder verwarring en alle te diepe details. Dank je! - P.M
Het werkte echt! Kon om wat voor reden dan ook git op een 12.04 ook niet installeren. In plaats van verwijderen, heb ik net de schijnbare gedupliceerde "Canonical partners" gecontroleerd. - davidkonrad
Ik heb de one-liner gerend, maar sudo apt-get update klaagt nog steeds over dubbele vermeldingen alsof er niets is veranderd. Als het er toe doet, ben ik op 12.04 (specifiek, elementaire OS Luna). - waldyrious
De cat is nutteloos en voorkomt dat u het gebruikt sudo perl -i - tripleee


Hoe slecht zijn dubbele vermeldingen in sources.list?

Ik weet niet hoe erg het is, maar ik hou niet van sudo apt-get update laat me dubbele vermeldingen zien.

Trouwens, het is niet zo erg, het toont je gewoon dat je dubbele items hebt.

SourcesList

Het sources.list-bestand is een belangrijke factor bij het toevoegen of upgraden van applicaties aan uw Ubuntu-installatie. Dit wordt ook door uw systeem gebruikt voor systeemupdates. Het bestand is in feite de routekaart voor uw systeem om te weten waar het programma's voor installatie of upgrade kan downloaden.

Het is net als Windows-update

U kunt dubbele vermeldingen in enkele eenvoudige stappen verwijderen met Y PPA Manager

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

Open y-ppa-manager het formulier scheutje

Voer je admin-wachtwoord in

enter image description here

Dubbelklik op Geavanceerd

enter image description here

Scan & verwijder dubbele PPA's en klik op OK

enter image description here

Het zal enige tijd duren (1 of 2 Mints) om dubbele PPA's te scannen en verwijderen


22
2018-05-08 05:36



In mijn geval bleef Y PPA zeggen dat er geen duplicaten waren gevonden. Ik maakte een back-up van de source.list verwijderd en sudo apt-get update uitgevoerd om de bronlijst opnieuw te maken (ubuntu 12.04). Dit werkte voor mij. - michel.iamit
Werkte voor mij op Mint 17, bedankt man! - spences10
Werkte voor mij op ubuntu 14.04..Dankzij maatje .. :) - Rahul Singh
werkte als een charme - vector
In mijn geval op 14.04 blijft het zeggen Geen duplicaten gevonden - Muhammad Omer Aslam


De partnerrepository wordt binnenin gedupliceerd /etc/apt/sources.list en /etc/apt/sources.list.d/precise-partner.list.

Verwijder gewoon die "precieze partnerbestanden" terwijl de partnerrepository al aanwezig is sources.list.

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

16
2017-09-01 19:20



ik word rm: cannot remove '/etc/apt/sources.list.d/precise-partner.*': No such file or directory - Dennis
Proberen sudo rm /etc/apt/sources.list.d/*partner*. Controleer ook je /etc/apt/sources.list, zoek naar dubbele regels. - Eric Carvalho
Geen geluk, ik heb geen bestanden met "partner" in de naam in die map. En /etc/apt/sources.list bevat geen duplicaten volgens uniq. - Dennis


Maak een back-up kopie van uw sources.list:

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

Verwijder nu het origineel en update het:

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

10
2017-07-04 05:16



Hoe kan hij updaten zonder sources.list het dossier? - Anwar
Het wordt herbevolkt. =) - wojox
@wojox Het werkt, bedankt. - quantme
de mijne is niet herbevolkt - conman253
Keer terug naar degene waarvan u een back-up hebt gemaakt - wojox


Ik had hetzelfde probleem, open software bronnen. niet aangevinkt "Canonical Partners". Het conflict zit tussen "Canonical Partners" en "Canonical Partners Added by software Center"


8
2018-04-11 05:11





Als je het niet kon uitzoeken in jouw source.list, doe dit dan:

  1. Klik met de linkermuisknop op het instellingenpictogram (in de uiterste bovenhoek van uw scherm) en selecteer Systeeminstellingen.
  2. Klik op Software Sources en ga naar Andere software.
  3. Haal het vinkje weg bij één van de 'Canonical Partners (broncode) -software die door Canonical is meegeleverd voor de bestanden van hun partners en een van de' Canonical Partners -software 'die door Canonical is meegeleverd voor de bestanden van hun partners en klik op Sluiten om te sluiten.
  4. Druk tegelijkertijd op CTRL + ALT + T toetsen om terminal en type te openen sudo apt-get update.

7
2018-04-11 06:15



Ik volgde je suggesties, maar toch krijg ik deze foutmelding. - hsinxh
Plaats hier alsjeblieft de afbeelding van je 'Software Sources' om de dader te kennen. - all4naija
Plaats hier alsjeblieft de afbeelding van je 'Andere software'. - all4naija


Voor Ubuntu 9.10 - 12.04

Er is een app genaamd Y-PPA-Manager die dat kan doen en nog veel meer.

Je kunt het zo installeren vanaf een Terminal:

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

Start daarna de toepassing en ga naar het menu Geavanceerd.

enter image description here

Selecteer vervolgens "Dubbele PPA's scannen en verwijderen" en druk op OK.

enter image description here


5
2018-05-06 13:25



Het is coole tool maar het lost het probleem niet op. Ik deed deze keuze en had daarna dezelfde waarschuwingen. - nazar_art


10.10 en eerder

Toepassingen> Ubuntu Software Center> Bewerken> Softwarebronnen> Andere software

OF

Systeem> Beheer> Synaptic Packet Manager> Instellingen> Repositories

Software Sources config window

Selecteer en verwijder dubbele items.


5
2017-11-18 15:43





Het klinkt alsof je twee identieke lijnen in je hebt /etc/apt/sources.list het dossier.

Ga naar terminal en voer in sudo editor /etc/apt/sources.list, zoek dan naar identieke regels in dat bestand, en als je ze vindt, verwijder ze dan. Nadat je klaar bent, opslaan en afsluiten, en dan doen sudo apt-get update en dat zou je probleem moeten oplossen.

Als dat je probleem niet oplost, moet je een methode van vallen en opstaan ​​gebruiken. Maak eerst een back-up van uw sources.list bestand, vervolgens in het eigenlijke bestand doorlopen en commentaar geven of elke regel verwijderen, opslaan en apt-get update-ing na elke regel is becommentarieerd of verwijderd. Door dit bestand regel voor regel door te gaan met het becommentariëren van verschillende regels, wordt uiteindelijk aangegeven welke regel overbodig is. Vergeet niet om commentaar te geven op de regels die u hebt opgemerkt als apt-get update geeft nog steeds dezelfde prompt weer, anders blijven er geen bronnen in uw sources.list het dossier.


4
2018-04-10 15:01





Ik zocht naar zo'n tool, maar ik heb geen enkele tool gevonden ...
Dus uiteindelijk heb ik er zelf een gecodeerd PHP.

Sorry voor de vuile ongeorganiseerde broncode.

chkdup - Screenshot:

enter image description here

Auteur

Mubarak Alrashidi (DeaDSouL)

Vereisten:

  1. PHP.
  2. sudo.

Installatie:

  1. Open de terminal.
  2. Om PHP te installeren als je het niet hebt, typ je: sudo apt-get install php5 php5-cli.
  3. Download de chkdup.
  4. Pak het bestand uit waar u maar wilt.
  5. Type: sudo sh install.sh.

verwijderen:

  1. Open de terminal.
  2. Ga naar het pad waarin je de tool hebt uitgepakt.
  3. Type: sudo sh uninstall.sh.

Hoe te gebruiken:

Open gewoon de terminal en typ sudo chkdup.

Veelgestelde vragen:

Wat doet de install.sh?

  • Het installatieprogramma verplaatst het chkdup.php naar /opt/ maakt dan een symbolische link in /usr/bin/.

Hoe zit het met de uninstall.sh?

  • Het verwijderprogramma zal de volgende bestanden verwijderen:

    1. install.sh
    2. /opt/chkdup.php
    3. /usr/bin/chkdup
    4. zelf uninstall.sh

Is het veilig om chkdup te gebruiken?

  • Ja, het is, omdat het een back-up van de huidige sources.list maakt voordat je iets probeert te doen. Maar ik ben niet verantwoordelijk als er iets is gebeurd. De volledige verantwoordelijkheid zal voor u zijn.

Licentie

GNU General Public License


4
2018-03-17 00:19



zojuist geprobeerd, leuk en eenvoudig :-) leuk :-) - bmbaker