Your sources.list realmente tiene entradas duplicadas.
Primero, veamos la forma correcta de una línea de repositorio o línea de origen:
El formato correcto de la línea de origen del repositorio es
<type of repository> <location> <dist-name> <components>
Por ejemplo, una línea de repositorio puede ser como esta
deb http://archive.ubuntu.com/ubuntu precise main
Aquí, significa que el repositorio es para paquetes binarios, que están alojados en http://archive.ubuntu.com/ubuntu y este repositorio es para Ubuntu preciso (12.04) y este repositorio contiene el principal (software que es oficialmente compatible con Componente canónico).
Tipo: El tipo puede ser deb
y deb-src
. deb
significa un repositorio binario donde deb-src
significa un repositorio fuente
Ubicación: http://archive.ubuntu.com/ubuntu
ubicación del repositorio.
Dist-name: el nombre de distribución de la versión de Ubuntu. Para Ubuntu 12.04 es precise
, para 11.10 es oneiric
.
Puede visitar el Wiki de Ubuntu para ver una lista actualizada de las versiones de Ubuntu y sus nombres en código .
Componente: Puede ser main
, universe
, multiverse
y restricted
. Estas palabras indican el nivel de soporte para los paquetes y el estado de la licencia.
Vea esta página para más información.
Tenga en cuenta que puede agregar uno o más componentes en una línea, por lo que "principal", "universo", "restringido" y "multiverso" pueden estar en una sola línea. También tenga en cuenta que, aunque agrega más de un componente en una sola línea, el sistema APT los considera como una línea separada que contiene solo un componente.
Entonces, si sources.list
tienes una línea como esta
deb http://archive.ubuntu.com/ubuntu precise universe
Entonces no puede tener otra línea como la siguiente (que tienen sus archivos)
deb http://archive.ubuntu.com/ubuntu precise main universe
que es equivalente a estas dos líneas
deb http://archive.ubuntu.com/ubuntu precise main
deb http://archive.ubuntu.com/ubuntu precise universe
Porque estás duplicando el universo dos veces, por lo que habrá un error para ese duplicado. Se dará un error por cada duplicado encontrado.
Solución:
Después de analizar su sources.list
archivo, descubrí que es básico y es suministrado por Ubuntu por defecto. Puede crear un archivo predeterminado siguiendo el procedimiento:
Abra una terminal y primero cambie el nombre del sources.list
archivo existente a sources.list.bak
archivo. (podemos eliminarlo de forma segura, pero la precaución es buena).
sudo mv /etc/apt/sources.list /etc/apt/sources.list.bak
Luego abra software-properties-gtk
para construir uno nuevo. Escriba el siguiente comando en un terminal o en el símbolo del sistema del tablero presionando Alt+F2
software-properties-gtk
Tenga en cuenta que para Ubuntu versión 11.10 o anterior debe usar gksu
antes del software-properties-gtk
comando
Después de abrir la ventana,
- Seleccione las cuatro categorías en la pestaña Software de Ubuntu
- Seleccione seguridad precisos , exactos actualizaciones y precisas-backports categoría en Actualizaciones pestaña.
- Seleccione el socio Canonical y la categoría Independiente en la pestaña Otro software .
Eso es. Ahora tiene un sources.list
archivo predeterminado sin error. Compare este archivo con el anterior, si lo desea.
Actualización para tratar con sources.list.d
archivos de dir
A veces, una entrada duplicada puede estar en un archivo en el /etc/apt/sources.list.d
directorio, que también es utilizado por APT. Por lo tanto, debe mirar ese directorio y ver si hay algún duplicado en esos archivos. No es necesario que haya duplicados en el mismo archivo.
Caso de ejemplo:
Un usuario tenía este mensaje de error que se mostraba mientras lo hacía 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
Pero no había ninguna entrada http://dl.google.com
en el /etc/apt/sources.list
archivo principal . Mirando el /etc/apt/sources.list.d/
directorio encontramos estos archivos:
salida 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
Los archivos google-chrome.list
y google.list
eran buenos candidatos para contener duplicados. Por lo tanto, era necesario verificar el contenido de ambos archivos.
Salida de cat /etc/apt/sources.list.d/google-chrome.list
:
deb http://dl.google.com/linux/chrome/deb/ stable main
y de cat /etc/apt/sources.list.d/google.list
deb http://dl.google.com/linux/chrome/deb/ stable main
Entonces, había entradas duplicadas en las fuentes de Apt. Dado que google-chrome.list
solo contiene una sola línea de apt y también se enumeró en el google.list
archivo, podemos eliminar este archivo de forma segura con el comando
sudo rm /etc/apt/sources.list.d/google-chrome.list
Entonces el problema fue resuelto.