Results 1 to 3 of 3

Thread: openSUSE 11.4 + PostgreSQL 9.0.3

  1. #1

    Default openSUSE 11.4 + PostgreSQL 9.0.3

    Установил openSUSE 11.4
    Теперь не могу подключится к БД из приложения (из своего и других в частности pgaccess).
    До апгрейта, в 11.3 стоял постгрес версии 8.4, теперь 9.0.3.
    Причем встроенным монитором вхожу без проблем:
    ps@linux-2iht:~/Project> psql tstdb
    psql (9.0.3)
    Type "help" for help.

    tstdb=> \q
    А при подключении из приложения с теми же параметрами получаю:
    FATAL: Ident authentication failed for user "ps"
    QPSQL: Unable to connect
    Соединение локальное localhost.
    Драйвер установлен, брандмауэр временно отключен.
    Перезагружаюсь в 11.3, все ОК
    Куда рыть, куда посмотреть?
    Может кто сталкивался?

  2. #2
    Join Date
    Jun 2010
    Location
    Bedfordshire, United Kingdom
    Posts
    116

    Default Re: openSUSE 11.4 + PostgreSQL 9.0.3

    I do not speak Russian so maybe someone can translate.

    By default, pg_hba.conf is configured to use ident authentication but openSUSE does not install an ident service by default. You need to install oidentd.

    Another problem is, because openSUSE is configured to prefer IPv6, and oidentd listens (by default) on IPv4 you will receive authentication errors. There are two solutions to this problem:
    1. Edit /etc/gai.conf to prefer IPv4 over IPv6
    2. Start oidentd with an option that makes it use IPv6

    The quickest solution is to run oidentd in IPv6 mode which requires that you use the YaST2 /etc/sysconfig Editor and set Network|Ident|OIDENTD_OPTIONS to the value -a :: and ensure oidentd starts at boot.

    Regards,
    Neil Darlow
    Registered Linux user #122512. Desktop Linux user for 17 years.
    Asus Eee 900: 900MHz Celeron, 1GB RAM, 12GB SSD, 915GM, openSUSE-current+Tumbleweed
    Home-built Desktop: Athlon II X2 3.3GHz, 4GB RAM, 1TB SATA, GeForce G210, openSUSE-12.1-x86_64, KDE-4.7.2

  3. #3
    Join Date
    Nov 2008
    Location
    Germany
    Posts
    963

    Default Re: openSUSE 11.4 + PostgreSQL 9.0.3

    Quote Originally Posted by neildarlow View Post
    By default, pg_hba.conf is configured to use ident authentication but openSUSE does not install an ident service by default. You need to install oidentd.

    Another problem is, because openSUSE is configured to prefer IPv6, and oidentd listens (by default) on IPv4 you will receive authentication errors. There are two solutions to this problem:
    1. Edit /etc/gai.conf to prefer IPv4 over IPv6
    2. Start oidentd with an option that makes it use IPv6

    The quickest solution is to run oidentd in IPv6 mode which requires that you use the YaST2 /etc/sysconfig Editor and set Network|Ident|OIDENTD_OPTIONS to the value -a :: and ensure oidentd starts at boot.

    Regards,
    Neil Darlow
    По умолчанию pg_hba.conf использует "ident authentication", но в openSUSE этот сервис не устанавливается по дефолту, поэтому надо доустановить пакет oidentd.

    Проблема может быть в том, что openSUSE использует IPv6, а oidentd настроен по дефолту на IPv4, так что и тут следует ожидать ошибок аутентификации. Есть два решения этой проблемы:

    1. Отредактировать /etc/gai.conf на использование "IPv4 over IPv6"
    2. Запускать oidentd с опцией использования IPv6

    Пожалуй самым простым решением будет запуск oidentd в режиме IPv6. В YaST2 в /etc/sysconfig Editor установите Network|Ident|OIDENTD_OPTIONS значение -a ::, а так же не забудьте добавить oidentd в автозагрузку.

    С уважением,
    Нил Дарлов
    Last edited by Minton; 24-Mar-2011 at 12:21. Reason: имя

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •