カテゴリー
CentOS5.x MySQL postfix メールサーバ

CentOS5.3 PostfixをMySQL対応にする

2013-01-13追記
MySQL対応のPostfixはCentOS Plusリポジトリを使えばyumでupdate出来るみたい。こっちの方がいいね。

CentOS Plusリポジトリを有効にする

# vi /etc/yum.repos.d/CentOS-Base.repo

[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
gpgcheck=1
#enabled=0
enabled=1  # ←有効にする
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

yumでpostfixをupdate

# yum update postfix

...


===================================================================
 Package           Arch   Version               Repository    Size
===================================================================
Updating:
 postfix           i386   2:2.3.3-2.3.0.1.el5.centos.mysql_pgsql
                                                centosplus   3.7 M

...

mysql対応になっているかの確認。mysqlと出れば対応している。

# postconf -m|grep mysql
mysql

参考:postfixadmin + mysql + courier-imapによるバーチャルドメイン

以下古い記事


2010-12-04追記
どうやらCentOS5.5ではRPMが用意されている模様
64bit http://ftp.riken.jp/Linux/centos/5.5/centosplus/x86_64/RPMS/postfix-2.3.3-2.1.centos.mysql_pgsql.x86_64.rpm
32bit http://ftp.riken.jp/Linux/centos/5.5/centosplus/i386/RPMS/postfix-2.3.3-2.1.centos.mysql_pgsql.i386.rpm
あれ?前からあったのか??

yumでインストールされていたらアンインストール

yum erase postfix

ダウンロード

最新版の確認(/5.x/centosplus/SRPMS/より)

rpm -ivh http://ftp.riken.jp/Linux/centos/5.4/centosplus/SRPMS/postfix-2.3.3-2.1.centos.mysql_pgsql.src.rpm

コンパイル前の下準備

Postfix をMySQL対応にするためpostfix.specを編集。

cd /usr/src/redhat/SPECS/
vi postfix.spec
..
%define MYSQL 1 ←確認(0なら1に修正)
%define PGSQL 0 ←postgreSQLを使わないなら1から0に修正
..

コンパイル

srpmからrpmを作成する。

エラー: ビルド依存性の失敗:
pcre-devel は postfix-2.3.3-2.1.centos.mysql_pgsql.i386 に必要とされています

などのエラーが出たら
yum install pcre-devel
でインストール後に再度実行。

rpmbuild -bb postfix.spec

インストール

出来上がったRPMをインストールする。

cd /usr/src/redhat/RPMS/i386/
rpm -ivh postfix-2.3.3-2.1.centos.mysql_pgsql.i386.rpm

yumの自動アップデートから外す

yum update で postfix* なパッケージがアップデートされなくなる。

これをしないとyumの自動アップデート時にMySQL非対応に戻ってしまう。

vi /etc/yum.conf
exclude=postfix* ←最終業に追記

↑手動でもやりましたけど
Postfixをyumでアップデートしてしまった orz...

カテゴリー
CentOS5.x メールサーバ

CentOS5.3 メールサーバ構築(Postfix +qmail +vpopmail +Dovecot)

CentOSで自宅サーバー構築を参考に構築したが、途中でエラーが出たのでメモ。

19.独自のメールアドレスをつくる(Postfix編)
メールサーバー構築(Postfix+Dovecot)CentOS4/CentOS5
http://centossrv.com/postfix.shtml
バーチャルドメイン設定(Postfix&Dovecot+qmail&vpopmail)CentOS5
http://centossrv.com/postfix-vpopmail.shtml
vpopmail用メールアカウント&メーリングリスト管理システム導入(Postfix+qmailadmin)CentOS5
http://centossrv.com/postfix-qmailadmin.shtml


エラーが出たのは、バーチャルドメイン設定(http://centossrv.com/postfix-vpopmail.shtml)のDovecotのRPM作成時。
使用したsrpmは dovecot-1.0.7-7.el5.src.rpm

rpmbuild -bb --clean /usr/src/redhat/SPECS/dovecot.spec

で、どうしても途中でこける。

Install prefix ...................... : /usr
File offsets ........................ : 64bit
I/O loop method ..................... : poll
File change notification method ..... : inotify
Building with SSL support ........... : yes (OpenSSL)
Building with IPv6 support .......... : yes
Building with pop3 server ........... : yes
Building with mail delivery agent .. : yes
Building with GSSAPI support ........ : no
Building with user database modules . : static prefetch passwd passwd-file checkpassword vpopmail (modules)
Building with password lookup modules : passwd passwd-file shadow pam checkpassword vpopmail (modules)
Building with SQL drivers ............:
+ --with-pgsql --with-mysql --with-ssl=openssl --with-ssldir=/etc/pki/dovecot --with-ldap --with-inotify --with-gssapi
/var/tmp/rpm-tmp.53261: line 61: --with-pgsql: command not found
エラー: /var/tmp/rpm-tmp.53261 の不正な終了ステータス (%build)

RPM ビルドエラー:
/var/tmp/rpm-tmp.53261 の不正な終了ステータス (%build)

ググっていたら
http://tkoshima.net/mt/2007/08/15/200708151413.php
を発見。
とりあえずこちらの方法でRPMを作成したらうまくいった。
作成したRPMはそのまま使い、後の手順を引き続き行った。

・・・ただし、うまくメールが配送されない。

とりあえずqmailadminだとドメインの管理が面倒だという事に気がつく。

ということで、Qmail+ vpopmailはやめる事に。

Postfix+MySQL+Dovecot+postfixadminで管理する事に決定。

カテゴリー
メールサーバ

Postfixでのバーチャルドメインの設定

バーチャルドメインをPostfixで使う場合

/etc/postfix/virtual

の編集が必要となる


参考文献
http://vine-linux.ddo.jp/linux/mail/virtual.php