GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Corrección del error "Los paquetes de destino se configuraron varias veces" en las distribuciones de Linux basadas en Ubuntu y Debian

Recientemente, cuando estaba actualizando Ubuntu a través de la línea de comandos, encontré una advertencia que se quejaba de que el paquete de destino estaba configurado varias veces.

El mensaje exacto después de ejecutar el comando sudo apt update se veía así:

Obtuvo 324 kB en 6 s (50,6 kB/s)
Leyendo listas de paquetes... Listo
Construyendo el árbol de dependencias… Listo
Leyendo información de estado... Listo
Se pueden actualizar 17 paquetes. Ejecute 'apt list –upgradable' para verlos.
W:los paquetes de destino (main/binary-amd64/Packages) se configuran varias veces en /etc/apt/sources.list.d/microsoft-edge-dev.list:3 y /etc/apt/sources.list.d/ microsoft-edge.list:3

Como sé algunas cosas sobre cómo funciona el administrador de paquetes apt, ya puedo ver el problema.

Aquí está la cosa. Se agregó un repositorio a la lista de fuentes dos veces. Esto podría suceder en el mismo archivo o en archivos separados.

La solución es leer el mensaje de error (en realidad, es una advertencia) correctamente y editar el archivo para eliminar (o comentar) las líneas duplicadas. Puede ver que menciona el nombre del archivo y el número de línea.

Entonces, aquí en mi caso, eliminé la tercera línea de uno del archivo y dejó de mostrarme la advertencia. Para resumir, esto es lo que debe hacer:

  • Lea el mensaje de error y descubra qué número de línea de qué archivos tienen la misma entrada.
  • Use un editor de texto basado en terminal como Nano para editar uno de los archivos y eliminar o comentar la línea duplicada.
  • La solución puede requerir que esté familiarizado (y cómodo) con los comandos básicos de Linux.

Pero esa es una explicación demasiado breve si no está familiarizado con la gestión de paquetes en Ubuntu y Debian.

Comprender y solucionar el problema del paquete configurado varias veces

Es importante entender el problema para solucionarlo. Es porque no hay un solo comando para hacer que desaparezca. La solución requiere un poco de esfuerzo de su parte y verá que el comando/proceso exacto puede variar para diferentes personas.

¿Qué causa este problema?

Si lee el mensaje de advertencia, al menos puede adivinar que algo está configurado más de una vez.

La gestión de paquetes APT funciona en source.list. Es solo un archivo de texto que contiene la información sobre los repositorios desde donde puede descargar ciertos paquetes.

Hay un archivo principal /etc/apt/sources.list que contiene los detalles de los repositorios oficiales proporcionados por Ubuntu. Luego, está el directorio /etc/apt/sources.list.d que contiene archivos para repositorios externos adicionales.

La norma es que no toque el archivo principal /etc/apt/sources.list. Agrega un nuevo archivo en /etc/apt/sources.list.d para cualquier repositorio adicional que agregue.

El problema surge cuando intenta instalar algún software leyendo varios tutoriales de Internet. Intenta agregar un repositorio externo, no funciona a su gusto. Intenta agregar algún otro repositorio de algún otro tutorial y termina con entradas duplicadas sin siquiera darse cuenta.

Para ser claros, esto no es un error. Si tiene entradas duplicadas en la lista de fuentes, su sistema seguirá descargando los paquetes. No impide que su sistema funcione como de costumbre. Por eso es un mensaje de advertencia, no un error . Es solo que espera que se agregue un repositorio solo una vez.

Corregir las entradas duplicadas del repositorio

Para solucionar el problema, debe eliminar todas las entradas duplicadas y dejar solo una de ellas en el sistema.

Es más fácil decirlo que hacerlo, especialmente para los principiantes. Permítanme compartir algunos consejos y sugerencias al respecto.

Método 1:para usuarios de escritorio de Ubuntu

Hay una aplicación llamada Software y actualizaciones en Ubuntu. Inicie esta aplicación.

Vaya a Otro software y vea los repositorios adicionales agregados a su sistema. Los marcados están activos.

Puede revisar todos los marcados y ver si puede detectar entradas duplicadas. En caso afirmativo, seleccione uno de ellos y presione el botón Eliminar.

Puede ejecutar el comando de actualización nuevamente para ver si se solucionó el problema. Sé que no es muy conveniente, pero si desea la conveniencia de una herramienta GUI, esto es lo que debe hacer.

Si no puede detectar las entradas duplicadas, debe ser un detective e investigarlo a partir del mensaje de error como se explica en las siguientes secciones.

Método 2:elimine las entradas duplicadas usando la línea de comandos (si el error duplicado no está en el archivo /etc/apt/sources.list)

Tenga en cuenta la diferencia entre /etc/apt sources.list (archivo de fuentes principal del sistema) y /etc/apt/sources.list.d (carpeta para guardar los archivos para repositorios adicionales).

Si el error se queja de entradas repetidas en archivos en la carpeta /etc/apt/sources.list.d , usa este método.

Te lo mostraré con mi ejemplo. Siga el método con los detalles en su propio mensaje de error.

W:los paquetes de destino (main/binary-amd64/Packages) se configuran varias veces en /etc/apt/sources.list.d/microsoft-edge-dev.list:3 y /etc/apt/sources.list .d/microsoft-edge.list:3

En el mensaje de error anterior, me dice que la línea número 3 del archivo /etc/apt/sources.list.d/microsoft-edge-dev.list es la misma que la línea número 3 del archivo /etc/apt/sources .list.d/microsoft-edge.list.

Ocurrió porque tenía instalada la versión beta del navegador Microsoft Edge. Cuando se lanzó la versión estable, la instalé desde el archivo deb y agregué otra entrada.

La decisión para mí es simple, puedo eliminar uno de los archivos y no se quejará de la entrada duplicada. Si está familiarizado con la línea de comandos de Linux, puede obtener la ruta completa del archivo y usar el comando rm con sudo para eliminarlo.

Pero si no tiene ni idea acerca de la terminal de Linux, hay un enfoque más seguro y es comentar la línea repetida.

En la terminal, copie la ruta completa de uno de los archivos de problemas. Para mí, es /etc/apt/sources.list.d/microsoft-edge-dev.list. Use este comando sudo gedit como este:

sudo gedit /etc/apt/sources.list.d/microsoft-edge-dev.list

Abrirá el archivo en el editor de texto gráfico y podrá ir al número de línea del que se quejaba el sistema y agregar un # al principio de la línea:

Esto tratará la línea como un comentario. Guarde el archivo y cierre el editor. Su problema debería terminar ahora.

Método (o caso de uso) 3:cuando un archivo es de /etc/apt/sources.list y otro es del directorio /etc/apt/sources.list.d

La idea es evitar tocar el archivo principal /etc/apt/sources.list.

Entonces, si tiene líneas duplicadas en este archivo y algún otro archivo en el directorio /etc/apt/sources.list.d, debe editar el archivo en la carpeta /etc/apt/sources.list.d.

Copias su ruta y la abres con sudo gedit de la misma manera que viste en el método anterior.

Método (o caso de uso) 4:cuando todas las entradas duplicadas están en el propio archivo /etc/apt/sources.list

Es posible que haya agregado varias entradas en el archivo principal /etc/apt/sources.list. No deberías haberlo hecho, pero no estás familiarizado con las cosas, así que lo hiciste. Ahora se queja de entradas duplicadas en el mismo archivo.

W:los paquetes de destino (universe/binary-amd64/Packages) se configuran varias veces en /etc/apt/sources.list:16 y /etc/apt/sources.list:53

Ahora, lo primero aquí es hacer una copia de seguridad de este archivo con este comando:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.back

A continuación, abra el archivo con el editor de texto Gedit y sudo:

sudo gedit /etc/apt/sources.list

Si lo desea, puede ir a Preferencias en Gedit y mostrar los números de línea. Será más fácil ver los números de línea.

Ahora mire el mensaje de error nuevamente y vea de qué líneas se queja. Vaya a una de esas líneas y agregue el # antes de ella o elimine la línea por completo.

Guarde el archivo y cierre el editor. Eso es todo.

¿Te ayudó?

No sé si hice las cosas más complicadas. Quería explicar las cosas en detalle para que los principiantes pudieran solucionar el problema sin estropear su sistema.

Hazme saber si te funcionó o no. Si aún tiene preguntas, no dude en hacerlas en la sección de comentarios.

Artículo Original


Ubuntu
  1. Cómo listar todos o paquetes específicos instalados en el sistema Debian/Ubuntu Linux

  2. Cómo resolver el error "no se puede abrir el archivo de objeto compartido" en las distribuciones de Linux basadas en Ubuntu

  3. Arreglando “No se puede adquirir el bloqueo de interfaz de dpkg. ¿Eres root?” Error en Ubuntu y otras distribuciones de Linux

  4. Cómo enumerar los repositorios instalados en Ubuntu y Debian

  5. Instalar el archivo PeaZip en Ubuntu 20.04/LinuxMint/Debian Linux Distributions - ¿Guía paso a paso?

Arreglando 'Apertura de script de Shell en el editor de texto' en Ubuntu y otros Linux

Cómo enumerar paquetes instalados en distribuciones de Linux basadas en Ubuntu y Debian

Corrección del error "No se puede analizar el archivo del paquete /var/lib/apt/lists" en Ubuntu y otras distribuciones de Linux

Corrección del error "Los siguientes paquetes se han retenido" al actualizar las distribuciones de Linux basadas en Ubuntu y Debian

Corrección del error "No se pueden corregir los problemas, ha retenido paquetes rotos" en Ubuntu y otras distribuciones de Linux

Cómo corregir el error "El repositorio aún no es válido" en Ubuntu Linux