I have a situation that is most likely a problem with my understanding of postfix and not a code problem. I am getting ready to take over a domain name for mail service. A number of new addresses in that domain need to be forwarded to other mail servers. I setup postfix to do that and it worked fine. However, there is still some time before I actually take over the domain. In the meantime I was entering some of the addresses and forwarding addresses into the vmail alias file. Each entry was preceded by "# ". My understanding was that lines starting with a # would be ignored. I did not bother to run postmap as it would do nothing useful.
Several hours later I noticed that no outgoing mail was going out. Everything was receiving an error in maillog: May 8 00:02:49 mail postfix/error[83540]: 8A72B114C3EE: to=<wa6...@arrl.net>, relay=none, delay=94792, delays=94792/0.03/0/0, dsn=4.3.0, status=deferred (mail transport unavailable) Note, this address was not in the vmail alias file. It appears to have affected all outgoing mail. Incoming mail was processed normally. In addition there were a number of these messages (starting hours later in the day): May 8 23:44:57 mail postfix/smtpd[95331]: warning: database /usr/local/etc/postfix/vmail_alias.db is older than source file /usr/local/etc/postfix/vmail_alias To restore service, I removed all these entries, ran post map and did postfix restart. Problem continued until I terminated postfix and restarted it. Then outgoing mail resumed delivery properly. mail# postconf -n command_directory = /usr/local/sbin compatibility_level = 2 daemon_directory = /usr/local/libexec/postfix data_directory = /var/db/postfix debug_peer_level = 2 debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5 dovecot_destination_recipient_limit = 1 home_mailbox = Maildir/ html_directory = /usr/local/share/doc/postfix inet_protocols = ipv4 mail_owner = postfix mail_spool_directory = /var/spool/mail mailbox_size_limit = 0 mailq_path = /usr/local/bin/mailq manpage_directory = /usr/local/man max_use = 5 message_size_limit = 102400000 mydestination = localhost.$mydomain, localhost mydomain = sermon-archive.info mynetworks_style = subnet newaliases_path = /usr/local/bin/newaliases postscreen_access_list = permit_mynetworks, cidr:/usr/local/etc/postfix/access.cidr queue_directory = /var/spool/postfix readme_directory = /usr/local/share/doc/postfix sample_directory = /usr/local/etc/postfix sendmail_path = /usr/local/sbin/sendmail setgid_group = maildrop smtp_destination_recipient_limit = 25 smtpd_authorized_xclient_hosts = 10.0.1.0/24 smtpd_command_filter = pcre:/usr/local/etc/postfix/quote smtpd_error_sleep_time = 10 smtpd_hard_error_limit = 10 smtpd_milters = unix:/var/run/clamav/clmilter.sock smtpd_sasl_auth_enable = yes smtpd_sasl_path = private/auth smtpd_sasl_type = dovecot smtpd_soft_error_limit = 1 smtpd_tls_cert_file = /etc/ssl/certs/mail.pem smtpd_tls_key_file = /etc/ssl/private/mail.key smtpd_tls_loglevel = 1 smtpd_tls_security_level = may unknown_local_recipient_reject_code = 550 virtual_alias_maps = hash:/usr/local/etc/postfix/vmail_alias virtual_gid_maps = static:2222 virtual_mailbox_base = /var/mail/ virtual_mailbox_domains = hash:/usr/local/etc/postfix/vmail_domains virtual_mailbox_limit = 102400000 virtual_mailbox_maps = hash:/usr/local/etc/postfix/vmail_mailbox virtual_minimum_uid = 2222 virtual_transport = dovecot virtual_uid_maps = static:2222 mail# mail# postconf -Mf smtpd pass - - n - - smtpd smtp inet n - n - 1 postscreen dnsblog unix - - n - 0 dnsblog tlsproxy unix - - n - 0 tlsproxy submission inet n - n - - smtpd dovecot unix - n n - - pipe flags=DRhu user=vmail:vmail argv=/usr/local/libexec/dovecot/dovecot-lda -f ${sender} -d ${recipient} pickup unix n - n 60 1 pickup cleanup unix n - n - 0 cleanup qmgr unix n - n 300 1 qmgr tlsmgr unix - - n 1000? 1 tlsmgr rewrite unix - - n - - trivial-rewrite bounce unix - - n - 0 bounce defer unix - - n - 0 bounce trace unix - - n - 0 bounce verify unix - - n - 1 verify flush unix n - n 1000? 0 flush proxymap unix - - n - - proxymap proxywrite unix - - n - 1 proxymap smtp unix - - n - - smtp relay unix - - n - - smtp showq unix n - n - - showq error unix - - n - - error retry unix - - n - - error discard unix - - n - - discard local unix - n n - - local virtual unix - n n - - virtual lmtp unix - - n - - lmtp anvil unix - - n - 1 anvil scache unix - - n - 1 scache mail# vmail_alias file contained # user1@domain1 user1@domain2 # user2@domain1 user2@domain3 # user3@domain1 user3@domain4 The domain names 1-4 above are not in any of the other maps, or in any file in the config directory. When I had only the following in vmail_alias: testuser@domain5 testuser@domain1 Mail to testuser@domain5 was properly forwarded to testuser@domain1. Domain5 is in the virtual_mailbox_domains file. — Doug