Manjaro Solución de Problemas en Pacman

Solución de Problemas en Pacman

From Manjaro
This page is a translated version of the page Pacman troubleshooting and the translation is 100% complete.
Other languages:
English • ‎Türkçe • ‎español • ‎français • ‎русский • ‎中文(中国大陆)‎

Instalación de Software

Aquí son tratados varios casos relatados de descarga y instalación de paquetes software desde los repositorios de Manjaro

"Formato de archivo no reconocido" Error

Ha ocurrido más de una vez, una actualización está emitiendo estos mensajes en un flujo aparentemente interminable. Pacman no pudo abrir el archivo: sincronizar archivos

error: could not open file /var/lib/pacman/sync/core.db: Unrecognized archive format
error: could not open file /var/lib/pacman/sync/extra.db: Unrecognized archive format
error: could not open file /var/lib/pacman/sync/community.db: Unrecognized archive format
error: could not open file /var/lib/pacman/sync/multilib.db: Unrecognized archive format

El error se relaciona con el contenido de los archivos de la base de datos. El error ocurre cuando pacman recibe el marcado del espejo en lugar de los archivos de la base de datos.

Si bien a veces es posible solucionar el problema simplemente eliminando los archivos y ejecutando una actualización de pacman, esto no sucede siempre.

Ejecute pacman-mirrors para actualizar su lista de réplicas

user $ sudo pacman-mirrors -c Global COPY TO CLIPBOARD


Descargar las bases de datos y actualizar el sistema

user $ sudo pacman -Syu COPY TO CLIPBOARD


Error "No se puede bloquear la base de datos"

Al descargar e instalar software desde los repositorios, se creará un archivo de bloqueo de base de datos especial para garantizar que el proceso de instalación actual sea el único que se esté ejecutando en ese momento. De lo contrario, intentar instalar varios archivos de varias fuentes simultáneamente puede dañar los archivos descargados, causar conflictos entre archivos o, peor aún, dañar el sistema. Una vez que se haya completado la instalación, el archivo de bloqueo se eliminará automáticamente. Por lo tanto, este error puede ocurrir debido a dos posibles razones:

  • Otra instalación aún está en curso y aún no ha finalizado, o
  • Un intento de instalación anterior no finalizó correctamente (por ejemplo, debido a que se canceló antes de tiempo)

Por lo tanto, es recomendable comprobar primero que no haya otra instalación en proceso (o no la haya habido) en el momento del error. Cuando se compruebe que no es así, se puede eliminar manualmente el archivo de bloqueo de la base de datos. Para ello, abra la terminal e introduzca el siguiente comando:

user $ sudo rm /var/lib/pacman/db.lck COPY TO CLIPBOARD


Una vez hecho esto, debería poder volver a intentar con éxito la instalación deseada.

Errores sobre las claves

Todos tenemos nuestras propias firmas únicas que se utilizan para autenticar quiénes somos y evitar actividades fraudulentas o incluso maliciosas por parte de otros. Esto también sucede con los paquetes de software disponibles en los repositorios de software. Todos contienen códigos cifrados (claves de firma) exclusivos de sus desarrolladores para garantizar que sean auténticos y no maliciosos por naturaleza.

Durante el proceso de instalación, una vez que se hayan descargado los paquetes de software, el sistema comprobará primero sus claves de firma para asegurarse de que sean auténticas antes de instalarlos. Si no se puede verificar una clave de firma por algún motivo, se cancelará el proceso de instalación. Este problema suele producirse por los siguientes motivos:

  • una o más claves de firma contenidas en la base de datos de su sistema han sido revocadas, modificadas, dañadas o desactualizadas
  • uno o más paquetes de software no fueron firmados correctamente al colocarse en un repositorio

Cuando un paquete no se ha firmado correctamente antes de colocarlo en un repositorio, será responsabilidad del desarrollador corregirlo. Sin embargo, como es muy probable que este problema se deba a un problema con la verificación de una clave de firma por parte de su sistema, esto se puede resolver en tres sencillos pasos. Se requiere una conexión a la red que funcione. Una vez que haya abierto su terminal:

Template:Advertencia


Info
Para recuperar los paquetes de llaveros más recientes, puede explorar una carpeta de grupo de espejos actual. Por ejemplo, desde https://mirror.easyname.at/manjaro/pool, utilizando overlay para el llavero de Manjaro y sync para el llavero de Arch y descargándolos a su sistema. No descargue archivos .sig.


Información
Aquellos que ejecutan ARM pueden encontrar archlinuxarm-keyring y manjaro-arm-keyring en las carpetas sync-arm y overlay-arm respectivamente.

Descargar los nuevos paquetes de llaveros Antes de descargar, asegúrese de que no haya ningún paquete de llaveros en la carpeta actual.

user $ rm manjaro-keyring* archlinux-keyring* COPY TO CLIPBOARD


Utilice su navegador o curl para descargar. El uso de curl supone que conoce el nombre correcto del paquete que se encuentra en el servidor. Reemplace AAAAMMDD-R como está disponible en el servidor.

user $ curl -O https://mirror.easyname.at/manjaro/pool/overlay/manjaro-keyring-YYYYMMDD-R-any.pkg.tar.zst COPY TO CLIPBOARD


user $ curl -O https://mirror.easyname.at/manjaro/pool/sync/archlinux-keyring-YYYYMMDD-R-any.pkg.tar.zst COPY TO CLIPBOARD


Elimine los llaveros que no funcionan ingresando este comando:

user $ sudo rm -r /etc/pacman.d/gnupg COPY TO CLIPBOARD


Inicialice el llavero de Pacman:

user $ sudo pacman-key --init COPY TO CLIPBOARD


Instalar los paquetes descargados Suponiendo que los archivos están en la carpeta actual y utilizando comodines para no tener que lidiar con fechas y versiones, elimine los paquetes después de una instalación exitosa

user $ sudo pacman -U manjaro-keyring*.pkg.tar.zst archlinux-keyring*.pkg.tar.zst COPY TO CLIPBOARD


Rellenar los llaveros - (opcional, ya que el proceso de instalación lo hará)

user $ sudo pacman-key --populate manjaro archlinux COPY TO CLIPBOARD


Eliminar los paquetes de software descargados durante la instalación interrumpida (opcional):

Warning
El comando borra por completo la caché de pacman y no se podrá volver a una versión anterior de un paquete si es necesario. En cambio, los paquetes que están causando errores de firma se pueden eliminar individualmente al actualizar.
user $ sudo pacman -Sc COPY TO CLIPBOARD


Después de eso, intente ejecutar sudo pacman -Syu para ver si se resolvieron los errores.

Archivos en conflicto: FILENAME existe en el sistema de archivos

Si no puedes instalar o actualizar un paquete debido a un error como este:

error: could not prepare transaction
error: failed to commit transaction (conflicting files)
libname: /insert/file/name/here exists in filesystem
Errors occurred, no packages were upgraded.

Entonces, el administrador de paquetes, pacman, ha detectado un archivo inesperado que ya existe en el disco.

¿Por qué sucede esto?

Por diseño, Pacman no sobrescribirá los archivos que ya existen. Esto es una característica de diseño, no un defecto: los administradores de paquetes están diseñados para realizar un seguimiento de los archivos instalados.

Este problema suele ocurrir porque has añadido, copiado o creado un archivo de forma manual. También puede ocurrir cuando instalas software mediante un ejecutable descargado, ejecutas una instalación make o utilizas un sistema de paquetes de terceros como conda. También ocurre cuando instalas un paquete AUR que instala archivos que entran en conflicto con un paquete de repositorio.

Al utilizar un instalador de terceros, siempre debe especificar una ubicación de instalación alternativa, como su directorio personal, /opt o /usr/local/. Nunca instale directamente en / o /usr.

¿Cómo puedo solucionar esto?

El primer paso es identificar qué paquete, si es que hay alguno, es el propietario del archivo. Esto se puede hacer fácilmente con:

user $ pacman -Qo /path/to/file COPY TO CLIPBOARD


Si esto identifica un paquete conflictivo, puede decidir eliminarlo con pacman -R. Si no se identifica ningún paquete, puede eliminar el archivo (o moverlo a una ubicación de respaldo).

¿Dónde puedo leer más?

Esta publicación fue inspirada por (y adaptada de):

https://wiki.archlinux.org/title/Pacman#%22Failed_to_commit_transaction_(conflicting_files)%22_error

La publicación anterior también tiene enlaces a lecturas adicionales.

Error "Archivo de configuración...no reconocido"

El administrador de paquetes de Manjaro - pacman - utiliza un archivo llamado mirrorlist para indicarle las direcciones de Internet de los servidores de Manjaro con el fin de descargar actualizaciones y aplicaciones de software desde ellos. Por lo tanto, este error se producirá si una o más direcciones de servidor contenidas en el archivo mirrorlist no se han enumerado correctamente, lo que hace que pacman no pueda conectarse a ellas. Otra señal reveladora es que este problema también se encontrará inmediatamente después de:

  • Instalar Manjaro y editar el archivo de lista de réplicas durante la instalación, o
  • Editar el archivo de lista de réplicas en un momento posterior.

Consulta la guía Cambiar a un servidor de descarga diferente para obtener información más detallada sobre cómo seleccionar y habilitar correctamente otro servidor Manjaro para descargar.


"GPGME error: No data" Error

Warning
This section duplicates information from Pacman_troubleshooting#Errors_about_Keys consider removing duplicated information

La causa más probable de este problema es que "pacman" haya detectado un error o corrupción en uno o más paquetes de software que se están descargando. Las firmas y sumas de comprobación de los paquetes se utilizan para verificar la validez del software descargado y, si fallan, se abortará el intento de instalación para proteger el sistema hasta que se resuelva el problema.


Opción 1: Resolución básica

Para resolver este problema, primero siga el procedimiento básico que se proporciona a continuación. Si esto no funciona, existe un procedimiento más completo disponible.


1. Descargue las bases de datos de paquetes y actualice su sistema:

user $ sudo pacman -Syu COPY TO CLIPBOARD


2. Borre los paquetes de software descargados durante la instalación interrumpida ingresando el comando:

user $ sudo pacman -Sc COPY TO CLIPBOARD


3. Vuelva a intentar la descarga interrumpida.

Opción 2: Resolución integral

Si el procedimiento básico aún no resuelve el problema, hay otros pasos disponibles:

1. Vuelva a sincronizar con los servidores de Manjaro para asegurarse de que todo esté actualizado ingresando el comando:

user $ sudo pacman -Sy COPY TO CLIPBOARD


2. Actualice las claves de firma ingresando el comando:

user $ sudo pacman-key --refresh-keys COPY TO CLIPBOARD


3. Vuelva a cargar las claves de firma ingresando el comando:

user $ sudo pacman-key --populate archlinux manjaro COPY TO CLIPBOARD


4. Borre los paquetes de software descargados durante la instalación interrumpida ingresando el comando:

user $ sudo pacman -Sc COPY TO CLIPBOARD


5. Vuelva a intentar la descarga interrumpida.

Si el error persiste, se recomienda Cambiar a un servidor de descarga diferente.

Error "Error en la actualización del servidor de claves: No hay dirmngr"

Intente ejecutar el siguiente comando:

user $ sudo dirmngr </dev/null COPY TO CLIPBOARD


Ver también

Cookies help us deliver our services. By using our services, you agree to our use of cookies.