[Dovecot] Using MailDir but local messages still save in mbox format

/dev/rob0 rob0 at gmx.co.uk
Sun Sep 29 22:28:30 EEST 2013


On Sat, Sep 28, 2013 at 04:26:03PM +0200, Axel Luttgens wrote:
> Le 27 sept. 2013 à 09:35, Mike Edwards a écrit :
> 
> > I think I just fixed the problem but I am not sure if I did it 
> > the right way..  It seems that it is postfix that did it, not 
> > dovecot.  I found this in the log for every local message...
> > 
> > Sep 26 11:10:10 zeus postfix/local[14565]: 9B0294AA15E: 
> > to=<vmail at my.domain.com>, orig_to=<vmail>, relay=local, delay=9, 
> > delays=9/0.01/0/0.02, dsn=2.0.0, status=sent (delivered to 
> > mailbox)
> > 
> > So, I went to the postfix master.cf and commented out this line...
> > 
> > #local     unix  -       n       n       -       -       local
> > 
> > Was that the correct way to do it?
> 
> Hello Mike,
> 
> You probably have cured the symptoms... ;-)

I doubt it. The correct way to not route mail to local(8) is to take 
the domain in question out of mydestination. With no local transport 
available, but a domain is still listed in mydestination, Postfix 
will probably just complain about "transport not available".

> Your cron command has very likely been built for making use of the 
> sendmail command.
> When facing a "naked" recipient address such as "vmail", Postfix' 
> sendmail will look for an alias, then for a system user bearing 
> that name.

No, this is wrong. Where did you see this?

A bare localpart address without domain has @$myorigin appended. See 
postconf.5.html#append_at_myorigin for details. The munged @domain 
shown above is Mike's $myorigin, and it is listed in his 
$mydestination.

> There's probably no alias for "vmail", but you clearly have a 
> system user named "vmail"; so, sendmail will proceed with a local 
> delivery for user "vmail".

Nitpicking here, but sendmail does not do the delivery, only the 
acceptance and enqueueing. The now-commented local checks the 
alias_maps and does the delivery.

> So, you could for example define an alias:
> 
> 	vmail: yourself at your.virtual.domain
> 
> since you're potentially more interested than user vmail in the 
> messages emitted by the cron job.

This won't work if local_transport points to a service which is 
undefined.

> Or add such a line to your crontab:
> 
> 	MAIL=yourself at your.virtual.domain
> 
> so as to override the default recipient, ie the user the job
> runs as.

Probably a better idea, but that feature is not available in all 
known cron implementations. Mike should check his own crontab(1) 
manual.
-- 
  http://rob0.nodns4.us/ -- system administration and consulting
  Offlist GMX mail is seen only if "/dev/rob0" is in the Subject:


More information about the dovecot mailing list