LINUX.ORG.RU
ФорумAdmin

не работает postfix + mysql


0

0

вот вопрос: ставлю postfix + dovecot + все пользователи хранятся в mysql все делаю в точности как описано тут

но почему то не работает связка postfix + mysql дистр alt linux server.

синтаксических ошибок в конфигах нет. проверял два раза. в логах вот такая ошибка высвечивается при запуске postfix:

postfix/trivial-rewrite[6238]: warning: connect to mysql server localhost: Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'(2) postfix/trivial-rewrite[6238]: fatal: mysql:/etc/postfix/mysql-virtual-aliases-maps.cf(0,lock|fold_fix): table lookup problem

все таблицы созданы и заполнены верно. сама бд запушена. пользователь создан и права для него тоже. в какую сторону копать?

В первой же строчке он ясно сказал что ему не нравится. Проверь пути к сокетами(и слушает ли на локальном сокете mysqld вообще). Их можно подправить в my.cnf, но это очень редко требуется.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

и слушает ли на локальном сокете mysqld вообще

а как он может не слушать на локальном сокете если я могу приконектиться с локального компа к этой бд?

вот листинг /var/lib/mysql/my.cnf

[mysqld]

old_passwords=1

chroot=/var/lib/mysql

datadir=/db

bdb-logdir=/log

pid-file=/mysqld.pid

skip-locking

skip-networking

socket=/mysql.sock

tmpdir=/tmp user=mysql

сокет(тоесть файл) mysql.sock по данному пути существует. тоесть так как бд установлена в chroot среде то

путь такой: /var/lib/mysql/mysql.sock

почему тогда не работает должным образом етот демон trivial-rewrite?

Amazing
() автор топика
Ответ на: комментарий от Amazing

Тогда через strace смотри кто куда chroot делает и не может до сокета дотянуться. Если сокет /var/lib/mysql/mysql.sock существует И это живой сокет то что-то не то с постфиксом. Может он тоже chroot делает?

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

прежде чем я стал разбираться со strace...

postfix стоял по умолчанию в дистре. я его не стаил руками. и соответственно не гвоорил ему при установке что он должен работать в chroot.

в конфиге main.cf нет ни слова что он должен работать в chroot. как тогда выяснить что postfix работает в какой то chroot среде без использования strace(ибо на первый взгляд мне показалось сложным его осиливать)

Amazing
() автор топика
Ответ на: комментарий от Amazing

> в конфиге main.cf нет ни слова что он должен работать в chroot. как тогда выяснить что postfix работает в какой то chroot

может посмотреть в master.cf?

FELiX
()
Ответ на: комментарий от Amazing

> я его не стаил руками

но ты ведь его настраивал на предмет работы с мусклем? :). Как крайний вариант посмотри через /proc где корень у постфиксовых прог и попробуй туда сокет засунуть. Вроде, мускул умеет несколько сокетов создавать.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

Предлагаю включить в mysql-е работу с tcp-сокетами и забить на unix-овых, а тем более на разных chroot-ах:
my.cnf
----
#skip-networking
bind-address = 0.0.0.0

Соответственно подправить параметры подключения в postfix-е (заменить localhost на 127.0.0.1).

spirit ★★★★★
()
Ответ на: комментарий от spirit

всем большое человеческое спасибо за помошь ;).

проблема решилась.

Amazing
() автор топика
Ответ на: комментарий от spirit

>bind-address = 0.0.0.0

Имхо секурнее
bind-address = 127.0.0.1
В свое время пришлось из-за долбаного опенфайра так изгаляться. Тоже гад сокетов не понимал, причем безо всяких чрутов.

А то 0.0.0.0, насколько я помню, означает слушать все айпишники. Лучше так не рисковать, если достаточно локалхоста.

nnz ★★★★
()
Ответ на: комментарий от val-amart

Лучше обе защиты, чем ни одной %)

Кроме того, я регулярно ковыряюсь в правилах своего фаервола, и они уже разрослись практически до состояния искусственного интеллекта (надо, конечно, сесть и почистить, да все лень). Так что порой я начинаю сомневаться, что все работает правильно.

nnz ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.