[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