[pacman] pb avec une clé ultime empechant update systeme

Mise à jour / Création /debug de paquetages
grontroise73
Hankyu
Messages : 12
Inscription : dim. 30 janv. 2022, 12:14

[pacman] pb avec une clé ultime empechant update systeme

Message par grontroise73 »

Bonjour
En faisant un update systeme comme habituellement pacman -Syu j'ai eu un tas d'erreur par rapport à des fichiers de paquets corrompus
"Le fichier ... est corrompu (signature PGP" Visiblement un pb de vérification de signature ..
Je vous passe mes errements à faire des essais mais en gros j'ai donc enchaine les différentes manips suivantes
et j'ai toujours l'erreur (voir à la fin) .. Qu'est ce que je ne comprends pas ou que je fais de travers ?
Merci d'avance pour votre aide

__________

- configuré un serveur de clés fiable

$ grep keyserver /etc/pacman.d/gnupg/gpg.conf
keyserver hkp://keyserver.ubuntu.com

- vidé tous les caches

$ sudo rm /var/lib/pacman/sync/*
$ sudo pacman -Scc
avertissement : database file for 'core' does not exist (use '-Sy' to download)
avertissement : database file for 'extra' does not exist (use '-Sy' to download)

Répertoire du cache : /var/cache/pacman/pkg/
:: Voulez-vous supprimer TOUS les fichiers du cache ? [o/N] O
suppression de tous les fichiers du cache…

Répertoire des dépôts : /var/lib/pacman/
:: Voulez-vous supprimer les dépôts non utilisés ? [O/n]
suppression des dépôts synchronisés inutilisés…

- mis à jour la liste des mirroirs

$ sudo curl -o /etc/pacman.d/mirrorlist https://archlinux.org/mirrorlist/all/
(et décommenté les mirroirs France)

- téléchargé et installé manuellement le dernier paquet keyring

$ sudo pacman -U archlinux-keyring-20231107-1-any.pkg.tar.zst

- tenté un nettoyage des clés .. et c'est la que le pb réapparait

$ sudo pacman-key --init
$ sudo pacman-key --populate archlinux
==> Ajout des clés depuis archlinux.gpg…
gpg: la clef publique de la clef de confiance ultime 4B5BCB484F6D2611 est introuvable
==> Mise à jour de la base de données de confiance…
gpg: la prochaine vérification de la base de confiance aura lieu le 2023-12-31

Evidemment les mises à jour suivantes échouent :

$ sudo pacman -Syy archlinux-keyring
:: Synchronisation des bases de données de paquets…
core 132,8 KiB 567 KiB/s 00:00 [##########################################] 100%
extra 8,2 MiB 1855 KiB/s 00:05 [##########################################] 100%
avertissement : archlinux-keyring-20231107-1 est à jour -- réinstallation
résolution des dépendances…
recherche des conflits entre paquets…

Paquets (1) archlinux-keyring-20231107-1

Taille totale du téléchargement : 1,14 MiB
Taille totale installée : 1,63 MiB
Taille de mise à jour nette : 0,00 MiB

:: Procéder à l’installation ? [O/n]
:: Récupération des paquets…
archlinux-keyring-20231107-1-any 1169,5 KiB 1654 KiB/s 00:01 [##########################################] 100%
(1/1) vérification des clés dans le trousseau [##########################################] 100%
(1/1) vérification de l’intégrité des paquets [##########################################] 100%
erreur : archlinux-keyring : la signature de « Christian Hesse <eworm@archlinux.org> » est de confiance inconnue
:: Le fichier /var/cache/pacman/pkg/archlinux-keyring-20231107-1-any.pkg.tar.zst est corrompu (paquet non valide ou corrompu (signature PGP)).
Voulez-vous le supprimer ? [O/n]
erreur : la validation de la transaction a échoué (paquet non valide ou corrompu (signature PGP))
Des erreurs se sont produites, aucun paquet n’a été mis à jour.

- la mise à jour d'un grand nombre de clés échoue à cause du manque de la meme clé de confiance maitre .. extrait :

$ sudo pacman-key --refresh-keys
[....]
gpg: clef 59B3122E2FA915EC : « Alexandre Filgueira <alexfilgueira@cinnarch.com> » 2 signatures nettoyées
gpg: Quantité totale traitée : 1
gpg: signatures nettoyées : 2
gpg: la clef publique de la clef de confiance ultime 4B5BCB484F6D2611 est introuvable
gpg: marginals needed: 3 completes needed: 1 trust model: pgp
gpg: profondeur : 0 valables : 2 signées : 6
confiance : 0 i., 0 n.d., 0 j., 0 m., 0 t., 2 u.
gpg: profondeur : 1 valables : 6 signées : 92
confiance : 6 i., 0 n.d., 0 j., 0 m., 0 t., 0 u.
gpg: la prochaine vérification de la base de confiance aura lieu le 2023-12-31
==> ERREUR : Impossible de mettre à jour la clé : 59B3122E2FA915EC
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [pacman] pb avec une clé ultime empechant update systeme

Message par benjarobin »

Bonjour,
J'ai bien peur que toutes tes actions n'ont fait qu'empirer la chose, il ne fallait faire que : pacman -S archlinux-keyring
Ce qui est la procédure normal à faire, il ne faut jamais faire autre chose. Il y a malheureusement des dizaines de sujets sur ce forum, et à chaque fois j'indique ce qui doit être fait, et c'est documenté dans le wiki.

Je verrai demain si je trouve une méthode pour réparer...
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
grontroise73
Hankyu
Messages : 12
Inscription : dim. 30 janv. 2022, 12:14

Re: [pacman] pb avec une clé ultime empechant update systeme

Message par grontroise73 »

Bonjour et merci pour la reponse

Pourtant je suis certain que j'ai bien commencé par ca au tout debut, et la commande tombait en echec comme maintenant. C'est vraiment la première commande que j'ai passée apres plusieurs tentatives en échec de mon pacman -Syu habituel. *Tous* les autres essais sont venus après, au fur et à mesure que ce qui était préconisé ne marchait pas mieux. Je n'ai pas détaillé ordre dans lequel j'ai fait les autres manips parce qu'au bout de 3 jours à galérer je ne me souviens plus l'ordre exact et que ca aurait alourdi le post, mais le refresh est vraiment la première chose que j'ai tentée. Je suppose que c'est assez difficile à croire, mais c'est comme ca :-)

Je viens de vérifier que je disais pas de betise, dans les fichiers historiques, entre mon system update du 26/10 qui a marché et celui du 8/11 :

$ less /var/log/pacman.log
[....]
[2023-10-26T23:05:21+0200] [ALPM] running 'update-desktop-database.hook'...
[2023-11-08T20:48:06+0100] [PACMAN] Running 'pacman -Syu'
[2023-11-08T20:48:06+0100] [PACMAN] synchronizing package lists
[2023-11-08T20:48:11+0100] [PACMAN] starting full system upgrade
[2023-11-08T20:55:52+0100] [PACMAN] Running 'pacman -Syu'
[2023-11-08T20:55:52+0100] [PACMAN] synchronizing package lists
[2023-11-08T20:55:57+0100] [PACMAN] starting full system upgrade
[2023-11-08T21:03:48+0100] [PACMAN] Running 'pacman -Syu'
[2023-11-08T21:03:48+0100] [PACMAN] synchronizing package lists
[2023-11-08T21:03:53+0100] [PACMAN] starting full system upgrade
[2023-11-08T21:04:32+0100] [PACMAN] Running 'pacman -Syu'
[2023-11-08T21:04:32+0100] [PACMAN] synchronizing package lists
[2023-11-08T21:04:32+0100] [PACMAN] starting full system upgrade
[2023-11-08T21:14:39+0100] [PACMAN] Running 'pacman -Syu'
[2023-11-08T21:14:39+0100] [PACMAN] synchronizing package lists
[2023-11-08T21:14:40+0100] [PACMAN] starting full system upgrade
[2023-11-08T21:27:51+0100] [PACMAN] Running 'pacman -S archlinux-keyring'

[2023-11-08T21:28:15+0100] [PACMAN] Running 'pacman -S archlinux-keyring'
[2023-11-08T21:30:28+0100] [PACMAN] Running 'pacman -Sy archlinux-keyring'
[...]
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [pacman] pb avec une clé ultime empechant update systeme

Message par benjarobin »

Note ne jamais faire ceci, ceci ne devrait jamais être nécessaire. Il est préférable de demander de l'aide sur le forum avant...
Alors tu peux essayer de faire ceci en root :
Déjà télécharge manuellement le keyring :

Code : Tout sélectionner

wget http://archlinux.uk.mirror.allworldit.com/archlinux/core/os/x86_64/archlinux-keyring-20231107-1-any.pkg.tar.zst
# Ou
curl "http://archlinux.uk.mirror.allworldit.com/archlinux/core/os/x86_64/archlinux-keyring-20231107-1-any.pkg.tar.zst" --output archlinux-keyring-20231107-1-any.pkg.tar.zst
Vérifie le hash du paquet :

Code : Tout sélectionner

sha256sum archlinux-keyring-20231107-1-any.pkg.tar.zst
add69ac984198a4e5f0c404de743b22f7b77a46c94da76ab0a82e1dec88e1d5e
Donne la configuration de pacman :

Code : Tout sélectionner

grep -Pvr "^ *#|^ *$" /etc/pacman.conf /etc/pacman.d/mirrorlist
Répare :

Code : Tout sélectionner

rm -rf /etc/pacman.d/gnupg
pacman -U archlinux-keyring-20231107-1-any.pkg.tar.zst
pacman-key --init
pacman-key --populate archlinux
pacman -Syy archlinux-keyring
pacman -Suu
Peux tu donner l'intégralité de la sortie des commandes
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
grontroise73
Hankyu
Messages : 12
Inscription : dim. 30 janv. 2022, 12:14

Re: [pacman] pb avec une clé ultime empechant update systeme

Message par grontroise73 »

Merci. Voila deja les 3 premieres etapes (avant la réparation)

Code : Tout sélectionner

root@dell-e5400 ~]# curl "http://archlinux.uk.mirror.allworldit.com/archlinux/core/os/x86_64/archlinux-keyring-20231107-1-any.pkg.tar.zst" --output archlinux-keyring-20231107-1-any.pkg.tar.zst
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 1169k  100 1169k    0     0  1167k      0  0:00:01  0:00:01 --:--:-- 1169k                                                             
[root@dell-e5400 ~]# sha256sum archlinux-keyring-20231107-1-any.pkg.tar.zst
add69ac984198a4e5f0c404de743b22f7b77a46c94da76ab0a82e1dec88e1d5e  archlinux-keyring-20231107-1-any.pkg.tar.zst
[root@dell-e5400 ~]# grep -Pvr "^ *#|^ *$" /etc/pacman.conf /etc/pacman.d/mirrorlist
/etc/pacman.conf:[options]
/etc/pacman.conf:HoldPkg     = pacman glibc
/etc/pacman.conf:Architecture = auto
/etc/pacman.conf:CheckSpace
/etc/pacman.conf:SigLevel    = Required DatabaseOptional
/etc/pacman.conf:LocalFileSigLevel = Optional
/etc/pacman.conf:[core]
/etc/pacman.conf:Include = /etc/pacman.d/mirrorlist
/etc/pacman.conf:[extra]
/etc/pacman.conf:Include = /etc/pacman.d/mirrorlist
/etc/pacman.conf:Include = /etc/pacman.d/mirrorlist
/etc/pacman.d/mirrorlist:Server = http://mirror.archlinux.ikoula.com/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://archlinux.mirrors.benatherton.com/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirror.cyberbits.eu/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirror.cyberbits.eu/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://archlinux.datagr.am/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirrors.eric.ovh/arch/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirrors.gandi.net/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirrors.gandi.net/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://archmirror.hogwarts.fr/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://archmirror.hogwarts.fr/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirror.ibakerserver.pt/Arch/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirror.its-tps.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirror.its-tps.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirror.jordanrey.me/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirror.jordanrey.me/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirrors.jtremesay.org/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://arch.juline.tech/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirroir.labhouse.fr/arch/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirroir.labhouse.fr/arch/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirror.lastmikoi.net/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://archlinux.mailtunnel.eu/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://archlinux.mailtunnel.eu/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mir.archlinux.fr/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirrors.celianvdb.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirrors.celianvdb.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://arch.nimukaito.net/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://arch.nimukaito.net/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirror.oldsql.cc/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirror.oldsql.cc/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://archlinux.mirrors.ovh.net/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://archlinux.rezopole.net/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirror.spaceint.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirror.spaceint.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirrors.standaloneinstaller.com/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirror.sysa.tech/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirror.thekinrar.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirror.theo546.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirror.theo546.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://ftp.u-strasbg.fr/linux/distributions/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirror.wormhole.eu/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://mirroir.wptheme.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://mirroir.wptheme.fr/archlinux/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = http://arch.yourlabs.org/$repo/os/$arch
/etc/pacman.d/mirrorlist:Server = https://arch.yourlabs.org/$repo/os/$arch
grontroise73
Hankyu
Messages : 12
Inscription : dim. 30 janv. 2022, 12:14

Re: [pacman] pb avec une clé ultime empechant update systeme

Message par grontroise73 »

Et voila ci dessous la séquence réparation, Et ca marche un grand merci !!

Note 1 : J'imagine qu'il n'est pas utile de remettre l'output de la dernière commande car il a fait beaucoup de maj, sans erreur

Note 2 : j'ai fait exactement la meme séquence hier soir (reinstall manuelle du paquet keyring, reinit et repopulate des clés..) *SAUF* la suppression au début du répertoire gnupg, qui fait la différence

Désolé pour le dérangement

______________

Code : Tout sélectionner

[root@dell-e5400 ~]# rm -rf /etc/pacman.d/gnupg
[root@dell-e5400 ~]# pacman -U archlinux-keyring-20231107-1-any.pkg.tar.zst
chargement des paquets…
avertissement : archlinux-keyring-20231107-1 est à jour -- réinstallation
résolution des dépendances…
recherche des conflits entre paquets…

Paquets (1) archlinux-keyring-20231107-1

Taille totale installée :      1,63 MiB
Taille de mise à jour nette :  0,00 MiB

:: Procéder à l’installation ? [O/n] 
(1/1) vérification des clés dans le trousseau                                       [################################################] 100%
(1/1) vérification de l’intégrité des paquets                                       [################################################] 100%
(1/1) chargement des fichiers des paquets                                           [################################################] 100%
(1/1) analyse des conflits entre fichiers                                           [################################################] 100%
(1/1) vérification de l’espace disque disponible                                    [################################################] 100%
:: Traitement des changements du paquet…
(1/1) réinstallation archlinux-keyring                                              [################################################] 100%
:: Exécution des crochets (« hooks ») de post-transaction…
(1/2) Reloading system manager configuration...
(2/2) Arming ConditionNeedsUpdate...
[root@dell-e5400 ~]# pacman-key --init
gpg: /etc/pacman.d/gnupg/trustdb.gpg : base de confiance créée
gpg: aucune clef de confiance ultime n'a été trouvée
gpg: starting migration from earlier GnuPG versions
gpg: porting secret keys from '/etc/pacman.d/gnupg/secring.gpg' to gpg-agent
gpg: migration succeeded
==> Generating pacman master key. This may take some time.
gpg: Generating pacman keyring master key...
gpg: répertoire « /etc/pacman.d/gnupg/openpgp-revocs.d » créé
gpg: revocation certificate stored as '/etc/pacman.d/gnupg/openpgp-revocs.d/0F8F6879F00A933156214A63E4889D98D7D59E99.rev'
gpg: Done
==> Mise à jour de la base de données de confiance…
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: profondeur : 0  valables :   1  signées :   0
     confiance : 0 i., 0 n.d., 0 j., 0 m., 0 t., 1 u.
[root@dell-e5400 ~]# pacman-key --populate archlinux
==> Ajout des clés depuis archlinux.gpg…
==> Signature locale des clés de confiance dans le trousseau de clés…
  -> Locally signed 6 keys.
==> Importation des valeurs des propriétaires de confiance…
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: inserting ownertrust of 4
gpg: setting ownertrust to 4
==> Désactivation des clés révoquées du trousseau de clés…
  -> Disabled 41 keys.
==> Mise à jour de la base de données de confiance…
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: profondeur : 0  valables :   1  signées :   6
     confiance : 0 i., 0 n.d., 0 j., 0 m., 0 t., 1 u.
gpg: profondeur : 1  valables :   6  signées :  93
     confiance : 0 i., 0 n.d., 0 j., 6 m., 0 t., 0 u.
gpg: profondeur : 2  valables :  71  signées :  27
     confiance : 71 i., 0 n.d., 0 j., 0 m., 0 t., 0 u.
gpg: la prochaine vérification de la base de confiance aura lieu le 2023-12-31
[root@dell-e5400 ~]# pacman -Syy archlinux-keyring
:: Synchronisation des bases de données de paquets…
 core                                                   132,8 KiB   595 KiB/s 00:00 [################################################] 100%
 extra                                                    8,2 MiB  1464 KiB/s 00:06 [################################################] 100%
avertissement : archlinux-keyring-20231107-1 est à jour -- réinstallation
résolution des dépendances…
recherche des conflits entre paquets…

Paquets (1) archlinux-keyring-20231107-1

Taille totale du téléchargement :  1,14 MiB
Taille totale installée :          1,63 MiB
Taille de mise à jour nette :      0,00 MiB

:: Procéder à l’installation ? [O/n] 
:: Récupération des paquets…
 archlinux-keyring-20231107-1-any                      1169,5 KiB  1299 KiB/s 00:01 [################################################] 100%
(1/1) vérification des clés dans le trousseau                                       [################################################] 100%
(1/1) vérification de l’intégrité des paquets                                       [################################################] 100%
(1/1) chargement des fichiers des paquets                                           [################################################] 100%
(1/1) analyse des conflits entre fichiers                                           [################################################] 100%
(1/1) vérification de l’espace disque disponible                                    [################################################] 100%
:: Traitement des changements du paquet…
(1/1) réinstallation archlinux-keyring                                              [################################################] 100%
==> Ajout des clés depuis archlinux.gpg…
==> Mise à jour de la base de données de confiance…
gpg: la prochaine vérification de la base de confiance aura lieu le 2023-12-31
:: Exécution des crochets (« hooks ») de post-transaction…
(1/2) Reloading system manager configuration...
(2/2) Arming ConditionNeedsUpdate...
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17238
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [pacman] pb avec une clé ultime empechant update systeme

Message par benjarobin »

Cool, sinon un problème mineur, tu inclus 2 fois /etc/pacman.d/mirrorlist dans la section [extra] de /etc/pacman.conf.
Sinon j'aurais bien aimé investiguer ce qui t'avait amené à cette situation, mais bon, j'ai choisi la solution "on fait table rase du passé" (suppression du dossier gnupg), on ne sera donc jamais.

Edit : Après analyse plus approfondie de ton premier message, apparemment la clé générée la première fois, la clé "ultime" (qui dans ton cas à comme ID : 4B5BCB484F6D2611) n'existait plus dans ton trousseau de clé GnuPG : Une corruption disque ? Ou une erreur de manipulation de ta part (mais je ne vois pas comment tu aurais pu arriver à ce résultat) ?
Zsh | KDE | PC fixe : core i7, carte nvidia
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
grontroise73
Hankyu
Messages : 12
Inscription : dim. 30 janv. 2022, 12:14

Re: [pacman] pb avec une clé ultime empechant update systeme

Message par grontroise73 »

Pas de manipulation puisque je n avais pas lancé de terminal depuis le 26/10 .. par contre oui La corruption disque est peut être plausible, c'est une vieille bécane de 2009 et j'ai déjà eu des soucis, je vais regarder les logs
Répondre