Wie behebe ich “W: Duplicate sources.list entry”?


190

Ich bekomme diese Warnung immer wieder, wenn ich versuche zu rennen 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

Unten ist die Ausgabe aus der /etc/apt/sources.listDatei:

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

Wie behebe ich das?

Antworten:


229

Ihre sources.list enthält wirklich doppelte Einträge.

Zuerst sehen wir uns die korrekte Form einer Repository- oder Quellzeile an:

Das korrekte Format der Quellzeile des Repositorys lautet

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

Eine Repo-Linie kann beispielsweise so aussehen

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

Hier bedeutet dies, dass das Repository für Binärpakete ist, die unter http://archive.ubuntu.com/ubuntu gehostet werden, und dieses Repository ist für Ubuntu exact (12.04) und dieses Repository enthält das Hauptverzeichnis (Software, die offiziell von unterstützt wird) Canonical) Komponente.

  • Typ: Der Typ kann debund sein deb-src. debbedeutet ein binäres Repository, wobei deb-srcein Quellrepository bedeutet

  • http://archive.ubuntu.com/ubuntuSpeicherort : Speicherort des Repositorys.

  • Dist-Name: Der Distributionsname der Ubuntu-Version. Für Ubuntu 12.04 ist es das precise, für 11.10 ist es das oneiric.
    Sie können das Ubuntu-Wiki besuchen, um eine aktualisierte Liste der Ubuntu-Versionen und ihrer Codenamen anzuzeigen .

  • Komponente: Es kann sein main, universe, multiverseund restricted. Diese Wörter geben die Unterstützungsstufe für die Pakete und den Lizenzstatus an.

Weitere Informationen finden Sie auf dieser Seite .

Bitte beachten Sie, dass Sie eine oder mehrere Komponenten in eine Zeile einfügen können, sodass "main", "universe", "restricted" und "multiverse" in einer einzelnen Zeile stehen können. Beachten Sie auch: Obwohl Sie mehr als eine Komponente in eine einzelne Zeile einfügen, betrachtet das APT-System diese als separate Zeile, die nur eine Komponente enthält.

Also, wenn du sources.listeine Zeile wie diese hast

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

Dann kann es keine weitere Zeile wie die folgende geben (welche Ihre Dateien haben)

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

Das ist gleichbedeutend mit diesen beiden Zeilen

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

Da Sie das Universum zweimal duplizieren , tritt für dieses Duplikat ein Fehler auf. Für jedes gefundene Duplikat wird ein Fehler ausgegeben.

Lösung:

Nach der Analyse Ihrer sources.listDatei habe ich festgestellt, dass es sich um eine grundlegende Datei handelt, die standardmäßig von Ubuntu bereitgestellt wird. Sie können eine Standarddatei wie folgt erstellen:

  1. Öffnen Sie ein Terminal und benennen Sie zuerst die vorhandene sources.listDatei in sources.list.bakDatei um. (Wir können das sicher entfernen, aber Vorsicht ist gut).

     sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
    
  2. Dann öffnen Sie software-properties-gtk, um ein neues zu bauen. Geben Sie den folgenden Befehl in ein Terminal oder in eine Bindestrich-Eingabeaufforderung ein, indem Sie Alt+ drückenF2

    software-properties-gtk
    

    Beachten Sie, dass Sie für Ubuntu Version 11.10 oder früher gksuvor dem software-properties-gtkBefehl verwenden müssen

  3. Nachdem das Fenster geöffnet ist,

    • Wählen Sie auf der Registerkarte Ubuntu-Software alle vier Kategorien aus
    • Wählen Sie auf der Registerkarte " Updates" die Kategorie " Präzise Sicherheit" , " Präzise Updates" und " Präzise Backports " aus .
    • Wählen Sie auf der Registerkarte " Andere Software" die Kategorie " Canonical Partner" und " Unabhängig " aus .

Das ist es. Sie haben jetzt eine Standarddatei sources.listohne Fehler. Vergleichen Sie diese Datei mit der vorherigen, wenn Sie möchten.


Aktualisieren Sie, um mit sources.list.dden Dateien von dir umzugehen

Manchmal kann sich ein doppelter Eintrag in einer Datei im /etc/apt/sources.list.dVerzeichnis befinden, die auch von APT verwendet wird. Sie sollten also in diesem Verzeichnis nachsehen, ob sich in diesen Dateien Duplikate befinden. Es ist nicht erforderlich, dass sich Duplikate in derselben Datei befinden.

Beispielfall:

Bei einem Benutzer wurde diese Fehlermeldung angezeigt 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

Es gab aber keinen Eintrag mit http://dl.google.comin der Hauptdatei /etc/apt/sources.list. Beim Betrachten des /etc/apt/sources.list.d/Verzeichnisses haben wir folgende Dateien gefunden:

Ausgabe von 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

Die Dateien google-chrome.listund google.listwaren gute Kandidaten für die Aufnahme von Duplikaten. Daher war es notwendig, den Inhalt beider Dateien zu überprüfen.

Ausgabe von cat /etc/apt/sources.list.d/google-chrome.list:

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

und von cat /etc/apt/sources.list.d/google.list

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

Es gab also doppelte Einträge in den Quellen von Apt. Da google-chrome.listnur eine einzige apt-Zeile enthalten ist und diese auch in der google.listDatei aufgeführt ist, können wir diese Datei mit dem Befehl sicher entfernen

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

Dann war das Problem gelöst.


5
Was habe ich getan, um mich zu veranlassen, doppelte Einträge in meiner sources.list.d zu haben?
Seanny123

@ Seanny123 Das ist schwer zu sagen.
Anwar

1
Vielen Dank. Ich habe mich stundenlang gefragt, wie es zu Duplikaten gekommen ist. Schließlich zeigten
Sie sources.list.d

1
Schöne und gründliche Antwort. In Ihrem Update für die Dateien von sources.list.d dir erklären Sie, welche Dateien / Zeilen die Duplikate enthalten. Könnten Sie in ähnlicher Weise erklären, welche der 6 Zeilenpaare (da Sie sagen "Ihre Datei enthält 6 Duplikate") im OP Duplikate enthalten?
sancho.s

1
Der Hinweis, meine sources.list.d zu überprüfen, hat mir geholfen, das Problem zu beheben.
Lcarsos

80

Für Ubuntu 12.04

Grafisch:

Drücken Sie Alt+ F2und fügen Sie es ein software-properties-gtk(oder öffnen Sie "Software Center" und gehen Sie zu "Bearbeiten"> "Softwarequellen"). Gehen Sie zur Registerkarte "Andere Software", wählen Sie den doppelten Eintrag aus und klicken Sie auf die Schaltfläche "Entfernen".

Bildbeschreibung hier eingeben


Wenn Sie eine Befehlszeilenoption benötigen, ist dies hier:

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

Der Befehl führt Folgendes aus:

catLiest die Datei und übergibt den Inhalt, an perlden die doppelten Zeilen entfernt werden. Das Ergebnis wird dann >in einer temporären Datei gespeichert, die dann verschoben wird, um die ursprüngliche /etc/apt/sources.listDatei zu ersetzen .


2
Nur wie man es repariert, ohne Verwirrung und all die zu tiefen Details. Danke!
Peter M.

Es hat tatsächlich funktioniert! Aus irgendeinem Grund konnte git auch auf einem 12.04 nicht installiert werden. Anstatt zu entfernen, habe ich nur die scheinbar duplizierten "Canonical-Partner" überprüft.
Davidkonrad

3
Ich habe den Einzeiler eingesetzt, sudo apt-get updatebeklage mich aber immer noch über doppelte Einträge, als ob sich nichts geändert hätte. Wenn es darauf ankommt, bin ich am 12.04 (genauer gesagt, elementares OS Luna).
Waldyrious

Die catist nutzlos und verhindert, dass Siesudo perl -i
Tripleee

24

Wie schlimm sind doppelte Einträge in sources.list?

Ich weiß nicht, wie schlimm es ist, aber ich mag es nicht, wenn sudo apt-get update mir doppelte Einträge anzeigt.

Übrigens ist es nicht so schlimm, es zeigt Ihnen nur, dass Sie doppelte Einträge haben.

SourcesList

Die Datei sources.list ist ein Schlüsselfaktor beim Hinzufügen oder Aktualisieren von Anwendungen zu Ihrer Ubuntu-Installation. Dies wird auch von Ihrem System für Systemaktualisierungen verwendet. Die Datei ist im Grunde genommen die Roadmap für Ihr System, um zu wissen, wo es Programme zur Installation oder Aktualisierung herunterladen kann.

Es ist genau wie Windows Update

Mit Y PPA Manager können Sie doppelte Einträge in wenigen einfachen Schritten entfernen

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

Öffnen Sie das y-ppa-manager Formular Dash

Geben Sie Ihr Administratorkennwort ein

Bildbeschreibung hier eingeben

Doppelklicken Sie auf Erweitert

Bildbeschreibung hier eingeben

Doppelte PPAs scannen und entfernen und auf OK klicken

Bildbeschreibung hier eingeben

Es dauert einige Zeit (1 oder 2 Minuten), um doppelte PPAs zu scannen und zu entfernen


2
In meinem Fall sagte Y PPA immer wieder, dass keine Duplikate gefunden wurden. Ich habe eine Sicherungskopie der source.list erstellt, diese entfernt und sudo apt-get update ausgeführt, um die source list neu zu erstellen (Ubuntu 12.04). Das hat bei mir funktioniert.
michel.iamit

1
Hat für mich an Mint 17 gearbeitet, danke Mann!
spences10

Arbeitete für mich auf Ubuntu 14.04 .. Danke Kumpel .. :)
Rahul Singh

1
arbeitete wie ein Zauber
Vektor

1
In meinem Fall wird am 14.04.
Muhammad Omer Aslam

16

Das Partner-Repository wird in /etc/apt/sources.listund dupliziert /etc/apt/sources.list.d/precise-partner.list.

Entfernen Sie einfach diese "Partner-genauen" Dateien, da das Partner-Repository bereits in vorhanden ist sources.list.

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

Ich bekommerm: cannot remove '/etc/apt/sources.list.d/precise-partner.*': No such file or directory
Dennis

1
Versuchen Sie es sudo rm /etc/apt/sources.list.d/*partner*. Überprüfen Sie auch Ihre /etc/apt/sources.list und suchen Sie nach doppelten Zeilen.
Eric Carvalho

Kein Glück, ich habe keine Dateien mit "partner" im Namen in diesem Verzeichnis. Und /etc/apt/sources.listenthält laut keine Duplikate uniq.
Dennis

10

Erstellen Sie eine Sicherungskopie Ihrer sources.list:

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

Entfernen Sie nun das Original und aktualisieren Sie:

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

Wie kann er ohne sources.listDatei aktualisieren ?
Anwar

Es wird sich neu füllen. =)
Wojox

meins nicht neu bevölkert
conman253


Wie kann ich zur gesicherten Liste zurückkehren? Die Entfernung entfernt eine Menge wichtiger Dinge ... das ist absolut nicht sicher ..
Alvas

8

Ich hatte das gleiche Problem, offene Softwarequellen. Deaktiviert "Canonical Partners". Der Konflikt besteht zwischen "Canonical Partners" und "Canonical Partners Added by Software Center"


7

Wenn Sie es in Ihrem nicht herausfinden konnten source.list, dann tun Sie dies:

  1. Klicken Sie mit der linken Maustaste auf das Einstellungssymbol (in der äußersten oberen Ecke Ihres Bildschirms) und wählen Sie Systemeinstellungen.
  2. Klicken Sie auf Softwarequellen und wechseln Sie zu Andere Software.
  3. Deaktivieren Sie eine der von Canonical für die Partnerdateien gepackten Softwarepakete für Canonical-Partner (Quellcode) und eine der von Canonical für die Partnerdateien gepackten Softwarepakete für Canonical-Partner und klicken Sie zum Verlassen auf Schließen.
  4. Drücken Sie gleichzeitig die Tasten CTRL+ ALT+ T, um das Terminal zu öffnen und einzugeben sudo apt-get update.

Ich bin Ihren Vorschlägen gefolgt, erhalte aber dennoch diesen Fehler.
hsinxh

Veröffentlichen Sie hier das Bild Ihrer 'Software-Quellen', um den Täter zu ermitteln.
all4naija

Bitte posten Sie das Bild Ihrer 'Other Software' hier.
all4naija

6

10.10 und früher

Anwendungen> Ubuntu Software Center> Bearbeiten> Softwarequellen> Andere Software

ODER

System> Administration> Synaptic Packet Manager> Einstellungen> Repositorys

Konfigurationsfenster für Softwarequellen

Doppelte Einträge auswählen und entfernen.


5

Für Ubuntu 9.10 - 12.04

Es gibt eine App namens Y-PPA-Manager, die das und vieles mehr kann.

Sie können es wie folgt von einem Terminal aus installieren:

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

Starten Sie danach einfach die Anwendung und gehen Sie zum Menü Erweitert.

Bildbeschreibung hier eingeben

Wählen Sie dann "Doppelte PPAs scannen und entfernen" und klicken Sie auf "OK".

Bildbeschreibung hier eingeben


Es ist ein cooles Tool, aber es behebt kein Problem. Ich habe diese Wahl getroffen und danach die gleichen Warnungen erhalten.
Nazar_art

4

Es hört sich so an, als hätten Sie zwei identische Zeilen in Ihrer /etc/apt/sources.listDatei.

Gehen Sie zum Terminal und geben sudo editor /etc/apt/sources.listSie ein. Suchen Sie dann nach identischen Zeilen in dieser Datei. Wenn Sie sie finden, löschen Sie sie. Wenn Sie fertig sind, speichern und sudo apt-get updatebeenden Sie das Programm. Damit sollte das Problem behoben sein.

Wenn das Ihr Problem nicht löst, müssen Sie einen Versuch-und-Irrtum-Ansatz verwenden. Erstellen Sie zunächst eine Sicherungskopie Ihrer sources.listDatei. Gehen Sie dann in der eigentlichen Datei durch und kommentieren Sie jede Zeile aus oder löschen Sie sie. Speichern und apt-get update-en Sie sie, nachdem jede Zeile auskommentiert oder gelöscht wurde. Wenn Sie diese Datei Zeile für Zeile durchgehen und verschiedene Zeilen auskommentieren, erfahren Sie schließlich, welche Zeile die überflüssige ist. Vergessen Sie nicht, alle von Ihnen kommentierten Zeilen aus dem Kommentar zu entfernen, wenn apt-get updateimmer noch dieselbe Eingabeaufforderung angezeigt wird. Andernfalls verbleiben in Ihrer sources.listDatei keine Quellen .


4

Ich habe nach einem solchen Werkzeug gesucht, aber keines gefunden ...
Also habe ich selbst eines programmiert PHP.

Entschuldigung für den schmutzigen unorganisierten Quellcode.

chkdup - Screenshot:

Bildbeschreibung hier eingeben

Autor

Mubarak Alrashidi (DeaDSouL)

Bedarf:

  1. PHP.
  2. sudo.

Installation:

  1. Öffnen Sie das Terminal.
  2. So installieren Sie PHP , wenn Sie es nicht haben, geben: sudo apt-get install php5 php5-cli.
  3. Laden Sie das chkdup herunter .
  4. Extrahieren Sie die Datei an einer beliebigen Stelle.
  5. Typ: sudo sh install.sh.

Deinstallation:

  1. Öffnen Sie das Terminal.
  2. Gehen Sie zu dem Pfad, in den Sie das Werkzeug extrahiert haben.
  3. Typ: sudo sh uninstall.sh.

Wie man es benutzt:

Öffnen Sie einfach das Terminal und tippen Sie sudo chkdup.

FAQs:

Was macht die install.sh?

  • Das Installationsprogramm verschiebt die chkdup.phpnach und erstellt /opt/dann einen symbolischen Link in /usr/bin/.

Was ist mit der uninstall.sh?

  • Das Deinstallationsprogramm entfernt die folgenden Dateien:

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

Ist es sicher, chkdup zu benutzen?

  • Ja, da eine Sicherungskopie der aktuellen sources.list erstellt wird, bevor versucht wird, etwas zu tun. Aber ich bin nicht verantwortlich, wenn etwas passiert ist. Die volle Verantwortung liegt bei Ihnen.

Lizenz

GNU General Public License


einfach mal ausprobiert, nett und einfach :-) nice :-)
bmbaker

3

Hast du nachgesehen ls /etc/apt/sources.list.d/? Vielleicht haben Sie einige "zusätzliche" Repositorys?


2

Installiere ubuntu-tweak und entferne die doppelten Einträge von dort.

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

Alt-Text


Dies sagt nicht, wie es geht.
RolandiXor

1

Nein, es gibt keine einzige Befehlszeile, um doppelte Einträge in der /etc/apt/sources.listDatei zu finden und zu löschen .

Dies liegt daran, dass die vorgeschlagenen Befehlszeilen, die lediglich die Funktion des viel einfacheren integrierten uniqBefehls duplizieren , nur für eine SORTED-Datei funktionieren und nur ADJACENT-Zeilen entfernen. Außerdem werden mit diesen Befehlen nur Zeilen entfernt, die aus einer identischen Zeichenfolge bestehen .

Doppelte Einträge berichtet von apt-get updatewird von doppelten bestehen Funktion Einträge, wie ein Repository wird in seinen beiden enthalten i386und amd64Varianten. Die einfache und effektive Möglichkeit, diese zu entfernen, besteht darin, zu notieren, welche Repositorys von apt-get update als Duplikate gemeldet werden, und sie über das Software Center zu entfernen . Öffnen Sie es und wählen Sie Bearbeiten -> Softwarequellen -> Andere Software . Suchen Sie einfach nach den doppelten Einträgen und deaktivieren Sie sie. (Dies ist auch eine Möglichkeit, source-codeRepositorys zu entfernen, wenn Sie die Pakete nicht kompilieren).

Es ist jedoch zu beachten, dass apt-get updatenicht nur doppelte Einträge über gefunden werden sources.list, sondern auch Repository-Dateien, die sich in befinden /var/lib/apt/lists/. Wenn Sie doppelte Einträge von dort löschen, werden die apt-get updateFehlermeldungen nur vorübergehend entfernt , wenn Ubuntu dies für erforderlich hält, da die Dateien automatisch neu installiert werden. Die Tatsache, dass apt-get updateeinige Repositorys als Duplikate gemeldet werden und dass Sie sich apt-get updateselbst ausführen , um sie zu reparieren, ist ein Hinweis darauf, dass Sie sich über diese Fehlermeldung wirklich keine Gedanken machen müssen.


1

In meinem Fall waren die Duplikate in der prerequists-sources.listDatei. Ich konnte das Upgrade fortsetzen, indem ich die folgenden Befehle im Terminal ausführte:

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

Gehen Sie dann zu Update Managerund installieren Sie die Updates.


Ein Umzug nach / tmp ist nicht erforderlich. Das Umbenennen auf etwas, das nicht aufhört, .listreicht aus
Daniel Alder

1

Nun, ich habe das Problem mit doppelten Einträgen selbst gelöst, indem ich /etc/apt/sources.d(als root) etwas anderes benannt habe und ausgeführt habe sudo apt-get update, um das Verzeichnis und seinen Inhalt wiederherzustellen.


1

Ging /etc/apt/sources.listmanuell durch sudo nano /etc/apt/sources.listund entfernte die Duplikate. Danach apt-get updatewurde das Problem gelöst.


1

In /etc/apt/sources.listmüssen Sie #den doppelten Repository-Eintrag kommentieren ( am Zeilenanfang hinzufügen ) und die Änderungen speichern. Danach wiederholen sudo apt-get update.


1

Verwenden Sie den Ubuntu Sources List Generator .

  • Führen Sie sudo -H nautilusim Terminal
  • Finden /etc/apt/sources.list
  • Klicken Sie mit der rechten Maustaste und öffnen Sie die Datei mit einem Texteditor (wenn Sie darauf klicken, wird die GUI der Softwarequellen geöffnet).
  • Einfach kopieren und einfügen sources.listund speichern.
  • Terminal verlassen und fertig.

Google scheint ein Problem zu haben, daher würde ich vorschlagen, das wegzulassen. Ich habe dies unter Ubuntu 12.10 getan (Studio-Version mit hinzugefügtem Ubuntu-Desktop und Unity für eine andere Desktop-Anmeldung).


1

Bearbeiten Sie einfach die Datei /etc/apt/sources.list(zum Beispiel verwenden sudo -H gedit /etc/apt/sources.list) und entfernen Sie die doppelte Zeile oder setzen Sie ein #an den Anfang der Zeile.


1

Ich versuche, die von anderen Nutzern angebotenen Möglichkeiten mit Hilfe des Terminals zu vervollständigen, da Sie hauptsächlich danach gefragt haben:

Melden Sie sich an, wenn Sie eine textbasierte Installation verwenden, oder drücken Sie Alt+ F2und geben Sie gnome-terminal ein, wenn Sie eine grafische Benutzeroberfläche verwenden

Dann tippe

sudo nano /etc/apt/sources.list

(Zum besseren Verständnis: Im Verzeichnis /etcfinden Sie (fast) alle Konfigurationsdateien Ihres Computers und im aptVerzeichnis die souces.listDatei, die alle Repositorys enthält, die APT zum Aktualisieren oder Installieren und Aktualisieren von Software verwendet.)

Bearbeiten Sie die Datei, indem Sie #am Zeilenanfang doppelte Zeilen entfernen oder kommentieren .

Drücken Sie Ctrl+ , Xum zu beenden , und drücken Sie ydie Datei zu speichern (oder nzu beenden , ohne zu speichern).

Dann aktualisieren Sie, um zu sehen, ob Sie es behoben haben:

sudo apt-get update

Habe Spaß!


Ich denke auch, dass ein weiterentwickelter Texteditor wie vim Duplikate automatisch finden kann, aber ich weiß nicht, wie man das macht. Jede Art von Information wäre interessant
Pitto 18.11.10

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

* Zeilenumbrüche zur besseren Lesbarkeit eingefügt.


2
Bitte erläutern Sie die Antwort oder das Risiko der Entfernung.
Jokerdino

Willkommen bei Ask Ubuntu! Als jokerdino wie angegeben, würde diese Antwort erheblich davon profitieren, wenn Sie sie bearbeiten, um eine Erklärung hinzuzufügen (oder dem Benutzer zumindest genau zu sagen, was mit diesen Zeilen zu tun ist).
Eliah Kagan

Diese Antwort ist falsch, da möglicherweise doppelte Einträge entfernt werden, doppelte Quelleinträge jedoch nicht . siehe hier für eine Erklärung
Anwar

0

Führen Sie Folgendes aus, um die Duplikate zu entfernen

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

Weitere Informationen zu diesem bitte

0

Im Falle des 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)

Öffnen: sources.list.d

rm google.list

so google-chrome.listbleibt nur


0

Es ist ein geeigneter Job, bei uniqdem doppelte Zeilen weggelassen werden und nur eindeutige Einträge gedruckt werden. Daher können wir die Ausgabe der uniqalten Datei übernehmen und durch die Ausgabe der alten Datei ersetzen uniq:

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

1
uniqbenötigt sortierte Eingabe.
Muru

sort -umacht den gleichen Job =)
AB
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.