カテゴリー
Linux

fatal: open database /etc/postfix/local_recipients.db: Invalid argument

/var/log/maillog で件名のエラーが出て原因を調べていました。

/var/log/maillog:

localhost postfix/smtpd[3766]: fatal: open database /etc/postfix/local_recipients.db: Invalid argument
localhost postfix/master[30580]: warning: process /usr/libexec/postfix/smtpd pid 3766 exit status 1
localhost postfix/master[30580]: warning: /usr/libexec/postfix/smtpd: bad command startup -- throttling

受け取るユーザーを local_recipients で指定しているので、main.cf の local_recipient_maps に /etc/postfix/local_recipients を指定しています。

/etc/postfix/main.cf:

...
local_recipient_maps = $alias_maps btree:/etc/postfix/local_recipients
...

postmap でlocal_recipients.db を再構築して、postfix の再起動

# postmap btree:/etc/postfix/local_recipients
# /etc/init.d/postfix restart

と、やれば問題ないのですが、

/etc/postfix/local_recipients を編集した後、

うっかり、

# postmap /etc/postfix/local_recipients

と、データベースの種類を main.cf で btree を指定しているにもかかわらず、btree:を指定しないで postmap してしまったため、エラーが起きていました。

以上です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください