J'écris ceci parce que je suis très confus quant à l'installation de PostgreSQL 9.3 sur mon Ubuntu 14.04. J'en ai d'abord besoin pour mon développement Python/Django, et j'ai rencontré le problème lorsque j'ai essayé de l'installer. Maintenant, j'ai cette erreur et ça me rend folle:
The following packages have unmet dependencies:
postgresql-9.3 : Depends: postgresql-client-9.3 but it is not going to be installed
Depends: postgresql-common (>= 142~) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
J'ai trouvé des solutions en ligne ( Comment puis-je résoudre les dépendances non résolues après l'ajout d'un PPA? ), et j'ai tout fait pour la partie Mesures préventives, car j'ai eu un problème de paquets cassés, et encore après avait cette erreur me montrer à nouveau.
Deuxièmement, j’ai suivi le tutoriel officiel d’installation de PostgreSQL ( http://www.postgresql.org/download/linux/ubuntu/ ), et j’ai eu des référentiels dupliqués, mais je les ai supprimés et J'ai ajouté un nouveau mais toujours cette erreur.
Permettez-moi de partager avec d'autres personnes mon expérience de l'installation de postgresql-9.3
. Tout d'abord, cela fait environ quatre ou cinq jours que je me bats avec cela, et j'ai finalement réussi à le faire.
Tous se sont trompés avec ces mauvaises erreurs que j'ai partagées dans mon premier message, car j'ai essayé de les rechercher sur Google et de découvrir que les gens avaient moins la même erreur, ou avaient du mal à résoudre une erreur similaire.
En résumé, vous avez une très bonne réponse à résoudre ici pour résoudre les paquets non satisfaits:
Comment résoudre les dépendances non satisfaites après l'ajout d'un PPA?
Mon erreur est que j'ai fait un référentiel dupliqué, et la réponse dans ce lien a résolu que, cette commande Sudo apt-get install -f
vient de commettre une autre erreur, vous devez le faire manuellement, au moins je l'ai fait (lisez la section Mesures préventives, mais vous pourriez lire jusqu’à la fin, c’est un post imba).
Deuxièmement, je réussis à google ce post de la page officielle de PostgreSQL http://www.postgresql.org/message-id/[email protected] (c'est l'erreur que les gens ont habituellement quand ils ont du mal à installer postgresql), cela m’a amené à
https://wiki.postgresql.org/wiki/Apt , c’est la bonne façon d’ajouter des paquets PostgreSQL à votre système, il suffit de le lire et de le faire étape par étape.
La troisième étape consiste en une série de commandes fournies dans le post @vembutech:
Sudo apt-get update && Sudo apt-get upgrade
Sudo apt-get install postgresql-9.3 postgresql-contrib-9.3
Vous pouvez installer le paquet en utilisant.
assurez-vous que les sources de repo sont à jour
Sudo apt-get update
Pour installer le paquet.
Sudo apt-get install packagename
Une fois que le paquet a déterminé qu'il vous manque des dépendances, exécutez la commande suivante pour corriger les dépendances rompues ou manquantes.
Sudo apt-get install -f
La commande ci-dessus ne téléchargera les dépendances manquantes que si vous avez déjà installé le paquet.
Parfois, les dépendances à réparer ne sont pas liées au programme que vous essayez d'installer. Dans mon cas, c'était en émettant cette erreur:
Les personnes suivantes ont des dépendances non satisfaites
shashlik: Dépend de: libc6-i386 mais il ne va pas être installé
Dépend de: lib32gcc1 mais il ne va pas être installé
Dépend de: lib32z1 mais il ne va pas être installé
Il s'est avéré que j'avais essayé d'installer un programme appelé "Shashlik" et que l'installation avait échoué. Alors j'ai couru le code:
Sudo apt-get --purge remove shashlik
Et puis j'ai couru:
Sudo apt install autoconf
Cela a semblé corriger l'erreur alors que mon programme était installé. Je ne sais pas à quel point la deuxième commande a aidé, mais je l'ai mise au cas où il serait nécessaire que la solution fonctionne.
Je sais que je suis un peu en retard, mais aucune des solutions ci-dessus n'a fonctionné pour moi. Ce qui a vraiment résolu mon problème, c'est d'utiliser aptitude
au lieu d'apt-get. aptitude
suggérera des solutions au problème. Par exemple:
The following actions will resolve these dependencies:
Keep the following packages at their current version:
1) libyaml-dev [Not Installed]
Accept this solution? [Y/n/q/? (n)
The following actions will resolve these dependencies:
Downgrade the following packages:
1) libyaml-0-2 [0.1.4-3ubuntu3.1 (now) -> 0.1.4-3ubuntu3 (trusty)]
Accept this solution? [Y/n/q/?] (Y)
comme discuté dans ce post .
Essayez en installant la commande with below.
Sudo apt-get install postgresql-common=151.pgdg12.4+1
Sudo apt-get install postgresql-9.3 postgresql-contrib-9.3