Votre sources.list contient réellement des doublons.
Premier Voyons 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 repo peut ressembler à celle-ci
deb http://archive.ubuntu.com/ubuntu precise main
Ici, cela signifie que le référentiel est destiné aux paquets binaires, qui sont hébergés dans lien et que ce dépôt est destiné à Ubuntu precise (12.04) et ce dépôt contient les principaux composants (logiciels officiellement supportés par Canonical).
-
Tapez: 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 s'agit de precise
, pour 11.10, il s'agit de oneiric
.
Vous pouvez visiter le wiki Ubuntu pour voir une mise à jour liste des versions d'Ubuntu et de leurs noms de code .
-
Composant: il peut s'agir de main
, universe
, multiverse
et restricted
. Ces mots indiquent le niveau de prise en charge des packages et le statut de la licence.
Consultez cette page pour plus d'informations.
Veuillez noter que vous pouvez ajouter un ou plusieurs composants dans une ligne, afin que "main", "universe", "restricted" et "multivers" puissent être 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 contenant un seul composant.
Donc, si votre sources.list
a une ligne comme celle-ci
deb http://archive.ubuntu.com/ubuntu precise universe
Ensuite, il ne peut pas y avoir une autre ligne comme ci-dessous (que vos fichiers ont)
deb http://archive.ubuntu.com/ubuntu precise main universe
qui est équivalent à ces deux lignes
deb http://archive.ubuntu.com/ubuntu precise main
deb http://archive.ubuntu.com/ubuntu precise universe
Parce que vous dupliquez deux fois universe , il y aura donc une erreur pour ce doublon. Une erreur sera donnée pour chaque copie trouvée.
Solution:
Après avoir analysé votre fichier sources.list
, 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:
-
Ouvrez un terminal et renommez d'abord le fichier sources.list
existant en fichier sources.list.bak
. (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
-
Ouvrez ensuite software-properties-gtk
pour en créer un nouveau. Tapez la commande ci-dessous dans un terminal ou dans une invite de commande à l'aide de Alt + F2
software-properties-gtk
Remarque: pour Ubuntu version 11.10 ou antérieure, vous devez utiliser gksu
avant la commande software-properties-gtk
-
Après l'ouverture de la fenêtre,
- Sélectionnez les quatre catégories dans l'onglet Logiciel Ubuntu
- Dans la catégorie Mises à jour , sélectionnez la catégorie Sécurité précise , précises-mises à jour et précision-backports . li>
- Sélectionnez l'onglet Partenaire Canonical et Independent dans l'onglet Autres logiciels .
C'est ça. Vous avez maintenant un fichier sources.list
par défaut sans erreur. Comparez ce fichier avec le précédent, si vous voulez.
Mise à jour pour gérer les fichiers de sources.list.d
dir
Parfois, une entrée en double peut se trouver dans un fichier du répertoire /etc/apt/sources.list.d
, 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 soient dans le même fichier.
Exemple de cas:
Un utilisateur affichait ce message d'erreur lors de l'exécution de 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 pas d'entrée avec http://dl.google.com
dans le fichier /etc/apt/sources.list
principal. En regardant le répertoire /etc/apt/sources.list.d/
, 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
Il y avait donc des doublons dans les sources d'Apt. Puisque google-chrome.list
ne contient qu'une seule ligne apt et qu'il est également répertorié dans le fichier google.list
, nous pouvons supprimer ce fichier en toute sécurité avec la commande
sudo rm /etc/apt/sources.list.d/google-chrome.list
Le problème a été résolu.