28 de noviembre de 2010

Solución error Ubuntu 10.04: W: Duplicate sources.list

Llevo un tiempo con el error W: Duplicate sources.list en mi Ubuntu 10.04.

Al principio no le echaba mucha importancia, pero mas adelante me di cuenta que por culpa de este error no podía actualizar mi sistema, y si por algo lo tengo instalado es por sus actualizaciones.

Hoy me puse con ello y, a través de unos pequeños pasitos, conseguí arreglarlo. A continuación explicaré qué es exactamente el error, asi como cómo arreglarlo.

Seguir leyendo 'Solución error Ubuntu 10.04: W: Duplicate sources.list'





Origen del error

No se sabe el origen exacto del error, ni porque se debe. El error se debe a que por algún motivo se producen copias de repositorios en los directorios y archivos que los contienen.

Algo que también afecta es el hecho de utilizar repositorios que ya no existen o dan error. Si éste es el caso, Ubuntu pensará que estamos utilizando recursos que no son fiables y parará la actualización.

En mi caso, el error era el siguente:


W: Duplicate sources.list entry http://security.ubuntu.com/ubuntu/ lucid-security/universe Packages (/var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_lucid-security_universe_binary-i386_Packages)
W: Duplicate sources.list entry http://security.ubuntu.com/ubuntu/ lucid-security/multiverse Packages (/var/lib/apt/lists/security.ubuntu.com_ubuntu_dists_lucid-security_multiverse_binary-i386_Packages)


y al intentar actualizar el sistema, salía el siguente error:


W: Duplicate sources.list



Solución al problema

Ahora que conocemos y entendemos el problema podemos resolverlo. Solucionarlo es cosa de niños, y será aún más facil si seguimos los pasos que indico a continuación.


Paso 1 - Orígenes de software

La primera cosa a hacer es indicarle al sistema que todos los paquetes que vamos a instalar vienen de fuentes en las que confiamos.

Para ello, vamos a Sistema: Administración --> Orígenes de software. donde entraremos en la pestaña "otro software" y nos aseguraremos de que todos las casillas estén marcadas.


Orígenes de software

Tras hacer ésto, el sistema pedirá que recargemos todos los repositorios. Los recargamos y cerramos la ventana.



Paso 2 - Eliminar duplicados

Una vez hecho esto procedemos a eliminar el duplicado de los repositorios, que es el problema principal.

Para ello, entramos en el navegador del sistema, nautilus, como superusuario. Para ello utilizamos la combinación de teclas ALT + F2 y escribimos gksudo nautilus y introducimos la contraseña del administrador.


gksudo nautilus

Una vez dentro del navegador de archivos en modo superusiaro, tendremos que ir a la ruta donde se produce el error.

El error se produce en /var/lib/apt/list asi que navegamos hasta ahi.


/var/lib/apt/list


Una vez dentro, vemos todos los archivos que apuntan a los repositorios. Cada archivo tendrá el nombre de su repositorio, asi que descuida, no tendremos que probar uno por uno.

Para hacer más rápido y llevadera la búsqueda de los repositorios duplicados, buscamos un trozo del repositorio en cuestión.

Para ello, utilizamos la combinación de teclas, CTRL + F y buscamos los duplicados, y los suprimimos.


Eliminar duplicados


Paso 3 - Limpiar, actualizar y reconfigurar los repositorios

Como último, vamos a limpiar, actualizar y reconfigurar los repositorios.

Para ello, lanzamos en una terminal los siguentes comandos (en órden):


   sudo aptitude update

   sudo aptitude -f install

   sudo dpkg --configure -a

En el segundo comando, nos pedirá si queremos actualizar, etc... , cada vez que pida algo por este estilo, presionamos la tecla y para que haga su tarea.



Conclusión

Un error bastante molesto, que no se resuelve con un simple comando.

Opino que los chic@s de Canonical lo deberían de tener en cuenta en vez de pensar en nuevas actualizaciones de su distribución.

Espero que les haya servido de ayuda. Saludos!

29 de Noviembre de 2010

2 comentarios:

  1. Gracias amigo, que Jehová Dios le devuelva el triple de lo que da.
    atentamente,
    ALVARO LEONEL
    Colombia

    ResponderEliminar