J'essaie d'installer postgresql-12 dans CentOS-8 J'ai ajouté le référentiel postgresql selon postgresql.org
site Internet https://www.postgresql.org/download/linux/redhat/
dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
alors maintenant j'ai le référentiel ajouté
[root@centos8cmd ~]# dnf repolist
Last metadata expiration check: 0:08:03 ago on Tue 08 Oct 2019 03:29:54 AM GMT.
repo id repo name status
AppStream CentOS-8 - AppStream 4,928
BaseOS CentOS-8 - Base 2,713
*epel Extra Packages for Enterprise Linux 8 - x86_64 1,816
extras CentOS-8 - Extras 3
pgdg10 PostgreSQL 10 for RHEL/CentOS 8 - x86_64 509
pgdg11 PostgreSQL 11 for RHEL/CentOS 8 - x86_64 531
pgdg12 PostgreSQL 12 for RHEL/CentOS 8 - x86_64 382
pgdg94 PostgreSQL 9.4 for RHEL/CentOS 8 - x86_64 188
pgdg95 PostgreSQL 9.5 for RHEL/CentOS 8 - x86_64 327
pgdg96 PostgreSQL 9.6 for RHEL/CentOS 8 - x86_64 487
[root@centos8cmd ~]#
mais quand j'essaie de lancer les commandes
dnf install postgresql12
dnf install postgresql12-server
J'ai reçu le message suivant !!
No match for argument: postgresql12
Error: Unable to find a match
Essayez:
Sudo dnf --repo pgdg12 install postgresql12-server.x86_64
Sudo dnf --repo pgdg12 list
Sans pour autant --repo pgdg12
, Cela ne fonctionne pas pour moi.
Toujours à la recherche de la raison de ce comportement ...
Solution alternative et plus confortable: ajoutez module_hotfixes=true
aux définitions du référentiel pgdg ou désactivez les modules AppStream que vous ne voudrez probablement jamais utiliser si vous utilisez la construction pgdg (dnf -y module disable postgresql
).
Cela est nécessaire, d'après ce que je comprends, en raison du nouveau système de modules introduit avec EL8.
Les packages pgdg sont filtrés par défaut si dnf détecte qu'ils fournissent des éléments qui se trouvent également dans des modules mais ne sont pas eux-mêmes conditionnés en modules appropriés.
Je ne sais pas comment définir les modules dans les référentiels yum mais si pgdg le ferait, il serait probablement possible sans cela ou encore mieux de pouvoir les gérer comme des modules comme les autres modules AppStream (au moins similaires à afaik, les versions des modules sont pas fait pour une installation parallèle mais uniquement pour le choix si version majeure). Ou s'ils changeaient leurs signatures de paquet (je pense que c'est lié au postgresql fourni) le filtre ne les filtrerait pas par défaut.
Vous devez désactiver le module de flux postgresql
dans AppStream, débloquant les packages postgres dans le référentiel pgdg:
dnf module disable postgresql
Pour plus de détails, reportez-vous à PostgreSQL sur CentOS 8 et RHEL 8