Dernièrement, j’ai rencontré un problème à la mise à jour d’un ordinateur sous Arch. L’erreur indiquait: « la préparation de la transaction a échoué (paquet invalide ou corrompu) ».
$ sudo pacman -Syu :: Synchronisation des bases de données de paquets... core est à jour extra est à jour community est à jour :: Début de la mise à jour complète du système... erreur : l’ouverture du fichier /var/lib/pacman/local/blender-17:2.78-1/desc a échoué : Aucun fichier ou dossier de ce type résolution des dépendances... recherche des conflits entre paquets... avertissement : les métadonnées pour le paquet blender-17:2.78-1 n’ont pas pu être totalement chargées. erreur : la préparation de la transaction a échoué (paquet invalide ou corrompu)
La première étape pour que Pacman accepte d’effectuer la mise à jour du système consiste à retirer le paquet posant problème, ici blender.
sudo pacman -R blender
Une fois le paquet retiré, on peut procéder à la mise à jour.
sudo pacman -Syu
Ou pas, puisque j’obtiens cette fois des erreurs de conflits de fichiers :
erreur : la validation de la transaction a échoué (conflit de fichiers) ttf-dejavu : /etc/fonts/conf.d/20-unhint-small-dejavu-sans-mono.conf est déjà présent dans le système de fichiers ttf-dejavu : /etc/fonts/conf.d/20-unhint-small-dejavu-sans.conf est déjà présent dans le système de fichiers ttf-dejavu : /etc/fonts/conf.d/20-unhint-small-dejavu-serif.conf est déjà présent dans le système de fichiers ttf-dejavu : /etc/fonts/conf.d/57-dejavu-sans-mono.conf est déjà présent dans le système de fichiers ttf-dejavu : /etc/fonts/conf.d/57-dejavu-sans.conf est déjà présent dans le système de fichiers ttf-dejavu : /etc/fonts/conf.d/57-dejavu-serif.conf est déjà présent dans le système de fichiers Des erreurs se sont produites, aucun paquet n’a été mis à jour.
Dans ce cas précis, la procédure à suivre consiste à vérifier pour chaque fichier, si celui-ci est utilisé par l’un des paquets du système.
$ sudo pacman -Qo /etc/fonts/conf.d/20-unhint-small-dejavu-sans-mono.conf erreur : aucun paquet ne contient /etc/fonts/conf.d/20-unhint-small-dejavu-sans-mono.conf
Une fois assuré que le fichier est inutilisé, on le renomme pour en conserver un exemplaire, au cas où. D’après la documentation, celui-ci sera nettoyer lors de la mise à jour.
$ sudo mv /etc/fonts/conf.d/20-unhint-small-dejavu-sans-mono.conf /etc/fonts/conf.d/20-unhint-small-dejavu-sans-mono.conf.save
Une fois ces opérations effectuées pour chacun des fichiers posant problème, on peux relancer à nouveau le processus de mise à jour.
sudo pacman -Syu
Cette fois, les paquets sont mis à jour correctement, tant mieux! En me basant sur ce que j’ai lu, il semble que l’erreur « paquet invalide ou corrompu » apparaisse dans différents cas de figure. Si l’erreur devait réapparaître, il n’est donc pas exclu de devoir trouver une autre solution pour la résoudre.
Un bon réflex, lorsque l’on a un soucis avec Pacman est de faire un tour sur le blog (archlinux.fr pour la traduction francophone). En l’occurrence, le problème sur les polices était signalé : https://archlinux.fr/news/ttf-dejavu-2-37-necessitera-de-forcer-la-mise-a-jour.
J’ai également fais les frais de cet oubli et passé quelques heures à chercher une erreur avant de me rendre compte que l’explication se trouvait sur le blog depuis le départ ^^
Effectivement; merci pour le lien et le rappel. Je suis pour ma part abonné au flux RSS des news anglaises de archlinux.org. En l’occurrence, j’avais donc effectué la mise à jour ttf-dejavu en suivant les préconisations sur ma machine principale et je n’ai pas pensé à reproduire l’opération sur ma machine secondaire lorsque je l’ai mise à jour quelques semaines plus tard.
Bonjour, je suis un utilisateur de Manjaro et je rencontre une erreur lorque je veux effectuer une mise a jour .
L’erreur est:
« avertissement : les métadonnées pour le paquet acl-2.3.1-1 n’ont pas pu être totalement chargées. »
Quant j’essaie de le suprimer avec pacman -R je recontre l’erreur d’entrée/sortie.
je ne sais vraiment pas comment règler ça.
Bonjour,
Le problème décrit dans ce forum en langue anglaise semble correspondre à votre cas : https://bbs.archlinux.org/viewtopic.php?pid=1675774#p1675774 .
En me basant sur le contenu de la discussion, il semble qu’il faille supprimer le répertoire problématique dont le chemin figure dans le message d’erreur, puis forcer la réinstallation du paquet, soit:
sudo pacman -S –force acl