Bonjour à tous,

Un client a installé la nouvelle FreeBox en remplacement de l'ancienne, bien entendu sans nous en informer. Ce nouvel élément est connecté à un routeur-switch wifi sur lequel sont connecté le serveur et les postes de travail.

Le serveur est géré par Fedora 14 et PostgreSql 8.2, le tout ronronnait parfaitement jusqu'à l'installation de la nouvelle FreeBox.

a) Le firewall est désactivé
b) Le service Postgresql est activé

Malgré cela, le port 5432 est déclaré inaccessible lors du lacement de Postgresql et en root, toutes les commandes, en SU, pour redémarrer et/ou pour tester PG, échouent lamentablement avec toujours la même demande :

ERROR : Error connecting to the server: n'a pas pu se connecter au serveur : Aucun fichier ou dossier de ce type
Le serveur est-il actif localement et accepte-t-il les connexions sur la
socket Unix « /var/run/postgresql/.s.PGSQL.5432 » ?


Toutes les commandes Linux pour tester le port 5432 prouvent qu'il est inactif et même pas présent dans la liste des ports déclarés.

Problème Fedora et Firewall ou PG ou FreeBox ??? Bien que cette dernière soit fortement soupçonnable, j'avoue ne plus savoir dans quelle direction fouiller 🙁

Merci de votre aide.
Quant tu dis toutes les commandes on parle bien interne au serveur. Que donne un netstat -l |grep postgres ?
Refuznik wrote:Quant tu dis toutes les commandes on parle bien interne au serveur. Que donne un netstat -l |grep postgres ?
Sous SU, cette commande ne signale rien.

# nmap 127.0.0.1 donne

Starting Nmap 5.00 ( http://nmap.org ) at 2011-12-17 17:28 CET
Interesting ports on localhost.localdomain (127.0.0.1):
Not shown: 993 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
111/tcp open rpcbind
139/tcp open netbios-ssn
445/tcp open microsoft-ds
631/tcp open ipp
5900/tcp open vnc

Nmap done: 1 IP address (1 host up) scanned in 0.18 seconds
[root@localhost ~]#

Comme tu peux le constater, le port 5432 ne fait pas partie de la liste. Mais comment le réactiver ? :-?

Merci Refuznik 😉
- Regarde si le port 5432 n'est pas utilisé par un autre processus : netstat -laputen | grep 5432
- Que contient /var/lib/pgsql/pgstartup.log ?
- Regarde si les fichiers /var/lock/subsys/postgresql et /var/run/postmaster.5432.pid existent et si oui quels sont leurs droits
proxy wrote:- Regarde si le port 5432 n'est pas utilisé par un autre processus : netstat -laputen | grep 5432
- Que contient /var/lib/pgsql/pgstartup.log ?
- Regarde si les fichiers /var/lock/subsys/postgresql et /var/run/postmaster.5432.pid existent et si oui quels sont leurs droits
Tes suggestions me semblent excellentes et j'ai hâte d'être à demain pour les tester. Effectivement, je n'ai pas pensé aux droits des scripts de démarrage de PG :roll:. Je pense que l'assignation de l'adresse 127.0.0.1 et du port 5432, doit être prise en charge lors du lancement d'un de ses scripts.

Encore merci proxy pour cette piste. 🙂
proxy wrote:- Regarde si le port 5432 n'est pas utilisé par un autre processus : netstat -laputen | grep 5432.
Cette commande, ne renvoie aucune information. Quant à un éventuel processus qu'il l'utiiserait, je n'en ai pas trouvé trace.
proxy wrote:- Que contient /var/lib/pgsql/pgstartup.log ?
Ce fichier est curieusement vide alors que PG est lancé tous les jours sauf dimanche !
proxy wrote:-- Regarde si les fichiers /var/lock/subsys/postgresql
Ce fichier n'existe pas dans ce répertoire. Pas normal ..!
proxy wrote:-et /var/run/postmaster.5432.pid existent et si oui quels sont leurs droits
Ce fichier n'existe pas aussi dans ce répertoire. Pas normal ..!

Je ne connais pas le rôle exact de ces fichiers manquants et je n'arrive pas à imaginer comment ces symptômes ont pu être créés :-?
Le disque dur a certainement écopé de sur ou sous-tensions.
Je pense qu'il va falloir réinstaller Fedora et postgresql sur un disque neuf. Quand penses-tu ?

Merci vivement pour ton aide.
As tu des messages d'erreurs quand tu lances la commande : service posgresql start
proxy wrote:As tu des messages d'erreurs quand tu lances la commande : service posgresql start
[root@localhost init.d]# service postgresql start
Démarrage du service postgresql : [ÉCHOUÉ]
[root@localhost init.d]#

Pas de bol, voilà ce à quoi j'ai droit 🙁 Je précise que le service postgresql est lancé et j'obtiens la même chose avec les paramètres stop ou restart ..

Un petit bonus qui démontre que le couple est inactif ..

[root@localhost init.d]# telnet 127.0.0.1 5432
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused

Merci de ton aide 🙂
Il est surprenant que le fichier /var/lib/pgsql/pgstartup.log soit vide, à moins que PG_DATA ne soit redéfini dans /etc/sysconfig/pgsql/postgresql : est ce le cas ? as tu ce fichier et si oui que contient il ?
proxy wrote:Il est surprenant que le fichier /var/lib/pgsql/pgstartup.log soit vide, à moins que PG_DATA ne soit redéfini dans /etc/sysconfig/pgsql/postgresql : est ce le cas ? as tu ce fichier et si oui que contient il ?
Dans le répertoire /etc/sysconfig/pgsql/ il n'y a aucun fichier 🙁 Par ailleurs, je suis inquiet pour ces fichiers qui ont disparus. J'espère me tromper.

Merci
Non rien n'a disparu :
- /etc/sysconfig/pgsql/postgresql permet de redéfinir PG_DATA (l'endroit où sont stockées les bases).
- /var/run/postmaster.5432.pid et /var/lock/subsys/postgresql sont créés lors du démarrage du service et permettent de vérifier si le service tourne.
- /var/lib/pgsql/pgstartup.log contient les logs de démarrage du service

On va le lancer à la main pour obtenir la sortie :
su -l postgres -c '/usr/bin/postmaster -p 5432 -D /var/lib/pgsql/data'
C'est normal que des fichiers log soient créés dans /var/lib ?

A ce train là bientôt on va les créer dans /home ? et on stockera les mails dans /sbin ?
A la base postgresql utilisait il le socket ou directement le localhost ?
Sinon test avec netstat -nlp | grep 5432 pour voir.
Que donne un ls -ld /var/run/postgresql/ au cas où.
proxy wrote:Non rien n'a disparu :
- /etc/sysconfig/pgsql/postgresql permet de redéfinir PG_DATA (l'endroit où sont stockées les bases).
- /var/run/postmaster.5432.pid et /var/lock/subsys/postgresql sont créés lors du démarrage du service et permettent de vérifier si le service tourne.
- /var/lib/pgsql/pgstartup.log contient les logs de démarrage du service

On va le lancer à la main pour obtenir la sortie :
su -l postgres -c '/usr/bin/postmaster -p 5432 -D /var/lib/pgsql/data'
HOURRA !!! :-D Enfin une commande qui me demande un mot de passe que je ne connais pas :roll: mais qui donne du baume au coeur.

Merci Proxy
Refuznik wrote:A la base postgresql utilisait il le socket ou directement le localhost ?
le localhost soit 127.0.0.1 port 5432
Refuznik wrote: Sinon test avec netstat -nlp | grep 5432 pour voir.
[serveur@localhost ~]$ su -
Mot de passe :
[root@localhost ~]# netstat -nlp | grep 5432
[root@localhost ~]#

Ca cause pas beaucoup ..
Refuznik wrote: Que donne un ls -ld /var/run/postgresql/ au cas où.
En su ou en user, c'est le meme message de retour

[serveur@localhost ~]$ ls -ld /var/run/postgresql/
ls: ne peut accéder /var/run/postgresql/: Aucun fichier ou dossier de ce type
[serveur@localhost ~]$

Merci de ton aide 🙂
proxy wrote:Non rien n'a disparu :
- /etc/sysconfig/pgsql/postgresql permet de redéfinir PG_DATA (l'endroit où sont stockées les bases).
- /var/run/postmaster.5432.pid et /var/lock/subsys/postgresql sont créés lors du démarrage du service et permettent de vérifier si le service tourne.
- /var/lib/pgsql/pgstartup.log contient les logs de démarrage du service

On va le lancer à la main pour obtenir la sortie :
su -l postgres -c '/usr/bin/postmaster -p 5432 -D /var/lib/pgsql/data'
Cette commande est à lancer en tant que root et ne doit donc pas demander de password
proxy wrote:Cette commande est à lancer en tant que root et ne doit donc pas demander de password
Voilà le résultat ..

[root@localhost /]# su -l postgres -c '/usr/bin/postmaster -p 5432 -D /var/lib/pgsql/data'
FATAL: n'a pas pu écrire le fichier verrou « postmaster.pid » : Aucun espace disponible sur le périphérique
[root@localhost /]#

J'ai vérifié le fichier postgresql.conf et le port est bien à 5432. J'ai aussi tenté les commandes suivantes :

Starting Nmap 5.00 ( http://nmap.org ) at 2011-12-21 15:58 CET
Interesting ports on 127.0.0.1:
Not shown: 993 closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
111/tcp open rpcbind
139/tcp open netbios-ssn
445/tcp open microsoft-ds
631/tcp open ipp
5900/tcp open vnc

Nmap done: 1 IP address (1 host up) scanned in 0.15 seconds
[serveur@localhost /]$ cat etc/init.d/postgresql | grep 5432
PGPORT=5432
[serveur@localhost /]$

[serveur@localhost /]$ service postgresql start
touch: ne peut faire un touch sur `/var/lib/pgsql/pgstartup.log': Permission non accordée
[serveur@localhost /]$ su -
Mot de passe :
[root@localhost ~]# service postgresql start
Démarrage du service postgresql : [ÉCHOUÉ]
[root@localhost ~]#
ciaparis wrote:
proxy wrote:Cette commande est à lancer en tant que root et ne doit donc pas demander de password
Voilà le résultat ..

[root@localhost /]# su -l postgres -c '/usr/bin/postmaster -p 5432 -D /var/lib/pgsql/data'
FATAL: n'a pas pu écrire le fichier verrou « postmaster.pid » : Aucun espace disponible sur le périphérique
[root@localhost /]#
😉 Que renvoie df -h ?
proxy wrote:Que renvoie df -h ?
[serveur@localhost /]$ df -h
Sys. de fich. Tail. Occ. Disp. %Occ. Monté sur
/dev/sda6 49G 712M 45G 2% /
/dev/sda5 49G 49G 0 100% /var
/dev/sda3 49G 4,7G 41G 11% /usr
/dev/sda2 78G 19G 55G 26% /home
/dev/sda1 99M 27M 67M 29% /boot
tmpfs 2,0G 832K 2,0G 1% /dev/shm
[serveur@localhost /]$

Il semblerait que la place disque soit suffisante 🙁
Ben non justement : /var is full