Votre sources.list a vraiment des entrées en double.
Voyons d'abord la forme correcte d'une ligne de référentiel ou d'une ligne source:
Le format correct de la ligne source du référentiel est
<type of repository> <location> <dist-name> <components>
Par exemple, une ligne de prise en pension peut être comme celle-ci
deb http://archive.ubuntu.com/ubuntu precise main
Ici, cela signifie que le référentiel est pour les paquets binaires, qui sont hébergés dans http://archive.ubuntu.com/ubuntu et ce référentiel est pour Ubuntu precise (12.04) et ce référentiel contient les principaux (logiciels officiellement supportés par Canonical).
Type: Le type peut être deb
et deb-src
. deb
signifie un référentiel binaire où deb-src
signifie un référentiel source
Emplacement: http://archive.ubuntu.com/ubuntu
emplacement du référentiel.
Dist-name: nom de la distribution de la version Ubuntu. Pour Ubuntu 12.04, il en est ainsi que precise
pour 11.10 oneiric
.
Vous pouvez visiter le wiki d'Ubuntu pour afficher une liste mise à jour des versions d'Ubuntu et leurs noms de code .
Composant: Il peut être main
, universe
, multiverse
et restricted
. Ces mots indiquent le niveau de prise en charge des packages et le statut de la licence.
Voir cette page pour plus d'informations.
Veuillez noter que vous pouvez ajouter un ou plusieurs composants dans une ligne, de sorte que "principal", "univers", "restreint" et "multivers" puissent figurer sur une seule ligne. Notez également que, bien que vous ajoutiez plusieurs composants sur une seule ligne, le système APT les considère comme une ligne distincte ne contenant qu'un seul composant.
Donc, si vous sources.list
avez une ligne comme celle-ci
deb http://archive.ubuntu.com/ubuntu precise universe
Ensuite, il ne peut pas y avoir une autre ligne comme celle ci-dessous (qui contient vos fichiers)
deb http://archive.ubuntu.com/ubuntu precise main universe
qui est équivalent de ces deux lignes
deb http://archive.ubuntu.com/ubuntu precise main
deb http://archive.ubuntu.com/ubuntu precise universe
Parce que vous dupliquez un univers deux fois, il y aura donc une erreur pour ce duplicata. Une erreur sera donnée pour chaque duplicata trouvé.
Solution:
Après analyse de votre sources.list
fichier, j’ai trouvé que c’est un fichier de base fourni par Ubuntu par défaut. Vous pouvez créer un fichier par défaut en suivant la procédure suivante:
Ouvrez un terminal et renommez d'abord le sources.list
fichier existant en sources.list.bak
fichier. (Nous pouvons le supprimer en toute sécurité, mais la prudence est de mise).
sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
Ensuite, ouvrez- software-properties-gtk
en un nouveau. Tapez la commande ci-dessous dans une invite de commande de terminal ou au tiret en appuyant sur Alt+F2
software-properties-gtk
Remarque: pour Ubuntu version 11.10 ou antérieure, vous devez utiliser gksu
avant la software-properties-gtk
commande
Une fois la fenêtre ouverte,
- Sélectionnez les quatre catégories dans l' onglet Logiciel Ubuntu
- Sélectionnez -sécurité précises , précises-mises à jour et précises backports- catégorie dans les mises à jour onglet.
- Sélectionnez le partenaire Canonical et la catégorie indépendante dans l' onglet Autres logiciels .
C'est ça. Vous avez maintenant un sources.list
fichier par défaut sans erreur. Comparez ce fichier avec le précédent, si vous voulez.
Mise à jour pour traiter sources.list.d
les fichiers de dir
Parfois, une entrée en double peut se trouver dans un fichier du /etc/apt/sources.list.d
répertoire, qui est également utilisé par APT. Donc, vous devriez regarder ce répertoire et voir s'il y a des doublons dans ces fichiers. Il n'est pas nécessaire que les doublons se trouvent dans le même fichier.
Exemple de cas:
Un utilisateur avait ce message d'erreur affiché en faisant 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
Mais il n'y avait aucune entrée avec http://dl.google.com
dans le /etc/apt/sources.list
fichier principal . En regardant le /etc/apt/sources.list.d/
répertoire, nous avons trouvé ces fichiers:
sortie de 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
Les fichiers google-chrome.list
et google.list
étaient de bons candidats pour contenir des doublons. Donc, vérifier le contenu des deux fichiers était nécessaire.
Sortie de cat /etc/apt/sources.list.d/google-chrome.list
:
deb http://dl.google.com/linux/chrome/deb/ stable main
et de cat /etc/apt/sources.list.d/google.list
deb http://dl.google.com/linux/chrome/deb/ stable main
Donc, il y avait un doublon d'entrées dans les sources d'Apt. Comme il google-chrome.list
ne contient qu'une seule ligne apt et que celle-ci était également répertoriée dans un google.list
fichier, vous pouvez supprimer ce fichier en toute sécurité avec la commande
sudo rm /etc/apt/sources.list.d/google-chrome.list
Ensuite, le problème a été résolu.