[ubuntu]続・Postfix、virtual mail with MySQL(テスト用)
/var/log/mail.logに
postfix/proxymap[7457]: fatal: dict_open: unsupported dictionary type: mysql (/usr/lib/postfix/dict_mysql.so not found. Is the postfix-mysql package installed?)
というエラーが残っている。どうやらchroot環境でsharedライブラリが読めないのが原因らしいのでそれを読めるところにコピーしてみる。
$ sudo su - # mkdir /var/spool/postfix/usr/lib/postfix # cp /usr/lib/postfix/dict_mysql.so /var/spool/postfix/usr/lib/postfix/ # /etc/init.d/postfix restart
するとログに
fatal: load_library_symbols: dlopen failure loading /usr/lib/postfix/dict_mysql.so: libmysqlclient.so.15: cannot open shared object file: No such file or directory
と出てきた。ibmysqlclient.so.15もcpしてみる。
# cp /usr/lib/libmysqlclient.so.15 /var/spool/postfix/usr/lib/
以下、同じように足りないといわれた共有ライブラリをcp
# cp /lib/libutil-2.5.so /var/spool/postfix/lib/ # ln -s /var/spool/postfix/lib/libutil-2.5.so /var/spool/postfix/lib/libutil.so.1 # mkdir -p /var/spool/postfix/lib/tls/i686/cmov # cp -a /lib/tls/i686/cmov/* . # cp /etc/postfix/virtual_* /var/spool/postfix/etc/
/etc/postfix/virtual_mailbox.cfとかがないと言われる。
proxymapが上手く動いてない?
chroot環境に合うようにvirtial*.cfを移動してmain.cfを書き換える
# mv /etc/postfix/virtual*.cf /var/spool/postfix/etc/ # vi /etc/postfix/main.cf virtual_transpost = virtual virtual_mailbox_base = /var/mail virtual_mailbox_domains = test.localhost virtual_mailbox_maps = proxy:mysql:/etc/postfix/virtual_mailbox.cf #virtual_mailbox_domains = proxy:mysql:/etc/postfix/virtual_domains.cf virtual_uid_maps = proxy:mysql:/etc/postfix/virtual_uid_maps.cf virtual_gid_maps = proxy:mysql:/etc/postfix/virtual_gid_maps.cf // maildirを用意 # mkdir -p /var/mail/maildir/noman # mkdir -p /var/mail/maildir/noman/cur # mkdir -p /var/mail/maildir/noman/new # mkdir -p /var/mail/maildir/noman/tmp # chown 3000:3000 -R /var/mail/maildir/noman