Dépannage de Pacman

Revision as of 11:08, 21 May 2024 by Dadu042 (talk | contribs) (Created page with "Bien qu'il soit parfois possible de résoudre le problème en supprimant simplement les fichiers et en exécutant une mise à jour pacman, c'est loin d'être toujours le cas.")
Other languages:
English • ‎Türkçe • ‎español • ‎français • ‎русский • ‎中文(中国大陆)‎

Installation du logiciel

Diverses questions relatives au téléchargement et à l'installation de paquets logiciels à partir des dépôts de Manjaro sont traitées ici.

Erreur "Unrecognized archive format"

Cela s'est produit plus d'une fois, une mise à jour émet ces messages dans un flux apparemment sans fin. Pacman n'a pas pu ouvrir le fichier: sync files

erreur: impossible d'ouvrir le fichier /var/lib/pacman/sync/core.db : Format d'archive non reconnu

erreur: impossible d'ouvrir le fichier /var/lib/pacman/sync/extra.db : Format d'archive non reconnu erreur: Impossible d'ouvrir le fichier /var/lib/pacman/sync/community.db : Format d'archive non reconnu

erreur: Impossible d'ouvrir le fichier /var/lib/pacman/sync/multilib.db : Format d'archive non reconnu

L'erreur concerne le contenu des fichiers db. L'erreur se produit lorsque pacman reçoit des balises du miroir au lieu des archives de la base de données.

Bien qu'il soit parfois possible de résoudre le problème en supprimant simplement les fichiers et en exécutant une mise à jour pacman, c'est loin d'être toujours le cas.

Exécuter pacman-mirrors pour rafraîchir votre liste de miroirs

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


Télécharger les bases de données et mettre à jour le système

user $ sudo pacman -Syyu COPY TO CLIPBOARD


Erreur "Unable to lock database"

Lors du téléchargement et de l'installation de logiciels à partir des référentiels, un fichier spécial de verrouillage de la base de données est créé afin de garantir que le processus d'installation en cours est le seul en cours d'exécution à ce moment-là. Dans le cas contraire, une tentative d'installation simultanée de plusieurs fichiers provenant de plusieurs sources peut corrompre les fichiers téléchargés, provoquer des conflits de fichiers ou, pire encore, endommager votre système. Une fois l'installation terminée, le fichier de verrouillage sera alors automatiquement supprimé. Cette erreur peut donc se produire pour deux raisons possibles:

  • Une autre installation est en cours et n'est pas encore terminée.
  • Une tentative d'installation précédente ne s'est pas terminée correctement (par exemple, parce qu'elle a été interrompue prématurément).

Il est donc sage de vérifier d'abord qu'une autre installation ne soit pas (ou n'ait pas été) en cours au moment de l'erreur. Si vous êtes sûr que ce n'est pas le cas, vous pouvez supprimer manuellement le fichier de verrouillage de la base de données. Pour ce faire, ouvrez le terminal et entrez la commande suivante :

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


Une fois que c'est fait, vous devriez maintenant être en mesure de réessayer avec succès votre installation prévue.

Erreurs sur les clés

Nous possédons tous une signature unique qui sert à authentifier notre identité et à prévenir les activités frauduleuses ou même malveillantes des autres. C'est également le cas des progiciels disponibles dans les dépôts de logiciels. Ils contiennent tous des codes chiffrés (clés de signature) propres à leurs développeurs afin de garantir qu'ils sont authentiques et non malveillants par nature.

Au cours du processus d'installation, une fois que les logiciels ont été téléchargés, votre système vérifie d'abord leur clé de signature pour s'assurer qu'ils sont authentiques avant de les installer. Si une clé de signature ne peut être vérifiée pour une raison quelconque, le processus d'installation est interrompu. Ce problème se produit généralement pour les raisons suivantes:

  • une ou plusieurs clés de signature contenues dans la base de données de votre système sont révoquées, modifiées, corrompues ou périmées.
  • un ou plusieurs logiciels n'ont pas été signés correctement lorsqu'ils ont été placés dans un référentiel.

Lorsqu'un paquet n'a pas été signé correctement avant d'être placé dans un référentiel, il incombe au(x) développeur(s) de corriger ce problème. Cependant, comme ce problème est plus que probablement dû à un problème de vérification de la clé de signature par votre système, il peut être résolu en trois étapes simples. Une connexion Internet fonctionnelle est nécessaire. Une fois que vous avez ouvert votre terminal:

Template:Avertissement

Info
Retrieving the latest keyring packages can be done by browsing a current mirrors pool folder. E.g. from https://mirror.easyname.at/manjaro/pool - using the overlay for Manjaro keyring and sync for Arch keyring and downloading them to your system. Do not download .sig files.
Info
Those running ARM can find the archlinuxarm-keyring and manjaro-arm-keyring in the sync-arm and overlay-arm folders respectively.

Download the new keyring packages Before you download ensure no keyring packages is in the current folder.

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

Use either your browser or curl to download. Using curl assumes you know the correct package name as located with the mirror. Replace YYYYMMDD-R as available from the mirror.

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

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


Remove the dysfunctional keyrings by entering this command:

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

Initialize the pacman keyring:

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

Install the downloaded packages Assuming the files is the current folder and using wildcard so you don't have to deal with dates and versions - remove the packages after successful installation

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

Populate the keyrings - (optional as the install process will do that)

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

Clear out the software packages downloaded during the aborted installation (optional):

Warning
The command clears the pacman cache completely, and one will not be able to downgrade to a previous version of a package if required. Instead packages that are causing signing errors can be removed individually when upgrading.
user $ sudo pacman -Sc COPY TO CLIPBOARD

After that try running sudo pacman -Syyu to see if the errors were resolved.

Fichiers en conflit - FILENAME existe dans le système de fichiers

Si vous ne pouvez pas installer ou mettre à jour un paquet à cause d'une erreur comme celle-ci :

error : could not prepare transaction

error : failed to commit transaction (conflicting files)
libname : /insert/file/name/here existe dans le système de fichiers
Des erreurs se sont produites, aucun paquet n'a été mis à niveau.

Le gestionnaire de paquets, pacman, a détecté un fichier inattendu qui existe déjà sur le disque.

Pourquoi cela arrive-t-il ?

Par conception, pacman n'écrase pas les fichiers qui existent déjà. C'est une caractéristique de conception, pas un défaut - les gestionnaires de paquets sont conçus pour garder la trace des fichiers installés.

Ce problème se produit normalement parce que vous avez ajouté, copié ou créé manuellement un fichier. Il peut également se produire lorsque vous installez un logiciel à l'aide d'un exécutable téléchargé, exécutez un make install ou utilisez un système de paquets tiers tel que conda. Il se produit également lorsque vous installez un paquet AUR qui installe des fichiers qui entrent en conflit avec un paquet repo.

Lorsque vous utilisez un programme d'installation tiers, vous devez toujours spécifier un emplacement d'installation alternatif, par exemple sous votre répertoire personnel, ou sous /opt ou /usr/local/. N'installez jamais directement sous / ou /usr.

Comment puis-je réparer ça ?

La première étape consiste à identifier le paquet qui possède le fichier, le cas échéant. Cela peut être fait facilement avec:

pacman -Qo /path/to/file

Si cela identifie un paquet en conflit, vous pouvez décider de le supprimer avec pacman -R. Si aucun paquet n'est identifié, vous pouvez supprimer le fichier (ou le déplacer vers un emplacement de sauvegarde).

Où puis-je en lire plus?

Ce billet a été inspiré par (et adapté de):

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

L'article ci-dessus contient également des liens vers d'autres lectures.

Erreur "Le fichier de configuration...n'est pas reconnu"

Le gestionnaire de paquets de Manjaro, pacman, utilise un fichier appelé mirrorlist. - utilise un fichier appelé mirrorlist pour lui indiquer les adresses internet des serveurs Manjaro afin de télécharger les mises à jour et les applications logicielles à partir de ceux-ci. Cette erreur se produira donc si une ou plusieurs adresses de serveurs contenues dans le fichier mirrorlist n'ont pas été listées correctement, ce qui fait que pacman ne peut pas s'y connecter. Un autre signe révélateur est que ce problème sera également rencontré immédiatement après:

  • Installer Manjaro et éditer le fichier mirrorlist pendant l'installation, ou
  • Editer le fichier mirrorlist plus tard.

Consultez le guide Passer à un autre serveur de téléchargement pour obtenir des informations plus détaillées sur la manière de sélectionner et d'activer correctement un autre serveur Manjaro pour le téléchargement.


Erreur "GPGME error: No data"

La cause la plus probable de ce problème est qu'une erreur ou une corruption a été détectée par pacman dans un ou plusieurs paquets logiciels en cours de téléchargement. Les signatures et les sommes de contrôle des paquets sont utilisées pour vérifier la validité des logiciels téléchargés, et en cas d'échec, la tentative d'installation sera interrompue pour protéger votre système jusqu'à ce que le problème soit résolu.


Option 1 : Résolution de base

Pour résoudre ce problème, suivez d'abord la procédure de base fournie ci-dessous. Si cela ne fonctionne pas, il existe une procédure plus complète.


1. Téléchargez les bases de données des paquets et mettez votre système à jour:

sudo pacman -Syyu

2. Effacez les paquets logiciels téléchargés pendant l'installation avortée en entrant la commande:

sudo pacman -Sc

3. Tentez à nouveau le téléchargement interrompu.

Option 2 : Résolution approfondi

Si la procédure de base ne permet toujours pas de résoudre le problème, d'autres étapes sont possibles :

1. Resynchronise with the Manjaro servers to ensure that everything is up to date by entering the command:

user $ sudo pacman -Syy COPY TO CLIPBOARD

2. Rafraîchissez et mettez à jour les clés de signature en entrant la commande:

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


3. Rechargez les clés de signature en entrant la commande: {UserCmd|command=sudo pacman-key --populate archlinux manjaro}}

4. Effacez les paquets logiciels téléchargés pendant l'installation avortée en entrant la commande:

user $ sudo pacman -Sc COPY TO CLIPBOARD


5. Tentez à nouveau le téléchargement interrompu.

Si l'erreur persiste, il est recommandé de changer de serveur de téléchargement'.


Erreur "Le rafraîchissement du serveur de clés a échoué : No dirmngr"

Essayez d'exécuter la commande suivante:

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


Voir aussi