97 votes

Comment puis-je vérifier si PostgreSQL est installé ou non via le script de Linux ?

Je veux vérifier dans un script si PostgreSQL est installé ou non sur Linux et imprimer le résultat. Avez-vous des suggestions sur la manière de procéder à cette vérification ?

0 votes

Que voulez-vous dire par "PostgreSQL est installé" ? Le client Pgsql ? Bibliothèques du client ? Serveur Pgsql ?

0 votes

Voir aussi ces commandes BASH génériques : stackoverflow.com/a/677212/1736679

5voto

Peter Eisentraut Points 12513

Il n'y a pas de moyen direct de le faire. Tout ce que vous pouvez faire est de vérifier avec le gestionnaire de paquets (rpm, dpkg) ou de sonder quelques emplacements probables pour les fichiers que vous voulez. Ou vous pouvez essayer de vous connecter à un port probable (5432) et voir si vous obtenez une réponse au protocole PostgreSQL. Mais rien de tout cela ne sera très robuste. Vous devriez revoir vos exigences.

2 votes

Tout à fait exact. J'ai installé mon serveur PostgreSQL à partir des sources, sous le nom de teapot et changé les noms de binaires / services en TeaPotSQL . Aucun autre utilisateur n'a le droit de lire le répertoire où il est installé. Le port par défaut est également modifié. Allez le chercher :-)

4voto

netfluence Points 41

Et si tout le reste échoue dans ce grand choix de réponses, vous pouvez toujours utiliser "trouver" comme ceci. Ou vous pouvez avoir besoin d'utiliser sudo

Si vous êtes Root, tapez simplement $$> find / -name 'postgres'

Si vous êtes un utilisateur, vous aurez besoin de sudo priv's pour l'exécuter à travers tous les répertoires

Je l'exécute de cette façon, à partir du / pour trouver l'ensemble du chemin dans lequel se trouve l'élément. Cela renverra tous les fichiers ou répertoires contenant le mot "postgres".

Vous pourriez faire la même chose en recherchant le pg_hba.conf ou postgresql.conf dossiers également.

3voto

Amir Points 1

Pendant de nombreuses années, j'ai utilisé la commande :

ps aux | grep postgres

D'un côté, il est utile (pour tout processus) et donne des informations utiles (mais du point de vue du processus). Mais d'un autre côté, il sert à vérifier si le serveur que vous connaissez et que vous avez déjà installé fonctionne.

A un moment donné, j'ai trouvé ce tutoriel où l'utilisation de la localiser est affichée. Il semble que cette commande soit beaucoup plus pertinente dans ce cas.

2voto

user2584621 Points 1

aptitude show postgresql | grep Version a fonctionné pour moi

1voto

Finn Points 469

Allez dans le répertoire bin de postgres db tel que /opt/postgresql/bin & exécutez la commande ci-dessous :

[...bin]# ./psql --version

psql (PostgreSQL) 9.0.4

Voilà

0 votes

Nous pouvons simplement écrire : psql --version sortie de l'émission comme : psql (PostgreSQL) 11.5 (Ubuntu 11.5-1.pgdg18.04+1)

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X