Prenez d'abord une copie de sauvegarde du pg_hba.conf donné
sudo tar cvf /var/tmp/mybackup_pg_hba_conf.tar /var/lib/pgsql/data/pg_hba.conf
De cette façon, vous avez l'ancienne version prête si vous vous trompez. Une fonctionnalité intéressante de l'archive tar est la conservation des autorisations et des répertoires. Ainsi, lorsque le pg_hba.conf est rompu au-delà de la reconnaissance. Vous pouvez:
cd /
sudo tar xvf /var/tmp/mybackup_pg_hba_conf.tar
Cela restaurera la sauvegarde pg_hba.conf à partir de l'archive que vous avez créée précédemment.
Quant à l'insertion réelle de la ligne:
sudo su -c 'echo "host all all 10.0.2.12 255.255.255.255 trust" >> /var/lib/pgsql/data/pg_hba.conf'
(REMARQUE: commande modifiée. Merci bortzmeyer!)
Devrait le faire. Notez que cela ajoute simplement la ligne dans le pg_hba.conf. Si jamais vous devez le changer, vous devez utiliser un véritable éditeur. Comme vi. Sa courbe d'apprentissage peut être un peu raide, mais après avoir appris au moins les bases, vous devriez être en sécurité dans la plupart des environnements Unix que vous rencontrez.
Maintenant que je suis de retour sur la piste, vous devriez essayer de redémarrer votre base de données postgresql. Sur une machine Centos, je pense que cela se fait par:
sudo service postgresql restart
ou vous pouvez simplement recharger la configuration sans redémarrer:
su - postgres
pg_ctl reload
Vous devriez maintenant pouvoir accéder à votre base de données postrgresql Centos-machines à partir du 10.0.2.12
N'oubliez pas de modifier postgresql.conf et de changer / ajouter une ligne
listen_addresses = '*'
Postgresql par défaut écoute sur localhost
la source