[Dovecot] Permission problem with LDA and dovecot 2.2.1

Tobi tobster at brain-force.ch
Tue May 7 08:39:37 EEST 2013


Am 07.05.2013 02:21, schrieb Ben Morrow:
> At  8PM +0200 on  6/05/13 Tobi wrote:
>> <<
>> 2013 May  6 18:37:59 nordkap lda: Fatal: Internal error occurred. Refer
>> to server log for more information.
>> May  6 18:37:59 nordkap dovecot: lda: Error: userdb lookup:
>> connect(/var/run/dovecot/auth-userdb) failed: Connection refused
>> May  6 18:37:59 nordkap dovecot: lda: Fatal: Internal error occurred.
>> Refer to server log for more information.
>>   >>
>>
>> For me it looks odd because the auth-userdb is defined as
>> <<
>> base_dir = /usr/local/var/run/dovecot/
> Why are you trying to put this under /usr/local? /usr/local/var is not a
> usual place to put things on Unix systems: generally speaking programs
> installed under /usr/local use /var just like those installed under
> /usr.
Ah this would explain why always /var/run is used.
>> service auth {
>>     unix_listener auth-userdb {
>>       mode = 0777
> This probably shouldn't be world-readable.
I just set world-writeable to see which file under /var/run or 
/usr/local/var/run is affected. So was just for testing purposes.
>>       user = vmail
>>       group = vmail
>>     }
>> ....
>>   >>
>>
>> The rights on the file should be correct according to the config above
>> <<
>> ls -al /usr/local/var/run/dovecot/auth-userdb
>> srwxrwxrwx 1 vmail vmail 0 May  6 20:11
>> /usr/local/var/run/dovecot/auth-userdb
>>   >>
>>
>> I cannot explain why the lda tries to access
>> <<
>> Error: userdb lookup: connect(/var/run/dovecot/auth-userdb)
>>   >>
>> I grepped through all the configfiles but could not find the "wrong"
>> path from the error message above.
> Probably your Dovecot binaries are built with a default base_dir of
> /var/run/dovecot. What do the following give you?
>
>      doveconf -d base_dir        (as root)
>      doveconf base_dir           (as root)
>      doveconf base_dir           (as vmail:vmail)
>
>> Would it might be a "fix" to symlink /usr/local/var/run/dovecot to
>> /var/run/dovecot ? Or would that break something with dovecot?
Yesterday I "fixed" it with a symlink. But I think better doing as you 
described and use /var/run/
I will remove my definition this evening and see if everything works 
fine if only using /var/run
I just thought I "have" to use /usr/local/var/run because /usr/local is 
the prefix while building dovecot from source.
> It probably won't break anything, but why don't you just use
> /var/run/dovecot in the first place and take that base_dir definition
> out of dovecot.conf?
>
> Ben
>
Thanks for your help I will try this evening


More information about the dovecot mailing list